Title: Computer Engineering Computing Curricula
1Computer Engineering Computing Curricula
- John Impagliazzo
- Pradip Srimani
- Andrew McGettrick
- Robert Sloan
- IEEE Computer Society / ACM
- Computing Curricula Computer Engineering Task
Force - SIGCSE Symposium
- 2003 February 22
2Presentation Overview (J.I)
- 0845 John - Introductions (5 mins)
- 0850 Pradip - CCCE and connection with CC2001
project (5 mins) - 0855 Pradip - Computer engineering report
overview (10 mins) - 0905 John - Importance of professionalism and
history (10 mins) - 0915 Andrew - Breadth of topic areas in report
(15 mins) - 0930 Robert - Focus on one area in detail (15
mins) - 0945 Pradip John - Questions (15 mins)
- 1000 Session ends
3What 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.
4Background 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.
2001lthttp//www.computer.org/education/cc2001/gt
5Background CC2001 (2)
- Computer Engineering Task Force
- Established 2001
- 16 members currently
- Representation of diverse interests/institutions
- Curricular Guidelines
- Science math, engineering core
- Intersections with EE and CS
- Emphasize design and creativity
- Laboratory experience
- Industry-standard modern tools
6Outline of the CCCE Volume
- Woodenman Version
- Chapter 1. Introduction
- Chapter 2. Computer Engineering Principles
- Chapter 3. Professionalism and Computer
Engineering - Chapter 4. Overview of the Computer Engineering
- Body of Knowledge
- Chapter 5. Integration of Engineering Practice
into the - Computer Engineering Curriculum
- Chapter 6. Curriculum Implementation Issues
- Chapter 7. Characteristics of Computer
Engineering Graduates - Chapter 8. Management Issues
- Chapter 9. Conclusions
- Bibliography
- Appendix A Knowledge Units
- Appendix B Course Descriptions
7Professionalism (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
8Professionalism (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
9Practice and Conduct
- Do the right thing
- Foster best practices
- Understand ethical practices
- Understand legal issues
10Codes 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
11Codes 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
12Industry 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??
13Top 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
14Breadth 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
15The Body of Knowledge
- Hierarchical Structure
- Disciplinary subfields (e.g., digital logic)
- Units or thematic modules (e.g., switching
theory) - Topics (e.g., number systems)
- Core vs. Elective Units
- Core should be included in all programs
- Elective inclusion based on program objectives
and/or student interest - Organization of BOK does not imply organization
of a curriculum
16Body 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 Interaction
- ESY Embedded Systems
- OPS Operating Systems
- CSY Circuits and Systems
- (continued)
17Body of Knowledge Topics (2)
- NWK Networks
- ELE Electronics
- DIG Digital Logic
- PRF Programming Fundamentals
- ALG Algorithms and Complexity
- DSC Discrete Structures
- PRS Probability and Statistics
-
18Body 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
19Comp. 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
20CSE 3 Life Cycle core (1)
- Minimum core coverage 2 hours
- Topics
- Nature of life cycle, role of life cycle model.
Quality in relation to the life cycle. - Influence of system size on choice of life cycle
model and nature of system agility issues. - Different models of the life cycle strengths
and weaknesses of each. - The concept of process. Process improvement.
Basis for this is information. - Gathering information.
- Maturity models. Standards and guidelines.
21CSE 3 Life Cycle core (2)
- Learning objectives
- Recognize the need for a disciplined approach to
system development and explain the elements of
this in particular contexts. - Explain how data should be gathered to inform
process improvement.
22What Happens Next? (P.S.)
- Strawman Body of Knowledge (2002 June)
- Preliminary draft
- Public review and comment via websitehttp//www.e
ng.auburn.edu/ece/CCCE/ - Solicited review by topic experts
- Wide 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(No Transcript)
24Questions ???
- http//www.eng.auburn.edu/ece/CCCE/