8/9/2019 Presentation from September 9, 2008 Dinner Meeting
1/34
Art PysterDistinguished Research Professor
Stevens Institute of Technology and
Co-Director, Applied Systems Thinking Institute
September 9, 2008
When Systems and Software Engineering
Education Collide: Integrating the Education of
Software and Systems Engineers
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
2/34
2
Agenda
How the world has changed
The current state of software engineeringeducation
Bringing software and systemsengineering education together
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
3/34
3
A History Lesson - 1996
Resolved: Software Should Lead in SystemsEngineering
Jim Armstrong vs. Art Pyster
The systems engineering community has long debatedthe extent to which software disciplines, processes,and practitioners should influence systemsengineering. In August 1996, the authors held a livelydebate at a meeting of the Washington Metropolitan
Area Chapter of INCOSE on the proper role of softwareengineering within systems engineering. The particularissue debated was the proposal that software ideas,process, and people should be in the lead whenbuilding complex systems. Pyster favored that view
while Armstrong opposed it.
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
4/34
Software will be the center of
systems design.
Eberhardt Rechtin
4
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
5/34
Twenty years from now, softwarepeople will be sitting at the table
and the other disciplines will besitting around the sides of theroom.
Eberhardt Rechtin
5
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
6/34
Demand for software in complex
systems is growing exponentially
0
2
4
6
8
10
12
14
16
18
1960 1970 1980 1990 2000 2010 2020
Sea Systems Missiles/Space Ground Systems Aircraft
Patriot
PAC-3
DDX
Virginia SSN
FCS
Polaris A3Aegis System
Sources: CARD Data, SEI, CSIS Analysis
ESLOCinMill i
ons
F-35 Aircraft
and Ground
ACS
SBIRS
Software Content of Sample Major DoD Weapon Systems 1960 - 2020
F-22
*Software Industrial Base Phase I Study, CSIS, October 2006 6
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
7/34
7
The term software-intensive insoftware-intensive system is
redundant
*A system in which software represents thelargest segment in one or more of thefollowing criteria:
system development cost
system development risk
system functionality
development time
*DAU Glossary of Defense Acquisition Acronyms and Terms, 2005
Everything interesting is software-intensive.
Even bullets have software programmable munitions to optimizefuzing
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
8/34
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
9/34
9
What do we teach for a masters
degree in software engineering?
The last effort to create a reference curriculum forgraduate software engineering education was by
the SEI in the early 1990s.
There are, in effect, no current community-endorsed recommendations on what to teachsoftware engineers nothing that recognizes howthe world has changed.
Response: create a project to create a newreference curriculum in software engineering
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
10/34
10
The Integrated Software andSystems Engineering Curriculum
Project
Begun in May 2007 at Stevens Institute of Technology
Sponsored by DoD Director of Systems and Software
Engineering Three products planned:
1. A modern reference curriculum for a masters degree in software engineeringthat integrates an appropriate amount of systems engineering
2. A modern reference curriculum for a masters degree in systems engineeringthat integrates an appropriate amount of software engineering
3. A truly interdisciplinary degree that is neither systems nor software engineering it is both
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
11/34
11
1st Project Graduate Software
Engineering Reference Curriculum1. Understand the current state of SwE graduate education
(November 2007)
2. Create GSwERC 0.25 with a small team, suitable forlimited review (February 2008)
3. Publicize effort through conferences, papers, website,etc (continuous)
4. Obtain endorsement from INCOSE, NDIA, ACM, IEEE, andother professional organizations (continuous)
5. Create GSwERC 0.50 suitable for broad communityreview and early adoption (October 2008)
6. Create GSwERC 1.0 suitable for broad adoption (2009)
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
12/34
12
The evolving author team Rick Adcock, Cranfield University and INCOSE
Edward Alef, General Motors
Bruce Amato,Department of Defense
Mark Ardis,Rochester Institute of Technology
Larry Bernstein, Stevens Institute of Technology
Barry Boehm, University of Southern California
Pierre Bourque, Quebec University and SWEBOK
volunteer
John Bracket,Boston University
Murray Cantor,IBM
Lillian Cassel, Villanova and ACM volunteer
Robert Edson,ANSER
Richard Fairley, Colorado Technical University
Dennis Frailey,Raytheon & Southern MethodistUniversity
Gary Hafen,Lockheed Martin and NDIA
Thomas Hilburn,Embry-Riddle Aeronautical
University
Greg Hislop,Drexel University and IEEE
Computer Society participant
Dave Klappholz, Stevens Institute of Technology
Philippe Kruchten, University of British Columbia
Phil Laplante,Pennsylvania State University, Great
Valley
Qiaoyun (Liz) Li, Wuhan University, China James McDonald, Monmouth University
John McDermid, University of York, UK
Ernest McDuffie,National Coordination Office for
NITRD Bret Michael,Naval Postgraduate School
William Milam,Ford
Ken Nidiffer, Software Engineering Institute
Art Pyster, Stevens Institute of Technology
Doug Schmidt, Vanderbilt University
Mary Shaw, Carnegie Mellon University
Robert Suritis, IBM Richard Thayer, California State University at
Sacramento
Barrie Thompson, Sunderland University, UK
Richard Turner, Stevens Institute of Technology
Joseph Urban, Texas Technical University
Ricardo Valerdi, MIT & INCOSE
David Weiss,Avaya Mary Jane Wilshire, Colorado Technical University
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
13/34
13
Methodology to understandcurrent state of SwE education
Diverse set of universities with Masters programs in SWE
- Vary in size, geography, maturity, resources, target market,
- Focused on programs with degree in SWE or Computer Science with aSWE specialization - not degrees in information technology and relatedareas
Used Software Engineering Body of Knowledge (SWEBOK) as theprimary framework for SWE competencies
Collected data from school websites
- Degree, faculty size, student population, target market,
- Degree structure, individual course descriptions- Map between courses and SWEBOK
Validated data with one or more professors from each school
Analyzed for commonalities and uniqueness
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
14/34
14
Schools studied
1. Air Force Institute of Technology
2. Brandeis University
3. California State University Fullerton
4. California State University
Sacramento5. Carnegie Mellon University
6. Carnegie Mellon University West
7. DePaul University
8. Drexel University
9. Dublin City University (Ireland) *10. Embry-Riddle Aeronautical
University
11. George Mason University
12. James Madison University
13.Mercer University
14. Monmouth University
15. Naval Postgraduate School
16. Penn State University GreatValley
17. Quebec University (Canada) *
18. Rochester Institute of Technology
19. Seattle University
20. Southern Methodist University
21. Stevens Institute of Technology
22. Texas Tech University
23. University of Alabama
Huntsville24. University of Maryland University
College
25. University of Michigan Dearborn
26. University of Southern California
27. University of York (UK) *
28. Villanova University
* Non-US Schools
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
15/34
Observations from 28 schools
1. SWE is largely viewed as a specialization of ComputerScience - much as systems engineering was oftenviewed as specialization of industrial engineering oroperations research years ago
2. Faculty size is small - few dedicated SWE professors,
making programs relatively brittle3. Student enrollments are generally small compared to CS
and to other engineering disciplines
4. Many programs specialize to specific markets such asdefense systems or safety critical systems
5. The target student population varies widely - anyonewith Bachelors and B average to someone with CSdegree and 2+ years of experience
6. Online course delivery is popular
15
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
16/34
More observations7. Objective for graduates vary widely - software developer to
researcher to software manager
8. Wide variation in depth and breadth of SWEBOK coverage inrequired and semi-required* courses
9. Many programs have required or semi-required courses thatcover material that is either not in the SWEBOK at all or is notemphasized in the SWEBOK
10. Some significant topics are rarely mentioned - agility,software engineering economics, systems engineering
11. Some topics are ubiquitous - formal methods and architecture
12. Object-oriented is the standard development paradigm -creating a clash with many systems engineering programsthat emphasize structured methods
16*A student has a 50% or greater probability of taking a semi-requiredcourse.
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
17/34
17
Diverse focuses
1. Development of defense systems
2. Acquisition of defense systems
3. Embedded real-time systems
4. Entrepreneurial technology companies
5. Quantitative software engineering
6. Software economics
7. Safety critical systems
8. Secure software engineering
9. Highly dependable software systems
No focusdominated
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
18/34
18
Entrance requirements
%
Programs
Most programs offerleveling courses forstudents lacking entrancerequirements
Many programs routinelywaive academic requirementsfor students with industrialexperience
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
19/34
19
Methodology to Assess SWEBOKcoverage in required and semi-required courses
0: No coverage of topic
1: Some coverage but nodedicated course
2: One dedicated course
3: Two or more dedicated courses
REQ Sw RequirementsDES Sw DesignCST Sw ConstructionTST Sw TestingMNT Sw MaintenanceCNF Sw Config. Mgmt.MGT SwE ManagementPRC SwE ProcessTLS SwE Tools and
MethodsQLY Sw Quality
Required: Student must take thecourse
Semi-Required: 50% or moreprobability that course will be
taken
sample
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
20/34
20
SWEBOK coverage inrequired and semi-required courses
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
21/34
21
Some novel required andsemi-required courses
1. Reverse Engineering (Drexel)
2. Software Evolution and Re-engineering (Rochester)
3. Software Documentation (PennState Great Valley)
4. Software Risk Assessment in DoD(NPS)
5. Refactoring (Mercer)
6. Structured Document Interchangeand Processing (DePaul)
7. Avoiding Software Project Failures(Carnegie Mellon West)
8. Mathematical Foundations ofSoftware Engineering (Monmouth)
9. Global Software Development(Carnegie Mellon)
10. Management of OutsourcedDevelopment (Carnegie Mellon West)
11. Professional, Ethical and LegalIssues for Software Engineers (Cal.
State Univ. Fullerton)
12. Managing Software Professionals(Carnegie Mellon West)
13. Lean & Agile Software Processes(Mercer)
14. Artificial Intelligence (Michigan -Dearborn)
15. Software Engineering Economics(GMU, USC)
16. Computer Game Design &Implementation (Michigan -
Dearborn)17. Service Oriented Architecture
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
22/34
22
The approach
GSwERC 0.25, publicity, endorsements1. Understand the current state of SWE graduate education
(November 2007)
2. Create GSwERC 0.25 with a small team, suitable forlimited review (February 2008)
3. Publicize effort through conferences, papers,website, etc. (continuous)
4. Obtain endorsement from ACM, IEEE, INCOSE, NDIA,and other professional organizations (continuous)
5. Create GSwERC 0.50 suitable for broad community reviewand early adoption (Summer 2008)
6. Create GSwERC 1.0 suitable for broad adoption (2009)
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
23/34
23
The approach GSwERC 0.50
1. Understand the current state of SWE graduate education(November 2007)
2. Create GSwERC 0.25 with a small team, suitable forlimited review (February 2008)
3. Publicize effort through conferences, papers, website, etc.(continuous)
4. Obtain endorsement from ACM, IEEE, INCOSE, NDIA, andother professional organizations (continuous)
5. Create GSwERC 0.50 suitable for broad communityreview and early adoption (October 2008)
6. Create GSwERC 1.0 suitable for broad adoption (2009)
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
24/34
24
Expectations at entry
1. The equivalent of an undergraduate degree incomputing or an undergraduate degree in anengineering or scientific field and a minor incomputing
2. The equivalent of an introductory course insoftware engineering
3. At least two years of practical experience insome aspect of software engineering orsoftware development.
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
25/34
25
Outcomes 1 to 4 at graduation
1. Mastered the Core Body of Knowledge
2. Mastered at least one application domain, such asfinance, medical, transportation, ortelecommunications, and one application type, such
as real-time, embedded, safety-critical, or highlydistributed systems. That mastery includesunderstanding how differences in domain and typemanifest themselves in both the software itself and intheir engineering, and includes understanding how to
learn a new application domain or type.3. Mastered at least one knowledge area or sub-area
from the CBOK to at least the Bloom Synthesis level.
4. Demonstrated how to make ethical professionaldecisions and practice ethical professional behavior.
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
26/34
26
Outcomes 5 to 7 at graduation
1. Understand the relationship between softwareengineering and systems engineering and beable to apply systems engineering principles andpractices in the engineering of software.
2. Be able to work effectively as part of a team,including teams that may be international andgeographically distributed, to develop qualitysoftware artifacts, and to lead in one area ofproject development, such as projectmanagement, requirements analysis,architecture, construction, or quality assurance.
3. Show ability to reconcile conflicting projectobjectives, finding acceptable compromises
within limitations of cost, time, knowledge,
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
27/34
27
Outcomes 8 to 10 at graduation
8. Understand and appreciate the importance offeasibility analysis, negotiation, effective workhabits, leadership, and good communicationwith stakeholders in a typical software
development environment.
9. Understand how to learn new models,techniques, and technologies as they emerge,
and appreciate the necessity of such continuingprofessional development.
10.Be able to analyze a current significant softwaretechnology, articulate its strengths and
weaknesses, and specify and promote
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
28/34
28
Curriculum architecture
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
29/34
29
Flexible course structure
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
30/34
30
Comparison of 4 masters programs
to GSwERC 0.25 (not 0.50)
Scale: 1 = does not implement at all, 5 = fully implements
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
31/34
31
Reminder where we are today
1. Understand the current state of SWE graduate education(November 30, 2007)
2. Create GSwERC 0.25 with a small team, suitable for limitedreview (February 2008)
3. Publicize effort through conferences, papers, website, etc.(continuous)
4. Obtain endorsement from ACM, IEEE, INCOSE, NDIA, andother professional organizations (continuous)
5. Create GSwERC 0.50 suitable for broad community reviewand early adoption (October 2008)
6. Create GSwERC 1.0 suitable for broad adoption (2009)
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
32/34
32
Integrating Stevens systems andsoftware engineering masters
programs
1. Stevens has a large systems engineering masters program
2. Stevens has a moderate size software engineering program
3. Historically, these two programs were in separate schools withvirtually no overlap or ties
4. In September 2007, software engineering program moved toSchool of Systems and Enterprises in same academic unit assystems engineering
5. Concluded in fall 2007 that some integration between programs
was needed and possible - customers asked for it6. In spring 2008, began effort to integrate introductory courses
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
33/34
33
First integrated course combines
introductory material
Fundamentals of
Systems Engineering
Introduction to Software
Engineering
Introduction to Systems and
Software Engineering
Software Requirements
Analysis and Engineering
8/9/2019 Presentation from September 9, 2008 Dinner Meeting
34/34
34
Next steps
Now combining systems architecture course andsoftware architecture course into one architecturecourse for both systems and software engineers
Will probably add advanced architecture coursesfor software and systems engineers to select
Now updating undergraduate survey of softwareengineering course to include systemsengineering as well
Piloting new courses this fall