{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T20:38:14Z","timestamp":1743107894461,"version":"3.40.3"},"publisher-location":"Cham","reference-count":33,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319600130"},{"type":"electronic","value":"9783319600130"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-319-60013-0_132-1","type":"book-chapter","created":{"date-parts":[[2019,4,29]],"date-time":"2019-04-29T17:59:02Z","timestamp":1556560742000},"page":"1-10","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Teaching Software Design Techniques in University Courses"],"prefix":"10.1007","author":[{"given":"Jonathan D.","family":"Holmes","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kevin R.","family":"Parker","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bill","family":"Davey","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Joseph T.","family":"Chao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2019,4,13]]},"reference":[{"key":"132-1_CR1","doi-asserted-by":"publisher","DOI":"10.1145\/2534860","volume-title":"Computer Science Curricula 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science","year":"2013","unstructured":"ACM\/IEEE-CS Joint Task Force on Computing Curricula (2013) Computer Science Curricula 2013. ACM Press and IEEE Computer Society Press. https:\/\/doi.org\/10.1145\/2534860"},{"key":"132-1_CR2","volume-title":"A pattern language","author":"C Alexander","year":"1977","unstructured":"Alexander C, Ishikawa S, Silverstein M (1977) A pattern language. Oxford University Press, Oxford"},{"key":"132-1_CR3","unstructured":"Ali Z, Bolinger J, Herold M, Lynch T, Ramanathan J, Ramnath, R (2011) Teaching object-oriented software design within the context of software frameworks. In: Proceedings of the 41st annual ASEE\/IEEE frontiers in education conference, pp 1\u20135. http:\/\/citeseerx.ist.psu.edu\/viewdoc\/download?doi=10.1.1.300.7477&rep=rep1&type=pdf"},{"key":"132-1_CR4","doi-asserted-by":"crossref","unstructured":"Astrachan O, Berry G, Cox L, Mitchener G (1998) Design patterns: An essential component of CS curricula. In: Proceedings of the twenty-ninth SIGCSE Technical symposium on Computer science education, pp 153\u2013160. http:\/\/www.cs.duke.edu\/~ola\/papers\/patterns.pdf","DOI":"10.1145\/274790.273182"},{"key":"132-1_CR5","doi-asserted-by":"publisher","first-page":"190","DOI":"10.1007\/978-3-540-77934-6_15","volume-title":"Reflections on the teaching of programming methods and implementations","author":"ME Caspersen","year":"2008","unstructured":"Caspersen ME, Christensen HB (2008) Frameworks in teaching. In: Bennedsen J, Caspersen ME, K\u00f6lling M (eds) Reflections on the teaching of programming methods and implementations. Springer-Verlag, Heidelberg, pp 190\u2013205"},{"key":"132-1_CR6","doi-asserted-by":"publisher","first-page":"95","DOI":"10.28945\/1798","volume":"10","author":"JC Chao","year":"2013","unstructured":"Chao JC, Parker KR, Davey B (2013) Navigating the framework jungle for teaching web application development. J Issues Inf Sci Inf Technol 10:95\u2013109. https:\/\/doi.org\/10.28945\/1798 . http:\/\/iisit.org\/Vol10\/IISITv10p095-109Chao0092.pdf","journal-title":"J Issues Inf Sci Inf Technol"},{"key":"132-1_CR7","doi-asserted-by":"crossref","unstructured":"Christensen HB (2004) Frameworks: putting design patterns into perspective. In: Proceedings of the 9th annual SIGCSE conference on innovation and technology in Computer science education, pp 142\u2013145. http:\/\/www.daimi.au.dk\/~hbc\/publication\/iticse2004.pdf","DOI":"10.1145\/1007996.1008035"},{"key":"132-1_CR8","doi-asserted-by":"crossref","first-page":"75","DOI":"10.1145\/544414.544438","volume-title":"Proceedings of the 7th annual conference on innovation and technology in Computer science education","author":"HB Christensen","year":"2002","unstructured":"Christensen HB, Caspersen ME (2002) Frameworks in CS1 \u2013 a different way of introducing event-driven programming. In: Proceedings of the 7th annual conference on innovation and technology in Computer science education, pp 75\u201379. http:\/\/cs.au.dk\/~mec\/publications\/conference\/03%2D%2Diticse2002.pdf"},{"key":"132-1_CR9","unstructured":"Colesky M, Futcher L, Van Niekerk J (2013) Design patterns for secure software development: demonstrating security through the MVC pattern. In: Proceedings of the 15th annual conference on WWW applications. Cape Town, pp 10\u201313"},{"key":"132-1_CR10","first-page":"304","volume-title":"Advances in information systems. ADVIS 2006. Lecture notes in computer science","author":"B Crawford","year":"2006","unstructured":"Crawford B, Castro C, Monfroy E (2006) Knowledge management in different software development approaches. In: Yakhno T, Neuhold EJ (eds) Advances in information systems. ADVIS 2006. Lecture notes in computer science, vol 4243. Springer, Berlin, pp 304\u2013313"},{"key":"132-1_CR11","unstructured":"Cunningham W, Beck K (1988) Using a pattern language for programming. Addendum to the Proceedings of OOPSLA\u201987, ACM SIGPLAN Notices, 23, 5"},{"key":"132-1_CR12","doi-asserted-by":"publisher","unstructured":"Esakia A, McCrickard DS (2016) An adaptable model for teaching mobile app development. 2016 IEEE frontiers in education conference. Erie, 2016, pp 1\u20139. https:\/\/doi.org\/10.1109\/FIE.2016.7757478","DOI":"10.1109\/FIE.2016.7757478"},{"key":"132-1_CR13","doi-asserted-by":"publisher","first-page":"443","DOI":"10.1007\/978-3-642-21602-2_48","volume-title":"Human-computer interaction. Design and development approaches","author":"C Gacimart\u00edn","year":"2011","unstructured":"Gacimart\u00edn C, Hern\u00e1ndez J, Larrabeiti D (2011) A middleware architecture for designing TV-based adapted applications for the elderly. In: Jacko J (ed) Human-computer interaction. Design and development approaches, vol 6761. Springer-Verlag, Heidelberg, pp 443\u2013449"},{"key":"132-1_CR14","doi-asserted-by":"crossref","unstructured":"Gamma E, Helm R, Johnson R, Vlissides J (1993) Design patterns: abstraction and reuse of object-oriented design. In: Proceedings of the 7th European conference on object-oriented programming, pp 406\u2013431. http:\/\/www.cs.pitt.edu\/~mock\/cs1530\/lectures2\/ecoop93-patterns.pdf","DOI":"10.1007\/3-540-47910-4_21"},{"key":"132-1_CR15","volume-title":"Design patterns: elements of reusable object-oriented software","author":"E Gamma","year":"1995","unstructured":"Gamma E, Helm R, Johnson R, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley Professional, Indianapolis"},{"key":"132-1_CR16","doi-asserted-by":"publisher","unstructured":"Gravino C, Risi M (2017) How the use of design patterns affects the quality of software systems: a preliminary investigation. In: 2017 43rd Euromicro conference on software engineering and advanced applications (SEAA) IEEE, pp 274\u2013277. https:\/\/doi.org\/10.1109\/SEAA.2017.32","DOI":"10.1109\/SEAA.2017.32"},{"issue":"1","key":"132-1_CR17","first-page":"120","volume":"21","author":"S Hanson","year":"2005","unstructured":"Hanson S, Fossum TV (2005) Refactoring model-view-controller. J Comput Sci Coll 21(1):120\u2013129. http:\/\/www.cs.uwp.edu\/staff\/hansen\/publications\/StopWatch\/mvc.ccsc.pdf","journal-title":"J Comput Sci Coll"},{"key":"132-1_CR18","doi-asserted-by":"crossref","unstructured":"Hundley J (2008) A review of using design patterns in CS1. In: Proceedings of the 46th. Annual southeast regional conference on XX, pp 30\u201333","DOI":"10.1145\/1593105.1593113"},{"key":"132-1_CR19","doi-asserted-by":"publisher","unstructured":"Hussain S, Keuung J, Khan AA (2017) The effect of Gang-of-Four design patterns usage on design quality attributes. In: 2017 IEEE international conference on software quality, reliability and security (QRS). IEEE, pp 263\u2013273. https:\/\/doi.org\/10.1109\/QRS.2017.37","DOI":"10.1109\/QRS.2017.37"},{"key":"132-1_CR20","unstructured":"IEEE (1986) IEEE standard for software unit testing. http:\/\/ieeexplore.ieee.org\/stamp\/stamp.jsp?tp=&arnumber=27763"},{"key":"132-1_CR21","doi-asserted-by":"publisher","first-page":"879","DOI":"10.1007\/978-3-642-13039-7_222","volume-title":"XII Mediterranean conference on medical and biological engineering and computing 2010","author":"V Kasik","year":"2010","unstructured":"Kasik V, Stankus M (2010) Graphical development system design for creating the FPGA-based applications in biomedicine. In: Bamidis PD, Pallikarakis N (eds) XII Mediterranean conference on medical and biological engineering and computing 2010, vol 29. Springer-Verlag, Heidelberg, pp 879\u2013882"},{"issue":"1","key":"132-1_CR22","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2926966","volume":"49","author":"S Khwaja","year":"2015","unstructured":"Khwaja S, Alshayeb M (2015) Survey on software design-pattern specification languages. ACM Comput Surv 49(1):1\u201335. https:\/\/doi.org\/10.1145\/2926966","journal-title":"ACM Comput Surv"},{"issue":"2","key":"132-1_CR23","first-page":"190","volume":"20","author":"SF Morse","year":"2004","unstructured":"Morse SF, Anderson CL (2004) Introducing application design and software engineering principles in introductory CS courses: model-view-controller Java application framework. J Comput Sci Coll 20(2):190\u2013201. http:\/\/www.wou.edu\/~andersc\/pubs\/CCSC-NW_2004.pdf","journal-title":"J Comput Sci Coll"},{"key":"132-1_CR24","doi-asserted-by":"publisher","DOI":"10.1007\/978-981-10-3174-8_7","volume-title":"Artificial intelligence and evolutionary computations in engineering systems. advances in intelligent systems and computing","author":"NP Prabhakar","year":"2017","unstructured":"Prabhakar NP, Rani D, Hari Narayanan AG, Judy MV (2017) Analyzing the impact of software design patterns in data mining application. In: Dash S, Vijayakumar K, Panigrahi B, Das S (eds) Artificial intelligence and evolutionary computations in engineering systems. advances in intelligent systems and computing, vol 517. Springer, Singapore. https:\/\/doi.org\/10.1007\/978-981-10-3174-8_7"},{"key":"132-1_CR25","volume-title":"A practical introduction to software design with C++","author":"SP Reiss","year":"1999","unstructured":"Reiss SP (1999) A practical introduction to software design with C++. Wiley, Hoboken"},{"key":"132-1_CR26","doi-asserted-by":"publisher","unstructured":"Suphakul T, Senivongse T (2017) Development of privacy design patterns based on privacy principles and UML. In: 2017 18th IEEE\/ACIS international conference on software engineering, artificial intelligence, networking and parallel\/distributed computing (SNPD). IEEE, pp 369\u2013375. https:\/\/doi.org\/10.1109\/SEAA.2017.32","DOI":"10.1109\/SEAA.2017.32"},{"key":"132-1_CR27","unstructured":"Tao Y (2002) Component- vs. application-level MVC architecture. Frontiers in Education, T2G-7-T2G-10. http:\/\/citeseerx.ist.psu.edu\/viewdoc\/download?doi=10.1.1.20.5508&rep=rep1&type=pdf"},{"key":"132-1_CR28","doi-asserted-by":"publisher","unstructured":"Tao Y, Liu G, Mottok J, Hackenberg R, Hagel G (2015) Just-in-time-teaching experience in a software design pattern course. In: 2015 IEEE global engineering education conference (EDUCON), pp 915\u2013919. https:\/\/doi.org\/10.1109\/EDUCON.2015.7096082","DOI":"10.1109\/EDUCON.2015.7096082"},{"key":"132-1_CR29","unstructured":"Topi H et al (2010) IS 2010: Curriculum guidelines for undergraduate degree programs in information systems. Report from the joint IS 2010 curriculum task force. https:\/\/www.acm.org\/binaries\/content\/assets\/education\/curricula-recommendations\/is-2010-acm-final.pdf"},{"key":"132-1_CR30","doi-asserted-by":"publisher","first-page":"75","DOI":"10.1007\/978-3-319-18500-2","volume-title":"Information security education across the curriculum. WISE 2015. IFIP advances in information and communication technology","author":"J Niekerk Van","year":"2015","unstructured":"Van Niekerk J, Futcher L (2015) The use of software design patterns to teach secure software design: an integrated approach. In: Bishop M, Miloslavskaya N, Theocharidou M (eds) Information security education across the curriculum. WISE 2015. IFIP advances in information and communication technology, vol 453. Springer, Cham, pp 75\u201383. https:\/\/doi.org\/10.1007\/978-3-319-18500-2"},{"key":"132-1_CR31","unstructured":"Vuksanovic IP, Sudarevic B (2011) Use of web application frameworks in the development of small applications. In: Proceedings of the 34th international convention on information and communication technology, electronics and microelectronics (MIPRO), pp 458\u2013462"},{"key":"132-1_CR32","unstructured":"Wallingford E (2002) Functional programming patterns and their role in instruction. In: Proceedings of the international conference on functional programming, pp 151\u2013163. http:\/\/www.cs.uni.edu\/~wallingf\/patterns\/papers\/fdpe2002\/fdpe2002.pdf"},{"key":"132-1_CR33","doi-asserted-by":"crossref","unstructured":"Wick MR (2001) Kaleidoscope: using design patterns in CS1. In: Proceedings of the 32nd SIGCSE technical symposium on computer science education, pp 258\u2013262","DOI":"10.1145\/364447.364596"}],"container-title":["Encyclopedia of Education and Information Technologies"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-60013-0_132-1","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,9,17]],"date-time":"2022-09-17T03:02:39Z","timestamp":1663383759000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-60013-0_132-1"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783319600130","9783319600130"],"references-count":33,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-60013-0_132-1","relation":{},"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"7 May 2018, 00:00:00","order":1,"name":"received","label":"Received","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"8 May 2018, 00:00:00","order":2,"name":"accepted","label":"Accepted","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"13 April 2019","order":3,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}}]}}