ABSTRACT
Originally there was one computing curriculum, computer science, which provided a "one-size-fits-all" education in programming and computing in general. Today, computing education has diverged into an array of sub-discipline areas as educators try to meet the changing computing needs of business and industry. Information technology, software engineering, computer engineering, and information systems have emerged from computer science as distinct computing disciplines. Plus, additional "micro-disciplines" are quickly emerging: games and networking from information technology, for example.
The foundation skill for all computing disciplines is programming. However as computing technologies advance, discipline-specific differences increase. Each computing sub-discipline needs to approach programming from a slightly different viewpoint to meet student expectations of being highly marketable and employer expectations of quick productivity. How can colleges and universities economically meet the competing demands for a focused computing education while maintaining a strong foundation in programming fundamentals.
This paper discusses how an introductory programming sequence can be designed with a common base to support multiple computing sub-disciplines as well as differentiated to address the specific, focused needs of a given sub-discipline. We identify both commonalities that support economy of scale and important differences that distinguish sub-discipline curricula.
- ACM Computing Curricula 2005: The Overview Report, final version 06/01/2006; retrieved June 8, 2007, from http://portal.acm.org.Google Scholar
- ACM Computing Curriculum -- Information Technology Volume, October 2005 Version, retrieved June 23, 2007, from http://www.acm.org/education/.Google Scholar
- Bills, D. and Biles, J. The Role of Programming in IT. In Proceedings of the 6th Annual Conference on Information Technology Education (Newark, NJ, Oct. 20--22, 2005). ACM Press, New York, NY, USA, 2005. Google ScholarDigital Library
- Prasad, C., Li, X. Teaching Introductory Programming to Information Systems and Computing Majors: Is there a Difference? In Proceedings of the Sixth Australasian Computing Education Conference (Dunedin, New Zealand, 2004). Australian Computer Society, Darlinghurst, Australia, 2004, Vol. 30, 261--267. Google ScholarDigital Library
- Hemmendinger, D. The ACM and IEEE-CS guidelines for undergraduate CS education. Communications of the ACM, Vol. 50, No. 5, May 2007, 46--53. Google ScholarDigital Library
- Pollack, S. V. The development of computer science. Studies in Computer Science. S. V. Pollack, Ed. MAA Studies in Mathematics 22, 1--51, Mathematical Association of America, Washington, D.C., 1982. Google ScholarDigital Library
- Ralston, A., and Shaw, M. Curriculum '78 -- Is computer science really that Unmathematical? Communications of the ACM, Vol. 23, No. 2, February 1980, 67--70. Google ScholarDigital Library
- IS 2002: Model Curriculum Guidelines for Undergraduate Degree Programs in Information Systems, final version 12/31/2002; retrieved June 23, 2007, from http://www.aitp.org/publications/model.jsp.Google Scholar
- Schulte, C., and Bennedsen, J. What do teachers teach in introductory programming? Proceedings of the 2006 International Workshop on Computing Education Research, September 2006, 17--27. Google ScholarDigital Library
- Besana, G. M., Dettori, L., and Steinbach, T. A. 2006. An invitation to IT: redesigning the first year. J. Comput. Small Coll. 21, 6 (Jun. 2006), 130--139. Google ScholarDigital Library
- Harrington, J. L. and Hayes, H. M. 1995. A joint first program for computer science and information systems. In Proceedings of the Twenty-Sixth SIGCSE Technical Symposium on Computer Science Education (Nashville, Tennessee, United States, March 02--04, 1995). C. M. White, J. E. Miller, and J. Gersting, Eds. SIGCSE'95. ACM Press, New York, NY, 121--125. DOI= http://doi.acm.org/10.1145/199688.199750 Google ScholarDigital Library
- Taffe, W. J. 2002. Information technology: a degree in computing. J. Comput. Small Coll. 17, 3 (Feb. 2002), 183--189. Google ScholarDigital Library
Index Terms
- Sharing introductory programming curriculum across disciplines
Recommendations
Historical High School Computer Science Curriculum and Current K-12 Initiatives
SIGCSE '19: Proceedings of the 50th ACM Technical Symposium on Computer Science EducationIt's an exciting time in computer science education on the K-12 landscape. Educational jurisdictions around the world are incorporating computer science concepts, as well as related computational thinking components, into their mandatory, K-12 ...
Teaching students to identify common programming errors using a game
SIGITE '08: Proceedings of the 9th ACM SIGITE conference on Information technology educationIntroductory computer programming remains a challenging subject for many first-time students. This challenge is further compounded by the difficulty students face in identifying the errors in their own computer programs. While debuggers are helpful in ...
Collaboration across the curriculum: a disciplined approach todeveloping team skills
SIGCSE '12: Proceedings of the 43rd ACM technical symposium on Computer Science EducationImproving communication and collaborative skills of computer science students has been a priority in the community for some time. We present our philosophy, collaboration across the curriculum, which moves beyond existing individual courses or course ...
Comments