Systems and Software Engineering Integration: Technical Aspects

advertisement
University of Southern California
Center for Systems and Software Engineering
Integrating Systems and Software
Engineering:
Technical Aspects Workshop
30 October 2007
University of Southern California
Center for Systems and Software Engineering
IS&SE Workshop Objectives: Identify
• Biggest issues and opportunities?
– Technical aspects
– Management aspects
– Complex systems aspects
• Inhibitors to progress and how to overcome them?
• Ability of six principles to improve IS&SE?
• Ability of Incremental Commitment Model to
improve IS&SE?
• What else is needed?
–
–
–
–
Technology/management research
Education and training
Regulations, specifications and standards
Other?
October 2007
©USC-CSSE
2
University of Southern California
Center for Systems and Software Engineering
Attendees
• Rick Selby, NGC/USC (Chair)
• Anthony Peterson, Raytheon
• Karen Owens, Aerospace
Corporation
• George Huling, LA Spin
• JinBo Chen, NGC
• Wilson Rosa, Air Force Cost
Analysis Agency
• Rich Turner, Stevens Institute
of Technology
• John Miller, MITRE
October 2007
• Elliot Axelband, USC/RAND
• Jared Fortune,
Aerospace/USC
• Shawn Rahmani, Boeing
• Daniel Winton, Aerospace
• Sue Koolmanojwong, USC
(Scribe)
• Winsor Brown, USC
©USC-CSSE
3
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects : Summary
• SE/SW integration
– Systems engineering is doing an commendable job in incorporating
software, hardware, and human factors as it has for years however
improvements are needed
– A lot of initiatives are pushed by software people, because they suffered
from the consequences of inadequate SE (integration)
– Significant benefits can be achieved (or are possible) by greater
integration and synergy between systems and software engineering in
many areas, such as communication, education, research, cross
training, integrated life cycle models
• Personnel/Education/Communication
– Too few “software engineers” have adequate engineering background,
domain expertise, or physics understanding / exposure
– At the engineering executive and chief engineering level, few come from
software engineering background
• Research, initiatives, guidance, policy
– Prototype technical policy
– Need major DoD initiative to fund research centers for SE/SW
October 2007
©USC-CSSE
4
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects: Issues
• Earned value is a rear-view mirror metric; does not adapt to added work
over time, not reflect the rework
• Commitment and accountability: how to make sure/ verify the
commitment and accountability (more than powerpoint)
• For project implementation, it is difficult to predict schedule;
requirement volatility drives schedule unpredictability
• Lack of standardization within DoD for technical standards such as
software requirement specifications, capability design documents
• Include mechanism for monitoring cost and technical performance
throughout the life cycle of the systems
• One-sided systems and software engineering marriage attempt
– Integration attempt pushed by software engineering and not adequately
pulled by system engineering (e.g. CMM and CMMI, system and software
consortium – SSCI, UML and SysML, software technology conference and
systems and software technology conference, center for software
engineering and center for systems and software engineering)
– Need system engineering pushed/pulled integration initiatives for an
acceptable marriage
October 2007
©USC-CSSE
5
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects :
Biggest Opportunities(1)
• Define integrated measures for systems and software
engineering
• Define a common core set of metrics (common across
acquisition organization and prime contractor) for software
development that visible at system level (build on ASN RDA
initiative)
– Need Software-specific items within the system WBS to a level
to support the metrics
– Include software-specific criteria into checklist and entry/exit
criteria at system engineering technical review (SETR)
• Augment technology readiness assessment (TRA) deskbook
with a second set of software technology readiness levels
(TRL)
• Leverage the attention and focus provided by OSD-AT&L on
integration of systems and software engineering desire to
October
2007
provide
center of excellence ©USC-CSSE
6
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects :
Biggest Opportunities(2)
• Use true technical reviews to communicate between
different disciplines, requiring the small set of the right
people to be there, small set of people
• Ask systems engineers to develop test procedures (test
group does not have the capacity to develop test
procedure)
• Model-based engineering
• Prototype policy using a true IRT
• For systems engineering requirements and architecting
processes, define and implement a quantitative set of
quality attributes and checklist for coverage of software
engineering
October 2007
©USC-CSSE
7
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects :
Biggest Opportunities(3)
• Develop tools for automated measurement of systems sizing
metrics
• Use requirement document to construct end-to-end threads
to cover every requirement such as not just users but
sensors, in-bound radar data (JPL experience)
• Have systems engineers write test requirements, such as
“What do we have to show to sell off this requirement”
• Combine earned value systems with agile development
approach
• Systems engineering to co-own software engineering risks
• Explore automated generating code because we are unable
to keep up with the systems/software size growth trend
– Needs domain specific languages and domain specific models
– Need to validate the results of the translation; compilers are not
perfect
October 2007
©USC-CSSE
8
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects: Inhibitors to progress
and how to overcome them (1)
Inhibitor
How to Overcome Inhibitor
“Never changing” earned value is required (reflects
spent costs)
An agile rebaselining process
Lack of communication between system
engineering and other types of engineering and
software engineering due to lack of overlapping of
educational background
Define and deliver 90-day “crash courses” on
software to non-software engineer and on
physics/math/etc. to software people; small group
of key people
Culture: company
1.
2.
Verifiable demonstrated prototype evaluated by
a true IRT
Properly selected and trained program
manager who appreciate software, hardware
and people; must be managed from the system
perspective
Culture: government; a history of predicating policy
on unvalidated pilot, e.g., acquisition reform, CMM,
CMMI, and DoD BMP (business management plan) ;
Prototype policy using a IRT
Culture: congress; Not interested in open, e.g., cost
plus or incremental contract (want fixed price)
Demonstrated success and a selling campaign to
explain same
Culture: engineers
Define new lexicon of terminology; same words
mean different things to SE and SW
Communication; lack of prioritization, priorities
commonly
poorly
October
2007 communicated
©USC-CSSE
9
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects: Inhibitors to
progress and how to overcome them (2)
Inhibitor
How to Overcome Inhibitor
Large differences in technical background,
scope, focus, and priority
Do the old fashioned way mentoring
TRA Deskbook software TRLs deal with
domains and algorithms but do not address
the development of software with respect to
systems
Develop system applicable
TRL and TRA for software (and an
assessment process)
Separate, overly complex, poorly
synchronized software engineering and
systems engineering life cycles
Replace traditional system life cycle, e.g.,
1521 with an integrated systems and
software life cycle
Failure by OSD to include software-specific
guidance in their system engineering plan
(SEP) guidance
Traditional waterfall acquisition model is not
as flexible as would be optimal for
opportunities such as ICM
October 2007
Prototyping different acquisition process
©USC-CSSE
10
University of Southern California
Center for Systems and Software Engineering
Process Model Principles (0)
1.
2.
3.
Commitment and accountability
Success-critical stakeholder satisficing
Incremental growth of system definition and
stakeholder commitment
4, 5. Concurrent, iterative system definition and
development cycles
Cycles can be viewed as sequential concurrentlyperformed phases or spiral growth of system
definition
6.
October 2007
Risk-based activity levels and anchor point
commitment milestones
©USC-CSSE
11
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects :
Ability of six principles to improve IS&SE?
•
•
•
•
•
•
Step 1 through 5 are what we do now
Step 1 through 5 are things that we do now, but I question the level of rigor,
such as original Fagan Inspections required a high level of rigor
Risk-focused anchor point decisions are a great value-added concept of
ICM. Unfortunately, most programs perform risk identification and
management activities poorly
Software has multiple, overlapping risk reduction possibilities but systems
engineering risk mitigation plans have sometimes lacked integration; they
do not reflect the overlap
Risk-focused anchor point decisions duplicate what is already present and
practice in current DoD risk management policies. What is lacking is a
rigorous adherence to establish entry and exit criteria
General concern that the six principles are already in place but lack rigor
–
•
ICM could introduce/bring about/reinforce a greater degree of rigor and formalism
The rational that lead to the six principles is based on 19 years of misuse of
using spiral model, as arrive by expert group responding to explaining the
intended use of the spiral to the general accounting office (GAO)
October 2007
©USC-CSSE
12
University of Southern California
Center for Systems and Software Engineering
Process Model Principles (1)
1.
Commitment and accountability
•
•
2.
3.
4, 5.
Should be supported, not prohibited, by RFP
Should accommodate changes driven by risks
Success-critical stakeholder satisficing
Incremental growth of system definition and stakeholder commitment
Concurrent, iterative system definition and development cycles
Cycles can be viewed as sequential concurrently-performed phases or spiral
growth of system definition
6.
October 2007
Risk-based activity levels and anchor point commitment milestones
©USC-CSSE
13
University of Southern California
Center for Systems and Software Engineering
Process Model Principles (2)
1.
Commitment and accountability
2.
Success-critical stakeholder satisficing
•
•
•
•
•
•
•
3.
4, 5.
Require access to success critical stakeholder and frequently they
are in short supply
Potential concern that emergent behavior by success critical
stakeholder or non success critical stakeholder can be lost. Final
system may not do what really needs to be done.
Satisficing is a condition that may not be achievable; therefore
• Kill the program early
• Create conditions where satisficing is achievable
• Push forward regardless e.g. eliminate success critical
stakeholder or criteria or knowingly proceed on the path to
partial success
Concept of satisficing requires Openness and honesty regarding
win conditions
Success critical stakeholder are milestone dependent
Need to build in flexibility accommodate/ anticipate the changing
mind of success critical stakeholders
Keep stakeholders involved and continue to identify new ones
Incremental growth of system definition and stakeholder commitment
Concurrent, iterative system definition and development cycles
Cycles can be viewed as sequential concurrently-performed
phases or spiral growth of system definition
October 2007
©USC-CSSE
6.
Risk-based activity levels and anchor point commitment milestones
14
University of Southern California
Center for Systems and Software Engineering
Process Model Principles(3)
1.
2.
Commitment and accountability
Success-critical stakeholder satisficing
3.
Incremental growth of system definition and stakeholder
commitment
•
•
4, 5.
Improve method for quantifying the system/software size at
the concept exploration phase
Define representations to capture integrated systems /
software artifacts such as specifications/architectures
/implementations
• Imagine a future where there are executable artifacts
delivered early in the lifecycle (other than code )such as
executable specifications and executable architectures
• Executable specification captures nominal behavioral
properties but not necessarily / off-nominal or realistic
efficiency/fault-tolerance needs
Concurrent, iterative system definition and development cycles
Cycles can be viewed as sequential concurrently-performed phases or spiral
growth of system definition
6.
October 2007
Risk-based activity levels and anchor point commitment milestones
©USC-CSSE
15
University of Southern California
Center for Systems and Software Engineering
Process Model Principles(4&5)
1.
2.
3.
Commitment and accountability
Success-critical stakeholder satisficing
Incremental growth of system definition and stakeholder commitment
4, 5. Concurrent, iterative system definition and
development cycles
Cycles can be viewed as sequential concurrentlyperformed phases or spiral growth of system
definition
– Impossible to do concurrent, iterative
definition/development unless you have got
stakeholders involved concurrently and iteratively
– Requires agile program management method
6.
October 2007
Risk-based activity levels and anchor point commitment milestones
©USC-CSSE
16
University of Southern California
Center for Systems and Software Engineering
Process Model Principles(6)
1.
2.
3.
4, 5.
Commitment and accountability
Success-critical stakeholder satisficing
Incremental growth of system definition and stakeholder commitment
Concurrent, iterative system definition and development cycles
Cycles can be viewed as sequential concurrently-performed phases or spiral growth of
system definition
6.
Risk-based activity levels and anchor point
commitment milestones
•
•
•
•
•
October 2007
Need to have greater emphasis on feasibility rationale
Tom Schroeder’s presentation on difficulty of finding
independent experts
Milestone definition and feasibility rationale are
independent;
Feasibility rationale could be used to measure
progress
Define additional metaphors (engage, marriage, kids,
and gambling) ©USC-CSSE
17
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects:
Ability of ICM to improve IS&SE? (1)
•
•
The rubber will hit the road when you need to define the specific
deliverables capabilities in the first increment, how long it takes to get
there?
Many people may feel that there is nothing new here and “we are already
doing this”
–
–
–
•
•
•
•
They often overlook on minimizing the risk-driven aspects
Seldom have explicit evidence of feasibility
Main point of ICM is that feasibility rationale became a first class citizen
Define a detailed plan for prototyping/piloting, evaluating, and deploying
(initial, medium, large scale) ICM including success criteria and a business
case analysis
general concern of premature focus on ICM as a point solution as opposed
to the other way to implement the six principles
Is ICM actually being proposed as a point solution or is this just a way to try
something new on a small scale (need strategic positioning on ICM)
To make ICM work, it requires the funding agency and the LSI / prime
contractor to do much more than they are currently doing such as con ops
development, testbed development, frequent evaluation of program status
and making adjustments, gathering information to evaluate
subcontractors/suppliers, and team building
–
LSI/prime contractor must engage the developer earlier in the process, so they do
not end up with a poor con ops or design
October 2007
©USC-CSSE
18
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects:
Ability of ICM to improve IS&SE? (2)
•
•
•
Could/should feasibility rationale be developed in the same way that the
safety and assurance cases ?
Can the guidance for those support the feasibility rationale development?
Could the FR be seen as uber-case that organizes and gathers the
information from both systems and software specific attribute cases as well
as the business and stakeholder satisfaction cases?
October 2007
©USC-CSSE
19
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects:
What else is needed? (1)
• Technology/management research
– Create a catalog of successful integrated systems and software
architectural patterns, will help get systems engineering to think
about what they need to do with software
– Model-driven approach for integrated systems and software
engineering
– Simulation-based acquisition approaches, e.g., processes,
methods, tools for integrated systems and software engineering
– Launch a major DoD funded initiative for creating joint
university-industry-government of research centers to address
integrated systems and software engineering to catalyze
research breakthroughs
– Apply, and further research where necessary social science to
overcome cultural barrier and facilitate team interaction, e.g.,
common training, symbolic language
October 2007
©USC-CSSE
20
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects:
What else is needed? (2)
• Education and training
– Need hands-on manager as a part of the education / training
process, e.g., six sigma training “too abstract and not applicable
to the work” to fine tune the process
– Need for personnel that have expertise in multiple domain such
as software engineer that also know
aerospace/autos/automobile/telecom
– The regular engineer need exposure to software engineering
– At what level is the expertise needed (MS level? )
• Awareness would be an improvement
October 2007
©USC-CSSE
21
University of Southern California
Center for Systems and Software Engineering
IS&SE for Technical Aspects:
What else is needed? (3)
• Regulations, specifications and standards
– Real consequences for a non-compliance with policy or
incentive structures (carrot vs 2x4)
– Relieve those who are forced to follow policy that leads to
failure from the consequences of the failure (JPL failure for 2
MARS missions that were failure as a consequence of faster
better cheaper policy)
– “None before their time”, e.g., before understood and their value
demonstrated
• Other?
– Prototype technical policy
– Senate staffers at the sub committee level reduced the FCS
program proposed fiscal year 08 budget by $ 635 M primarily
from system engineering and management accounts. WA HA
– Need root cause analysis and action plan to prevent for future
October 2007
©USC-CSSE
case
22
Download