computer engineering computing curricula john impagliazzo pradip srimani andrew mcgettrick robert...
Post on 20-Dec-2015
222 views
TRANSCRIPT
Computer Engineering Computing Curricula
John Impagliazzo
Pradip Srimani
Andrew McGettrick
Robert Sloan
IEEE Computer Society / ACMComputing Curricula – Computer Engineering Task Force
SIGCSE Symposium
2003 February 22
2
Presentation Overview (J.I)
08:45 John - Introductions (5 mins)
08:50 Pradip - CCCE and connection with CC2001 project (5 mins)
08:55 Pradip - Computer engineering & report overview (10 mins)
09:05 John - Importance of professionalism and history (10 mins)
09:15 Andrew - Breadth of topic areas in report (15 mins)
09:30 Robert - Focus on one area in detail (15 mins)
09:45 Pradip & John - Questions (15 mins)
10:00 Session ends
3
What is Computer Engineering?
Computer engineering embodies the science and the technology of design, construction, implementation and maintenance of the hardware and the software components of modern computing systems and computer-controlled equipment.
Computer engineers are solidly grounded in the theories and principles of computing, mathematics and engineering, and apply these theoretical principles to design hardware, software, networks, and computerized equipment and instruments to solve technical problems in diverse application domains.
4
Background: CC2001 (1) (P.S.)
Computing Curricula 2001 Joint effort of IEEE – CS and ACM Started in 1998 Revise and update 1991 model curricula Address developments of past decade and
endure through the next decade Separate volumes for Computer Science,
Computer Engineering, Software Engineering, Information Systems
Computer Science Volume completed in Dec. 2001<http://www.computer.org/education/cc2001/>
5
Background: CC2001 (2)
Computer Engineering Task Force Established 2001 16 members currently Representation of diverse interests/institutions
Curricular GuidelinesScience & math, engineering core Intersections with EE and CSEmphasize design and creativityLaboratory experience Industry-standard modern tools
6
Outline of the CCCE Volume
Woodenman Version
Chapter 1. IntroductionChapter 2. Computer Engineering PrinciplesChapter 3. Professionalism and Computer EngineeringChapter 4. Overview of the Computer Engineering
Body of KnowledgeChapter 5. Integration of Engineering Practice into the
Computer Engineering CurriculumChapter 6. Curriculum Implementation IssuesChapter 7. Characteristics of Computer Engineering
GraduatesChapter 8. Management IssuesChapter 9. Conclusions
Bibliography
Appendix A Knowledge UnitsAppendix B Course Descriptions
7
Professionalism (1) (J.I.)
Computer engineers design and implement computing systems that affect the public
Computer engineers should hold a special sense of responsibility
Almost every aspect of their work can have a public consequence
8
Professionalism (2)
Consequences of professional practice should focus on the public good
Computer engineers must consider the professional, societal, and ethical context in which they practice
9
Practice and Conduct
Do the right thing
Foster best practices
Understand ethical practices
Understand legal issues
10
Codes of Ethics and Practices (1)
National Society of Professional Engineers - NSPE Code of Ethics for Engineers
Institute of Electrical and Electronic Engineers (IEEE): IEEE Code of Ethics
Association for Computing Machinery (ACM): ACM Code of Ethics and Professional Conduct
11
Codes of Ethics and Practices (2)
ACM/IEEE-Computer Society: Software Engineering Code of Ethics and Professional Practice
International Federation for Information Processing (IFIP): Harmonization of Professional Standards and also Ethics of Computing
Association of Information Technology Professionals (AITP): AITP Code of Ethics and the AITP Standards of Conduct
12
Industry Needs
National Association of Colleges and Employers (NACE)
Conducts annual survey to determine what qualities employers consider most important in applicants seeking employment.
What do you think employers want??
13
Top Ten Factors in 2001
1. Communication skills (verbal and written)
2. Honesty/integrity
3. Teamwork skills
4. Interpersonal skills
5. Motivation/initiative
6. Strong work ethic
7. Analytical skills
8. Flexibility & adaptability
9. Computer skills
10. Self-confidence
14
Breadth of Topic Areas (A.M.)
Elements of Hardware
Elements of Software
Elements of Computer Theory
Elements of Mathematics
Elements of Science
Elements of General Education
15
The Body of Knowledge
Hierarchical StructureDisciplinary subfields (e.g., digital logic)Units or thematic modules (e.g., switching
theory)Topics (e.g., number systems)
Core vs. Elective UnitsCore = should be included in all programsElective = inclusion based on program
objectives and/or student interest
Organization of BOK does not imply organization of a curriculum
16
Body of Knowledge Topics (1)
Core Topic Areas (15) (Woodenman Version)
SPR Social and Professional Issues CSE Computer Systems Engineering CAO Computer Architecture and Organization SWE Software Engineering HCI Human Computer InteractionESY Embedded Systems OPS Operating Systems CSY Circuits and Systems
(continued)
17
Body of Knowledge Topics (2)
NWK Networks ELE Electronics DIG Digital Logic PRF Programming Fundamentals ALG Algorithms and Complexity DSC Discrete StructuresPRS Probability and Statistics
18
Body of Knowledge Topics (3)
Elective Topic Areas (7) (Woodenman Version)
DSP Digital Signal Processing
VLS VLSI/ASIC Design
DGA Design Automation
ACP Alternative Computing Paradigms
TFT Testing and Fault Tolerance
INS Intelligent Systems
IHM Information Management
19
Comp. Systems Engineering (R.S)
CSE 0. History and overview of computer systems design [core]
CSE 1. Overview of systems engineering [core]
CSE 2. Theoretical considerations [elective]
CSE 3. Life cycle [core]
CSE 4. Requirements analysis and elicitation [core]
CSE 5. Specification [core]
CSE 6. Architectural design [core]
CSE 7. Implementation
CSE 8. Testing
CSE 9. Maintenance
CSE 10. Project management
CSE 11. Specialist systems
CSE 12. Hardware and software co-design
20
CSE 3: Life Cycle [core] (1)
Minimum core coverage : 2 hours
Topics:
1. Nature of life cycle, role of life cycle model. Quality in relation to the life cycle.
2. Influence of system size on choice of life cycle model and nature of system – agility issues.
3. Different models of the life cycle – strengths and weaknesses of each.
4. The concept of process. Process improvement. Basis for this is information.
5. Gathering information.
6. Maturity models. Standards and guidelines.
21
CSE 3: Life Cycle [core] (2)
Learning objectives:
1. Recognize the need for a disciplined approach to system development and explain the elements of this in particular contexts.
2. Explain how data should be gathered to inform process improvement.
22
What Happens Next? (P.S.)
Strawman Body of Knowledge (2002 June)Preliminary draftPublic review and comment via website
http://www.eng.auburn.edu/ece/CCCE/Solicited review by topic expertsWide participation sought, including
international
Woodenman CCCE Volume (2003 February)Review of BOK and text chapters
Ironman CCCE Volume (2003 Summer)
Submission to IEEE-CS and ACM (2003 Dec)
23
WHAT SHOULD COMPUTER ENGINEERS KNOW?http://www.eng.auburn.edu/ece/CCCE
The Woodenman version of the Body of Knowledge from the “Computing Curricula: Computer Engineering” volume is now available for public review. This is a draft and input from the
entire professional community is being solicited.
This is your opportunity to voice opinions, comments, and concerns and to help shape the final document.
IEEE-CS / ACMComputing Curricula: Computer Engineering
Task Force