CS 577a - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

CS 577a

Description:

7 surprise-free trends; 2 wild-card trends ... Platinum Rule: Do unto others as they would be done unto ... assessment of wild-card technologies. Autonomy, bio ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 46
Provided by: liguo1
Category:
Tags: 577a | card | platinum

less

Transcript and Presenter's Notes

Title: CS 577a


1
The Future of Software Processes
CS 577a October 27, 2006 Barry Boehm
2
Outline
  • The Future of Information Technology
  • 7 surprise-free trends 2 wild-card trends
  • Individual and combined software process
    implications
  • Conclusions General SW process implications
  • Management, staffing/education, research
  • Backup Charts

3
The Future of Information Technology
  • Seven surprise-free trends
  • User/Value focus
  • Software Criticality and Dependability
  • Rapid, Accelerating Change
  • Distribution, Mobility, Interoperability,
    Globalization
  • Complex Systems of Systems
  • COTS, Open Source, Reuse, Legacy Integration
  • Computational Plenty
  • Two wild-card trends
  • Autonomy Software
  • Combinations of Biology and Computing
  • Implications for software processes
  • Jointly and severally

4
User/Value Focus Trends
  • Computerworld panel More focus on user/ownership
    costs and benefits less focus on features and
    license costs
  • Technology should adapt to people, not vice versa
  • Tension between usability and feature creep
  • User-orientation has many challenges
  • Emergent needs and priorities IKIWISI, Maslow
  • Diversity of people and cultures no OSFA
    solutions
  • Group vs. individual performance
  • Engineer focus on engineer-usability
  • Golden Rule Do unto others as you would have
    others do unto you
  • Platinum Rule Do unto others as they would be
    done unto
  • IKIWISI Ill know it when I see it OSFA
    one size fits all

5
Process Implications User/Value Focus
  • Incremental learning vs. reductionist processes
  • Usability emphasis in staffing, reviews,
    education
  • Participatory design group-oriented
  • Stakeholder value-based software engineering
    (VBSE)
  • Careful approach to cross-cultural enterprises

6
Diversity of Cultures
  • Hall monochromatic (closure) vs. polychromatic
    (concurrency)
  • Hofstede individual/group power distance
    masculine/feminine uncertainty avoidance
    long/short-term orientation
  • Example Software Capability Maturity Model
  • Widely adopted in U.S. culture
  • Monochromatic, individual, masculine, short-term
  • 17 adoptions out of 380 in Thailand
  • Polychromatic, group, feminine, long-term

7
Criticality and Dependability Trends
  • Software increasingly success-critical to product
    and services
  • Provides competitive differentiation,
    adaptability to change
  • Dependability is generally not vendors
    top-priority
  • The IT industry spends the bulk of its
    resources on rapidly bringing products to
    market. US PITAC Report
  • By 2025, there will be a 9/11 magnitude
    software failure
  • Major loss of life or collapse of world financial
    system
  • This will raise dependability to vendors top
    priority
  • Market demand stronger warranties and
    accountability
  • Value-based dependability processes and tools
  • Avoid bureaucratic solutions
  • Reflect all stakeholders value dependencies

8
Rapid Change Trends
  • Global connectivity and competition accelerate
    change
  • More ripple effects of technology, marketplace
    changes
  • Increased need for agility, continuous learning
  • Need to balance agility and plan-driven
    dependability
  • Decline of THWADI (Thats how weve always done
    it)
  • Avoid technical agility, administrative THWADI
  • Hybrid agile/plan-driven processes needed for
    larger systems
  • Need for incremental processes, methods, tools,
    skills
  • Need for pro-active technology, marketplace
    monitoring
  • Example Internet spiral
  • Education Need to learn how to learn

9
The Internet Spiral ProcessRef USAF-SAB
Information Architectures Study, 1994
ApprovedInternetStandard
FullImplementation
Working GroupEvolution
Approved Draft Standard
WidespreadImplementationand Test
Working GroupEvolution
ApprovedProposedStandard
MultipleImplementationand Test
Working GroupEvolution
Equipment
UnapprovedProposedStandard
IESGApproval
IESGApproval
IESGApproval
UnapprovedDraftStandard
UnapprovedInternetStandard
IETF Review
Working GroupReview
IETF Review
Working GroupReview
IETF Review
Working GroupReview
IESG Internet Engineering Steering Group IETF
Internet Engineering Task Force
10
Agile and Plan-Driven Home Grounds Five
Critical Decision Factors
  • Size, Criticality, Dynamism, Personnel, Culture

Personnel
Personnel
( Level 1B)
( Level 23)
( Level 1B)
( Level 23)
15
40
15
40
20
30
20
30
25
20
25
20
Criticality
Criticality
Dynamism
Dynamism
(Loss due to impact of defects)
(Loss due to impact of defects)
30
10
30
10
( Requirements
-
change/month)
( Requirements
-
change/month)
35
0
35
0
Many
Many
0.3
1.0
Single
Lives
Single
Lives
Essential
Essential
3.0
Life
Life
Discretionary
Discretionary
Funds
Funds
10
Comfort
Comfort
Funds
Funds
30
3
3
Agile
Agile
90
90
10
10
70
70
Plan
Plan
30
30
-
-
driven
driven
50
50
100
100
30
30
300
300
Size
Size
10
10
( of personnel)
( of personnel)
Culture
Culture
( thriving on chaos vs. order)
( thriving on chaos vs. order)
11
Large-Company Agile Assimilation Issues
  • Scalability of agile methods
  • Tacit knowledge (propagation personnel turnover
    5,000 requirements)
  • Multi-team coordination
  • Avoiding agile stovepipes
  • Limitations on freedom of choice
  • COTS, interfaces, GUIs, legacy systems
  • Traditional business practices
  • Contracting earned value systems timekeeping
    waterfall/V-model standard, HR practices
  • Inflexible maturity model interpretations
  • Customer collocation, access
  • Architecture suboptimization on early increments
  • Example key performance parameters
  • Predictable vs. unpredictable change

12
The Future of Information Technology
  • Seven surprise-free trends
  • User/Value focus
  • Software Criticality and Dependability
  • Rapid, Accelerating Change
  • Distribution, Mobility, Interoperability,
    Globalization
  • Complex Systems of Systems
  • COTS, Open Source, Reuse, Legacy Integration
  • Computational Plenty
  • Two wild-card trends
  • Autonomy Software
  • Combinations of Biology and Computing
  • Implications for software processes
  • Jointly and severally

13
Distribution/Globalization Trends
  • Global connectivity drives market opportunities
  • Network economics, economies of scale
  • Need for multi-cultural products, virtual
    collaboration
  • Standards-based infrastructure a necessity
  • Gradual growth up the protocol stack
  • Open-source development largely in infrastructure
    sector
  • Challenges feature prioritization, security
    assurance

14
Integrated Enterprise Architectures
Federal Enterprise Architectural Framework (FEAF)
DOD Architectural Framework (DODAF)
Zachman Framework
15
The Need for Software-intensive Systems of
Systems (SISOS)
  • Lack of integration among stovepiped systems
    causes
  • Unacceptable delays in service
  • Uncoordinated and conflicting plans
  • Ineffective or dangerous decisions
  • Inability to cope with fast-moving events
  • Increasing SISOS benefits
  • See first understand first act first
  • Network-centric operations coordination
  • Transformation of business/mission potential
  • Interoperability via Integrated Enterprise
    Architectures

16
What does an SISOS look like?Air Traffic Control
17
Systems of Systems Processes
  • More like adaptive command and control than
    purchasing
  • Stabilized plan-driven increments
  • Concurrent agile change management of next
    increment
  • Value-based reprioritization
  • Requires new outsourcing practices and skills
  • Change impact analysis, content renegotiation,
    COTS refresh
  • New contracting processes and incentives

18
Outsourcing Command and Control OODA Loops
Observe, Orient, Decide, Act
  • Orient with respect to stakeholders priorities,
    feasibility, risks
  • Risk/Opportunity analysis
  • Business case/mission analysis
  • Prototypes, models, simulations
  • Observe new/updated objectives, constraints,
    alternatives
  • Usage monitoring
  • Competition, technology, marketplace ISR

Operate as current system Accept new system
  • Decide on next-cycle capabilities, architecture
    upgrades, plans
  • Stable specifications, COTS upgrades
  • Development, integration, VV, risk management
    plans
  • Feasibility rationale
  • Act on plans, specifications
  • Keep development stabilized
  • Change impact analysis, preparation for next
    cycle (mini-OODA loop)


Life Cycle Architecture Milestone for Cycle
19
COTS The Future Is Here
  • Escalate COTS priorities for research, staffing,
    education
  • Its not all about programming anymore
  • New processes required


20
COTS-Based Applications Process
21
Persistence of Legacy Systems
  • Before establishing new-system increments
  • Determine how to undo legacy system

1939s Science Fiction World of 2000
Actual World of 2000
22
Computational Plenty Process Implications
  • New platforms smart dust, human prosthetics
    (physical, mental)
  • New applications sensor networks, nanotechnology
  • Enable powerful self-monitoring software
  • Assertion checking, trend analysis, intrusion
    detection, proof-carrying code, perpetual testing
  • Enable higher levels of abstraction
  • Pattern programming, programming by example with
    dialogue
  • Simpler brute-force solutions exhaustive case
    analysis
  • Enable more powerful software tools
  • Based on domain, programming, management
    knowledge
  • Show-and-tell documentation
  • Game-oriented software engineering education

23
Wild Cards Autonomy and Bio-Computing
  • Great potential for good
  • Robot labor human shortfall compensation
  • 5 Senses, healing, life span, self-actualization
  • Adaptive control of the environment
  • Redesigning the world for higher quality of life
  • Physically, biologically, informationally
  • Great potential for harm
  • Loss of human primacy computers propose, humans
    decide
  • Overempowerment of humans
  • Accidents, terrorism, 1984 revisited
  • New failure modes adaptive control instability,
    self-modifying software, commonsense reasoning,
    bio-computer mismatches
  • VV difficulties cooperating autonomous agents,
    biocomputing
  • Forms and timing of new capabilities still unclear

24
Outline
  • The Future of Information Technology
  • 7 surprise-free trends 2 wild-card trends
  • Individual and combined software process
    implications
  • Conclusions General SW process implications
  • Management, staffing/education, research
  • Backup Charts

25
Software Process Management Implications
  • Increasing uncertainty requires risk/value-based
    processes
  • Concurrent engineering of system goals,
    solutions, plans
  • Integration of systems engineering and software
    engineering
  • Thoroughly validated for consistency and
    feasibility
  • Via prototypes, benchmarks, models, role-playing
  • Addressing both quantitative and qualitative
    value factors
  • Validation progress becomes a key management
    metric
  • Validation shortfalls become risks to be managed
  • Criticality and rapid change require balance of
    agile, plan-driven processes
  • Plan-driven for foreseeable change, high
    criticality
  • Parnas encapsulation of sources of change
  • Agile for unforeseeable change
  • Continuous learning and adaptation
  • Especially in wild-card areas

26
Software Staffing and Education Implications
  • Programming skills less important outside of
    infrastructure sectors
  • More important skills include
  • Mix of computer science and applications domain
    skills
  • Mix of high-assurance and adaptive skills
  • For system development, people/process management
  • Evolving COTS and legacy-system integration
    skills
  • Integrated software and system engineering skills
  • Including SW/system engineering economics,
    ergonomics
  • Plus outsourcing skills for systems of systems
  • Mix of actual and simulated experience attractive
  • Most important Learning skills

27
Software Process Research Implications I
  • Empirically-evolved process technology
  • Languages, methods, metrics, models, and tools
  • Incremental and ambiguity-tolerant
  • Accommodating incomplete, informal, and partial
    specification
  • Bridging formality, life-cycle, and culture gaps
  • Empirical testbed-based maturity/transition
    acceleration
  • Virtual process collaboration support
  • Distributed, multi-stakeholder, multi-cultural
  • Game technology for process education and
    training
  • Acquire and develop the way you train
  • Train the way you acquire and develop

28
Software Process Research Implications II
  • Lean, value-based processes for balancing
    dependability and agility
  • Plus scalability, incrementality for systems of
    systems
  • General techniques for multi-attribute tradeoff
    analysis
  • Associated progress metrics, review criteria,
    early warning indicators
  • Integrated technical and acquisition processes
  • Supporting balance of dependability and agility
  • Applicable to globally-distributed,
    multi-cultural collaboration
  • Process capitalization on computational plenty
  • Self-monitoring software, higher levels of
    abstraction, knowledge-based tools
  • Integration and risk assessment of wild-card
    technologies
  • Autonomy, bio-computing

29
Backup Charts
  • Limitations to software process perfectability
  • Value-based software engineering theory and
    process
  • Anchor point process milestones

30
Limitations Brooks Four Essentials Plus Two
  • Complexity larger components, systems of
    systems, attribute tradeoffs
  • Conformity evolving standards, external
    system/COTS constraints
  • Changeability solution half-life, unpredictable
    certainties
  • Conceptuality (invisibility) COTS opacity,
    multi-view consistency
  • Community stakeholder proliferation,
    distribution, diversity
  • Centrality software failure risks, rice-bowl
    implications

31
Limitations Lampsons Continuing SW Crisis
  • Moores Law enables the feasibility of new
    applications
  • Requiring new and often more complex software
  • Easier to handle complexity in software than
    elsewhere
  • Good engineering practice to address via software
  • Few physical limits on software applications
  • Easy to overreach with proposed software
    solutions

32
Limitations Converse of Conways Law
  • Convays Law (extended to user organizations)
  • The structure of a computer program
  • Reflects the structure of
  • The organizations that build and use it

33
Limitations Converse of Conways Law
  • Convays Law (extended to user organizations)
  • The structure of a computer program
  • Reflects the structure of
  • The organizations that build and use it
  • Converse of Conways Law
  • We will learn how to build perfectly functioning
    software
  • As soon as
  • We learn how to build perfectly functioning
    organizations

34
Motivation for Value-Based SE
  • Current SE methods are basically value-neutral
  • Every requirement, use case, object, test case,
    and defect is equally important
  • Object oriented development is a logic exercise
  • Earned Value Systems dont track business value
  • Separation of concerns SEs job is to turn
    requirements into verified code
  • Ethical concerns separated from daily practices
  • Valueneutral SE methods are increasingly risky
  • Software decisions increasingly drive system
    value
  • Corporate adaptability to change achieved via
    software decisions
  • System value-domain problems are the chief
    sources of software project failures

35
Why Software Projects Fail
36
Initial VBSE Theory 41 - with Apurva Jain
  • Engine Theory W (stakeholder win-win) What
    values are important?
  • Enterprise Success Theorem
  • Theory of Justice
  • Win-Win Equilibrium and Negotiation
  • Four Supporting Theories
  • Utility Theory How important are the values?
  • Multi-attribute utility Maslow need hierarchy
  • Decision Theory How do values determine
    decisions?
  • Investment theory game theory statistical
    decision theory
  • Dependency Theory How do dependencies affect
    value realization?
  • Results chains value chains cost/schedule/perfor
    mance tradeoffs
  • Control Theory How to monitor and control value
    realization
  • Feedback control adaptive control spiral risk
    control

37
Theory W Enterprise Success Theorem And
informal proof
  • Theorem Your enterprise will succeed if and
    only if it makes winners of your
    success-critical stakeholders
  • Proof of if Everyone that counts is a
    winner. Nobody significant is left to
    complain.
  • Proof of only if
  • Nobody wants to lose.Prospective losers will
    refuse to participate, or will
    counterattack.The usual result is lose-lose.

38
Win-lose Generally Becomes Lose-lose
Actually, nobody wins in these situations
39
Initial VBSE Theory 41 Process With a great
deal of concurrency and backtracking
40
VBSE Progress and Challenges
  • Significant progress on most agenda items
  • Economics-Driven Software Engineering Research
    workshops
  • EDSER-7 at ICSE 2005 in St. Louis, May 15
  • Beijing Software Process Workshop, May 25-27
  • Upcoming 20-chapter book covers much of VBSE
    agenda
  • Biffl, Aurum, Boehm, Erdogmus, Gruenbacher
    (eds.), VBSE, Springer 2005 (to appear)
  • Many Significant Challenges Remain
  • Value-based versions of traditional tools and
    techniques
  • Applications of value-oriented concepts risk,
    insurance, ROI, real options, finance, domain
    knowledge

41
Spiral Anchor Points Enable Concurrent Engineering
42
Need Concurrently Engineered Milestone
ReviewsLife Cycle Objectives (LCO) Life Cycle
Architecture Package (LCA)
43
Need Concurrently Engineered Milestone
ReviewsLife Cycle Objectives (LCO) Life Cycle
Architecture Package (LCA)2
WWWWWHH Why, What, When, Who, Where, How, How
Much
44
LCO (MS A) and LCA (MS B) Pass/Fail Criteria
  • A system built to the given architecture will
  • Support the operational concept
  • Satisfy the requirements
  • Be faithful to the prototype(s)
  • Be buildable within the budgets and schedules in
    the plan
  • Show a viable business case
  • Establish key stakeholders commitment to proceed

LCO True for at least one architecture LCA True
for the specific life cycle architecture
All major risks resolved or covered by a risk
management plan
45
Spiral Feasibility Rationale
  • LCO, LCA reviews not just UML/PowerPoint charts
  • Need to show evidence of product and process
    feasibility
  • Evidence provided by prototypes, production code,
    benchmarks, models, simulations, analysis
  • Sizing and cost/schedule model results for
    process feasibility
  • Evidence provided in advance to LCO/LCA review
    team
  • Key stakeholders, specialty experts
  • Lack of evidence risks destabilizing the process
  • Needs coverage by viable risk mitigation plan
Write a Comment
User Comments (0)
About PowerShow.com