computer engineering computing curricula john impagliazzo pradip srimani andrew mcgettrick robert...

24
Computer 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

Post on 20-Dec-2015

222 views

Category:

Documents


0 download

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

24

Questions ???

http://www.eng.auburn.edu/ece/CCCE/