Undergraduate Software Engineering Programs in the United States

  • Slides: 16
Download presentation
Undergraduate Software Engineering Programs in the United States (in 2003) Mark A. Ardis Rose-Hulman

Undergraduate Software Engineering Programs in the United States (in 2003) Mark A. Ardis Rose-Hulman Institute of Technology 1

Acknowledgements • Most of this presentation was originally given at FIE 2003 with Don

Acknowledgements • Most of this presentation was originally given at FIE 2003 with Don Bagert http: //fie. engrng. pitt. edu/fie 2003/ papers/1294. pdf 2

Profile of SE Degree Programs 11 18 of 21 programs in 2002 -3 3

Profile of SE Degree Programs 11 18 of 21 programs in 2002 -3 3 Engineering College School of Computing 2 2 School of Sciences Other 3

Departments 6 5 3 3 1 CS ECE Joint CS/ECE SE College Level 4

Departments 6 5 3 3 1 CS ECE Joint CS/ECE SE College Level 4

Curriculum Content • Computer Science – All required: • Intro CS sequence • Organization/assembly

Curriculum Content • Computer Science – All required: • Intro CS sequence • Organization/assembly languages – About half required: • • Operating Systems Concepts of Programming Languages Database Systems Networks 5

Curriculum Content - 2 • Software Engineering – Average of six courses per program

Curriculum Content - 2 • Software Engineering – Average of six courses per program – All required capstone experience – More than half have 1 -2 SE intro courses – Most required SE architecture or design – Less than half had Project Management, Quality Assurance, Requirements – One-third had ethics, HCI, formal methods 6

Curriculum Content - 3 • Mathematics – All required calculus – Almost all require

Curriculum Content - 3 • Mathematics – All required calculus – Almost all require discrete math and probability/statistics – About half require differential equations, linear algebra – In general, requirements were similar to CS 7

Curriculum Content - 4 • Traditional Engineering – Very little besides digital logic –

Curriculum Content - 4 • Traditional Engineering – Very little besides digital logic – Circuits, engineering economics each required by three programs • Other Courses – General education requirements – Software engineering application domain area • Some specify one area, others provide a choice 8

SE Curriculum Models • SEI Report on Graduate Software Engineering Education, CMU/SEI-89 -TR-21. •

SE Curriculum Models • SEI Report on Graduate Software Engineering Education, CMU/SEI-89 -TR-21. • Guidelines for Software Engineering Education, CMU/SEI-99 -TR-032. • Software Engineering Education Knowledge (SEEK) chapter of Computing Curriculum Software Engineering, December 2002, http: //sites. computer. org/ccse/ 9

Undergraduate vs Graduate • Overview SE course • No Proj. Mgmt. course • No

Undergraduate vs Graduate • Overview SE course • No Proj. Mgmt. course • No Overview SE course • Proj. Mgmt. course • Similar coverage of SE material • Similar capstone project experience 10

SEEK • Knowledge Areas (10) – Units (~4 per Knowledge Area) • Topics (~6

SEEK • Knowledge Areas (10) – Units (~4 per Knowledge Area) • Topics (~6 per Unit) • Essential or Desired or Optional • Bloom's taxonomy for Essential topics DES. str. 4 Aspect oriented design EVO. ac. 6 Refactoring D E k 11

SEEK Knowledge Areas 1. Computing Essentials 2. Math and Engin. Fundamentals 3. Professional Practice

SEEK Knowledge Areas 1. Computing Essentials 2. Math and Engin. Fundamentals 3. Professional Practice 4. Modeling & Analysis 5. Software Design 6. Verification & Validation 7. Software Evolution 8. Software Process 9. Software Quality 10. Software Mgmt. 12

Example Knowledge Units DES Software Design DES. con Design Concepts DES. str Design Strategies

Example Knowledge Units DES Software Design DES. con Design Concepts DES. str Design Strategies DES. ar Architectural Design DES. hci Human Computer Interface Design DES. dd Detailed Design DES. ste Design Support Tools and Evaluation 13

Example. Topics DES Software Design DES. str Design Strategies DES. str. 1 Function-oriented design

Example. Topics DES Software Design DES. str Design Strategies DES. str. 1 Function-oriented design a(c) DES. str. 2 Object-oriented design c(a) DES. str. 3 Data-structure centered design DES. str. 4 Aspect oriented design E E D O 14

SEEK Coverage • Good coverage overall – None of the Essential topics at Application

SEEK Coverage • Good coverage overall – None of the Essential topics at Application level are missing – None of the Management or Professional topics missing from more than 1 program • Evolution topics are least covered 15

Analysis • SE similar to CS in overall requirements • Most SE programs have

Analysis • SE similar to CS in overall requirements • Most SE programs have "Intro to SE" (similar to CS, unlike other engineering disciplines) • Capstone experience is similar to other engineering disciplines 16