Software Engineering Education Program

Download Report

Transcript Software Engineering Education Program

Using SWEBOK for
Education Programs in
Industry and Academia
Dennis J. Frailey
Southern Methodist University and Raytheon Company
James Mason
Securities Industry Automation Corporation
2/26/2002
1
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Copyright Statement
© Copyright 2002 by Dennis J. Frailey and James
Mason. All rights reserved. Abstracting is
permitted with credit to the source. Libraries and
individuals are permitted to photocopy for
private use. For permission to copy, reprint, or
republish write to Dennis J. Frailey or James
Mason.
2/26/2002
2
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Agenda
• Why a Model is Needed
• How SWEBOK was used at SIAC,
SMU and NTU
• Programs that Resulted
• Outlook
• Q&A
2/26/2002
3
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Industry’s Persistent Challenges
•
•
•
•
•
•
Projects of increasing complexity
Rapidly changing requirements
Pressures for faster time to market
Need to re-design major systems
Integration of new processes and techniques
Talent shortage: needed software
engineering skills often in short supply
2/26/2002
4
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Industrial Companies are Good at
• Focusing on “right now” issues
–
–
–
–
Responding to market pressures
Responding to competitive threats
Developing “bottom-line” solutions
Applying technology to immediate problems
• …Expedience
2/26/2002
5
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Undesirable Facts of Life
•
•
•
•
Organizations “go with what has worked in the past”
“Out of date” practices become institutionalized
Few people know, or can integrate, best practices
Everyone is too busy getting product out the door to
spend time in education or training or addressing
these problems effectively
2/26/2002
6
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Security Industry Automation
Corporation
• Build/Operate NYSE/AMEX trading systems
• High volume, transaction processing systems
that demand the highest levels of reliability.
• Financial markets depend on these systems
• SIAC must provide reliability assurances
• Innovation and cleverness are not sufficient
2/26/2002
8
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SIAC Education Program
• Tuition assistance for college courses and degrees
• Leadership and management development
• “Technical” training
BUT
• Process & Engineering “under-appreciated”
• Few good local software engineering programs
• Hard to find the time to actually take training
2/26/2002
9
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Universities are Good at ...
• Keeping up with the latest developments
• Organizing knowledge into a structure that
facilitates understanding and learning
• Advancing knowledge
• Taking the time to solve problems that
industry is too busy to address
2/26/2002
10
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Persistent Challenges for
Universities
• Maintain comprehensiveness and structural
integrity of academic programs in rapidly
changing fields
• Maintaining a connection to real, industrial
problems
• Getting too focused in narrow domains due to
opportunistic funding opportunities
• Shortage of faculty talent: software “engineering”
skills in particularly short supply
2/26/2002
11
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SMU MS Program in Software
Engineering
• Started in 1993, based on
– SEI masters level model curriculum
– SEI CMM
– Local industry needs -- and pressure for something
beyond computer science
• Comprehensive program with a dozen
software engineering courses
• Most faculty have industrial experience
• Strong distance education options
2/26/2002
12
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Challenges for the SMU Program
• Keeping up to date with rapid
improvements in the field
• Keeping ties with industrial needs
– Adjunct faculty and outreach programs
– Distance education
– Learn from students
• Supporting innovative delivery formats
(distance education, etc.)
2/26/2002
13
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
NTU Program
• National Technological University
broadcasts course from about 3 dozen
universities over satellite to hundreds of
industrial companies
• Software engineering program started about
1995, based on SEI model curriculum
• Same challenges as SMU, plus
– keep up with distance education technologies
– form a cogent program out of many universities
2/26/2002
14
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
How SWEBOK Was Used
2/26/2002
15
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
The Need for a Model
• Industry needs a model of software engineering to
relate knowledge with business needs and career
growth options
• Academia needs a model of software engineering
to help avoid gaps in program coverage and help
assure structural integrity to academic programs
• The model must develop, adapt and grow with the
field
2/26/2002
16
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Software Engineering Body of
Knowledge
• A structured framework for development
SWEBOK
Software
Requirements
Requirements
Engineering
Process
Requirements
Elicitation
Requirements
Analysis
Requirements
Specification
Requirements
Validation
Requirements
Management
Software
Design
Software
Construction
Software Design
Basic Concepts
Key Issues in
Software Design
Software Structure
and Architecture
Software Design
Quality analysis
and Evaluation
Software Design
Notations
Software Design
Strategies and
Methods
Reducation in
Complexity
Linguistic Methods
Formal Methods
Visual Methods
Anticipation of
Diversity
Software
Test
Software
Maintenance
Basic Concepts
and
Definitions
Test Levels
Test Techniques
Test-related Measures
Managing the Test
Process
Linguistic Methods
Formal Methods
Visual Methods
Structuring for validation
Linguistic Methods
Formal Methods
Visual Methods
Use of External
Standards
Basic
Concepts
Maintenance
Process
Key issues
In
Software
Maintenance
Techniques
for
Maintenance
Software
Configuration
Management
Management of the
SCM Process
Software
Configuration
Identfication
Software
Configuration
Control
Software
Configuration
Status Accounting
Software
Configuration
Auditing
Software Release
Management
and
Delivery
Software
Engineering
Management
Orgaqnizational
Management
Process/Project
Management
Software
Engineering
Measurement
Software
Engineering
Process
Software
Engineering
Tools & Methods
Engineering Process
Concepts
Process Infrastructure
Process Measurement
Process Definition
Qualitative Process
Analysis
Process
Implementation
and Change
Linguistic Methods
Formal Methods
Visual Methods
(IEEE/ACM Stone-man Version 0.9 February 2001)…
WWW.SWEBOK.ORG
2/26/2002
Software Quality
Software
Tools
Quality
Concepts
Definition
& Planning
for Quality
Techniques
Requiring
2 or more
People
Support to
other
Techniques
Testing Special
To
SQA or V&V
Defect Finding
Techniques
Measurement in
Software Quality
Analysis
Requirements
Tools
Design tools
Construction tools
Testing tools
Maintenance tools
Engineering Process
Tools
Quality tools
Congifuration
Management
Tools
Engineering
Management
Tools
Infrastructure
Support
Tools
Miscellaneous tool
Issues
Software
Methods
Heuristic Methods
Formal Methods
Prototyping Methods
Miscellaneous method
Issues
17
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Using SWEBOK to Align SIAC
Needs with the Body of
Knowledge
SOFTWARE
REQUIREMENTS
ENGINEERING
EMPLOYEE 1
EMPLOYEE 2
EMPLOYEE 3
EMPLOYEE 4
SPECIALTIES ALIGNED WITH SWEBOK KNOWLEDGE AREAS
SOFTWARE
SOFTWARE
SOFTWARE
DESIGN
CONSTRUCTION
TEST
ENGINEERING
ENGINEERING
SOFTWARE
ENGINEERING
MANAGEMENT
X
X
X
X
X
X
X
• Opportunity to plan expeditiously
• Intuitive acceptance of the structure
• Individual and organization planning were supported
• Education and SPI initiatives were in alignment
2/26/2002
18
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Things that were Learned - SIAC
• Organizations seek to act expeditiously
• Even very busy organizations will embrace
opportunities where they perceive an alignment
with their needs, and a timely return on their
investment
• The SWEBOK supported a straightforward
characterization of what & where education was
needed, allowing:
– Expeditious choices to be made
– Quicker returns expected
2/26/2002
19
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Using SWEBOK to Examine the
SMU Software Engineering Program
SOFTWARE
REQUIREMENTS
ENGINEERING
COURSE #1
COURSE #2
COURSE #3
…
COURSE #N
X
X
…
SPECIALTIES ALIGNED WITH SWEBOK KNOWLEDGE AREAS
SOFTWARE
SOFTWARE
…
DESIGN
CONSTRUCTION
ENGINEERING
X
X
X
…
X
…
SOFTWARE
ENGINEERING
MANAGEMENT
…
X
…
…
…
X
• The courses and detailed topics were mapped to the
detailed structure of the SWEBOK
• The structure was pretty natural and the mapping was
straightforward
2/26/2002
20
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Things that were Learned - SMU
• “Holes” and overlaps in course coverage
– For example, a course on software tools was
clearly needed
• Need to update course content in selected
areas
• A clear way to provide an overall
framework from which to describe the
program to potential students
2/26/2002
21
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Using SWEBOK to Examine the
NTU Software Engineering Program
• The problem here was that courses come from many
universities, and there needs to be a model by which
to correlate their content and determine equivalencies,
overlaps, etc.
SOFTWARE
REQUIREMENTS
ENGINEERING
COURSE #1
COURSE #2
COURSE #3
…
COURSE #N
X
X
…
SPECIALTIES ALIGNED WITH SWEBOK KNOWLEDGE AREAS
SOFTWARE
SOFTWARE
…
DESIGN
CONSTRUCTION
ENGINEERING
X
X
X
…
X
…
SOFTWARE
ENGINEERING
MANAGEMENT
…
X
…
…
…
X
2/26/2002
22
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Things that were Learned - NTU
• The SWEBOK categories made an excellent
system for categorizing courses
– And will be used for course numbering in the
future
• Holes and overlaps in course coverage were
considerably more apparent
• The SWEBOK provides a “neutral” basis
for discussion when universities disagree
about what should be covered
2/26/2002
23
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Things that were Learned about
SWEBOK
• Seems overly dependent on standards
– Those outside the standards community do not see it
the same way as those inside
– Little guidance about relevance or applicability of
standards to specific kinds of software (example: IEEE
Standard 829 for software test documentation)
– Some standards obscure the actual content (example:
top layers of management topic are based on 12207
categories rather than things people recognize as key
topics in software management)
2/26/2002
24
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Things that were Learned about
SWEBOK (continued)
• Structure reminds people of “waterfall”
– Some feel it doesn’t fit newer lifecycle models
• Unequal size of knowledge areas
– Design is clearly much richer than configuration
management, for example
• Lingering concerns due to opposition from several
communities
– Mostly due to political issues and the relative
immaturity of the field
2/26/2002
25
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Programs that Resulted
2/26/2002
26
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SIAC Desired Course Structure
• Executive style on-site classes, supplemented by distance
education
Core Curricula
Plus
Concentration in a
"Specialty"
Software
Requirements
Engineering
Software
Design
Engineering
Program
Core Curricula
Software
Construction
Engineering
Software
Test
Engineering
Software
Engineering
Management
Description
3-graduate courses in the "foundation knowledge"
Software Requirements Engineering
Software Design Engineering
Software Construction Engineering
2-graduate courses supporting the area
of concentration -- per "specialty"
Software Test Engineering
2/26/2002
27
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Flexible Participation Levels
Certificate Programs
Masters Degree
in
Software Engineering
“A La Carte”
2/26/2002
28
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SMU Certificate Programs
Masters Degree
(complete the SMU MS - 10 courses total)
Software
Requirements
Certificate
Software
Design
Certificate
…
Software
Management
Certificate
(2 Courses)
(2 Courses)
(2 Courses)
(2 Courses)
Software Engineering Core (Certificate)
(3 courses)
Bridging Curriculum (depends on student)
2/26/2002
29
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Bridging Curriculum
• Fundamentals of Computer Science -- Selected
Topics from:
–
–
–
–
–
–
Computer Programming
Computer Organization
Data Structures
Discrete Math or Discrete Structures
Systems Programming
Programming Languages
2/26/2002
30
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Core Curriculum
• Software Requirements and Design
Engineering
• Software Testing and Quality Assurance
• Software Project Management
2/26/2002
31
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
High Interest at SIAC
•
•
•
•
Management has committed resources
100 employees completed a 2 day overview
25 in the bridging program
Over 100 in certificate program since January,
2002
2/26/2002
32
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
New NTU Program Structure
• Each major course category (one digit in
course number) will be associated with one
or two KAs from SWEBOK
• Course content will be mapped to
SWEBOK at a more detailed level, to
determine equivalencies and overlaps
2/26/2002
33
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Outlook
2/26/2002
34
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SIAC and Other Companies
• Interest continues
• Making very positive and tangible
improvements that cause management to
continue support despite financial
constraints
2/26/2002
35
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
SMU and NTU
• Further refinements and program structuring
are anticipated
• The structure is helping both universities
“sell” their programs to new customers
2/26/2002
36
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Need for Update and Revision of
SWEBOK
• All of these uses of SWEBOK are
predicated on the assumption that it will
keep up with the times
• We also need a clear mechanism for
providing feedback to SWEBOK authors
2/26/2002
37
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
The State of
Software Engineering
2/26/2002
38
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002
Q&A
2/26/2002
39
Using SWEBOK ...Copyright © James Mason and Dennis J. Frailey, 2002