320 likes | 449 Views
21st Century Computing Curricula. Richard J. LeBlanc, Jr. Professor, College of Computing Georgia Institute of Tech nology Atlanta, Georgia, USA rich@cc.gatech.edu. CC2001 Project. Joint Task Force on Computing Curricula 2001 (CC2001) established in late 1998
E N D
21st Century Computing Curricula Richard J. LeBlanc, Jr. Professor, College of Computing Georgia Institute of Technology Atlanta, Georgia, USA rich@cc.gatech.edu 21st Century Computing Curricula
CC2001 Project • Joint Task Force on Computing Curricula 2001 (CC2001) established in late 1998 • Created by Computer Society of the Institute for Electrical and Electronic Engineers (IEEE-CS) and the Association for Machinery (ACM) • Charter: to undertake a major review of curriculum guidelines for undergraduate programs in computing. 21st Century Computing Curricula
A New Approach • Curriculum 1991 included Computer Science and Computer Engineering curricula recommendations in a single document. • The CC2001 Task Force recognized a need to address multiple disciples and draw on broader expertise. 21st Century Computing Curricula
Multiple Volumes • Discipline-specific committees have completed or are producing volumes in: • Computer Science • Information Systems • Software Engineering • Computer Engineering • Information Technology 21st Century Computing Curricula
Overview Joint Task Force on Computing Curricula ACM IEEE Computer Society Other societies ?? Information Technology Software Engineering Information Systems Computer Science Computing Curriculum - Software Engineering Steering Committee ACM IEEE Computer Society Several other societies Computing Curriculum - Information Technology Steering Committee ACM IEEE Computer Society Computing Curriculum 2001 Steering Committee ACM IEEE Computer Society Computing Curricula 2001 Structure ACM Association for Information Systems (AIS) Association of Information Technology Professionals (AITP) IEEE Computer Society Computer Engineering Computing Curriculum - Computer Engineering Steering Committee ACM IEEE Computer Society 21st Century Computing Curricula
Why are there so many? • Computing (as a broad discipline) is now subdivided into a variety of degree programs in various countries • Factors in the division include • Science or Engineering orientation • Degree of hardware emphasis • Degree of applications emphasis • Names on volumes commonly used in USA as degree program names 21st Century Computing Curricula
Common Elements of Volumes • Identify a body of knowledge • Define “core” knowledge • Describe courses and common structures to create degree programs • Specify the intended results as outcomes or characteristics of graduates 21st Century Computing Curricula
Computer Science • Sponsors • ACM • IEEE Computer Society • Audience • Broad group of programs that focus on science and technology of computing 21st Century Computing Curricula
Computer ScienceDistinguishing characteristics • Approach to defining core knowledge • Definition of curriculum alternatives through “curriculum strategies” • Greater emphasis on professional practice than in previous curriculum recommendations • Outcomes defined at minimal and modal levels 21st Century Computing Curricula
CS Implementation Strategies 21st Century Computing Curricula
Topic-Based Approach CS210T. Algorithm Design and Analysis CS220T. Computer Architecture CS225T. Operating Systems CS230T. Net-centric Computing CS260T. Artificial Intelligence CS270T. Databases CS280T. Social and Professional Issues CS290T. Software Development CS490. Capstone Project 21st Century Computing Curricula
Compressed Approach CS210C. Algorithm Design and Analysis CS220C. Computer Architecture CS226C. Operating Systems and Networking CS262C. Information and Knowledge Management CS292C. Software Development and Professional Practice 21st Century Computing Curricula
Systems-Based Approach CS120. Introduction to Computer Organization CS210S. Algorithm Design and Analysis CS220S. Computer Architecture CS226S. Operating Systems and Networking CS240S. Programming Language Translation CS255S. Computer Graphics CS260S. Artificial Intelligence CS271S. Information Management CS291S. Software Development and Systems Programming CS490. Capstone Project 21st Century Computing Curricula
Web-Based Approach CS130. Introduction to the World-Wide Web CS210W. Algorithm Design and Analysis CS221W. Architecture and Operating Systems CS222W. Architectures for Networking and Communication CS230W. Net-centric Computing CS250W. Human-Computer Interaction 21st Century Computing Curricula
Net-centric Computing Introduces the structure, implementation, and theoretical underpinnings of computer networking and the applications that have been enabled by that technology. Topics: Communication and networking The web as an example of client-server computing Building web applications Network management Compression and decompression Multimedia data technologies Wireless and mobile computing 21st Century Computing Curricula
Information Systems • Sponsors ACM Association for Information Systems (AIS) Association of Information Technology Professionals (AITP) IEEE Computer Society (endorsement) • Audience • Programs that focus on the management of information within the context of an organization 21st Century Computing Curricula
Information SystemsDistinguishing characteristics • Curriculum begins with organizational perspective rather than a technology focus • Defines a single set of courses • Strongest participation by a practice-oriented processional organization • Detailed statement of expected outcomes 21st Century Computing Curricula
IS Recommended Courses 21st Century Computing Curricula
Software Engineering • Sponsors • ACM • IEEE Computer Society • British Computer Society • Information Processing Society of Japan • Australian Computer Society • Audience • Programs with an engineering emphasis on building software to solve customer needs 21st Century Computing Curricula
Software EngineeringDistinguishing characteristics • Breadth of international participation • Development of Software Engineering Education Knowledge (SEEK) starting from SWEBOK • Specific attempt to address multiple curriculum structures required by diverse systems of education 21st Century Computing Curricula
SE Outcomes Graduates of an undergraduate SE program must be able to: 1. Show mastery of the necessary body of knowledge and skills to begin practice as a software engineer. 2. Work as an individual and as part of a team to develop and deliver executable artifacts. 3. Reconcile conflicting objectives, finding acceptable compromises within limitations of cost, time, knowledge, existing systems, and organizations. 4. Design appropriate solutions in one or more application domains using engineering approaches that integrate ethical, social, legal, and economic concerns. 5. Demonstrate an understanding of and apply current theories, models, and techniques that provide a basis for problem identification and analysis, software design, development, implementation and verification. 6. Negotiate, work effectively, provide leadership where necessary, and communicate well with stakeholders in a typical software development environment. 7. Learn new models, techniques, and technologies as they emerge and appreciate the necessity of such continuing professional development. 21st Century Computing Curricula
SEEK Knowledge Areas Computing Essentials (172) Mathematical & Engineering Fundamentals (89) Professional Practice (35) Software Modeling & Analysis (53) Software Design (45) Software Verification & Validation (42) Software Evolution (10) Software Process (13) Software Quality (16) Software Management (19) 21st Century Computing Curricula
Sample SE Curriculum Patterns Recommended General Structure Implemented in a CS Department in North America 21st Century Computing Curricula
Computer Engineering • Sponsors • ACM • IEEE Computer Society • Audience • Programs with an engineering emphasis on building hardware and software systems • Distinguishing characteristics • Greatest emphasis on hardware among the curricula 21st Century Computing Curricula
Information Technology • Sponsors • Newly formed ACM SIGITE (Information Technology Education) • Audience • Programs with an emphasis on application of computing technology in a variety of contexts • Distinguishing characteristics • Still in early stages of development 21st Century Computing Curricula
What Is the Significance of these Recommendations? • They provide an up-to-date view of our discipline. • They represent the collected wisdom of many Computing educators. • When they are broadly accepted, their structure will provide a basis for textbooks and other educational materials. 21st Century Computing Curricula
How Can Any DepartmentUse So Much Advice? The collection of Computing Curricula volumes will offer many • Courses • Curriculum structures • Implementation strategies • Program Names This is a long way from the simplicity of Curriculum ‘78! 21st Century Computing Curricula
Consider the Role and Objectives of Your Program All of the Computing Curricula volumes describe programs intended to produce certain kinds of graduates • What are the characteristics of your university and its students? • What kinds of jobs are available to your graduates? • Is your department more oriented toward science, engineering or applications 21st Century Computing Curricula
Resource Requirements Are a Factor • Faculty expertise is crucial, but can change with time • Resources -- labs and other space impact what is possible • “Culture” may even be a resource -- for example, doing software engineering well requires group work and interaction with customers other than your faculty. Would this violate the expectations of both students and faculty? 21st Century Computing Curricula
Your Program is Unique • It is defined by a combination of objectives, resources and opportunities -- do you ever talk about these things? • Building your program out of custom components (courses) is costly -- books and on-line materials will be available based on Computing Curricula structures and courses • Try to find pieces of the curricula that fit your context and objectives 21st Century Computing Curricula
URL for Computing Curriculum Volumes Links to all of the volumes: http://www.acm.org/education/curricula.html 21st Century Computing Curricula