Download presentation
Presentation is loading. Please wait.
Published byNorman Ray Modified over 5 years ago
1
CSE 8340 Advanced Topics on Software Engineering: Software Engineering Economics & Processes Course Overview LiGuo Huang Dept. of Computer Science and Engineering Southern Methodist University ©SMU-CSE
2
Outline Course objectives Evolution of software engineering
Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
3
Course Objectives Help you learn to be a successful software manager
Software technology, economic factors, human relations For a career lasting through the 2040’s Understand the fundamental principles underlying software management and economics Analyze software management situations via case studies Apply the principles and techniques to practical situations ©SMU-CSE
4
"Those who cannot remember the past are condemned to repeat it,"
– George Santayana ©SMU-CSE
5
Outline Course objectives Evolution of Software Engineering
Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
6
Evolution of Software Engineering (1)
1950’s Thesis: Software Engineering Is Like Hardware Engineering + Don’t neglect the sciences + Look before you leap Avoid using a rigorous sequential process 1960’s Antithesis: Software Crafting + Respect software’s differences – Avoid cowboy programming 1970’s Synthesis and Antithesis: Formality and Waterfall Processes + Determine the system’s purpose + Quantitative methods + Eliminate errors early – Avoid top-down development and reductionism ©SMU-CSE
7
Evolution of Software Engineering (2)
1980’s Synthesis: Productivity and Scalability + There are many roads to increased productivity + What’s good for products is good for process Be skeptical about silver bullets or one-size-fits-all solutions 1990’s Antithesis: Concurrent vs. Sequential Processes + Time is money + Make software useful to people – Be quick, but don’t hurry ©SMU-CSE
8
Evolution of Software Engineering (3)
2000’s Antithesis and Partial Synthesis: Agility and Value + If change is rapid, adaptability trumps repeatability + Consider and satisfy success-critical stakeholders’ value propositions 2010’s Antitheses and Partial Syntheses: Globalization and Systems of Systems ©SMU-CSE
9
Outline Course objectives Evolution of Software Engineering
Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
10
Software Engineering Economics
Software is a critical component for enterprise value creation Improve the value created by investments in software Improve software design and engineering through economic reasoning about product, process, program, portfolio and policy issues Understand relationships between economic objectives, constraints, and conditions Software engineering as a value-creating activity connect technical decisions with enterprise-level value outcomes ©SMU-CSE
11
Sources of Technical-Value Mismatch
Lack adequate frameworks for modeling, measuring and analyzing the connections between technical properties/decisions and value creation Software designers and engineers are not educated on reasoning about value creation Inadequate design space within which software designers operate set of technologies with which software is developed and used organizational, regulatory, tax, market and other structures within which software is developed and used ©SMU-CSE
12
New Sources of “Value” Value of changes Value of timing
Value with uncertainties Real options Value of timing Intel and AMD Microsoft’s independent-feature-based architectural style and synchronize-and-stabilize process Tradeoffs in multi-dimensional value spaces ©SMU-CSE
13
New Measures of “Value”
Monetary “value” and non-monetary “value” Non-linear functions Value under uncertainty Decision (utility) theory provides a framework for decisions under uncertainty Real-options framework compared with Net Present Value (NPV) Discounted Cash Flow (DCF) Multi-objective decision-making ©SMU-CSE
14
Multi-stakeholder Satisfying
Each stakeholder has its own goals and measures of value Conflicting interests in the distribution of gains Awards and risks coexist Integrate value considerations into complex, software-intensive development processes WinWin Spiral Lifecycle Model ©SMU-CSE
15
Future Trends and Additional Challenges
COTS intensive software systems Reason about both costs and benefits Minimal cost strategies doesn’t necessarily optimize value Example: RAD Classic schedule estimation: Question: How about value loss due to delay of time to market? ©SMU-CSE
16
Software Engineering Economics Roadmap
Product and process design for value creation Understand better the links between technical design mechanisms (e.g., architecture), context, and value creation Dynamic monitoring and control to better guide decision-makers through the design space Modeling costs, benefits/value and quality ©SMU-CSE
17
Emerging Value-driven Design and Development Approaches
ICM: Incremental Commitment Model MBASE/USC: Model Based (System) Architecting and Software Engineering approach DMR/Thorp Risk-based/Value-based testing Value-based design Value-based security ©SMU-CSE
18
Outline Course objectives Evolution of Software Engineering
Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
19
What Does A Successful Software Manager Need to Deal With?
©SMU-CSE
20
What Do SW Managers Need to Deal With?
People: customers, users, architects, designers, programmers, testers, lawyers, venture capitalists, suppliers, politicians, … Products: requirements, designs, code, documentation, plans, tools, data, facilities, equipment, … Projects: proposals, presentations, contracts, deliverables, budgets, schedules, milestones, … Resources: time, money, space, communications, skills, … Technology: software, hardware, domain technology, COTS, OSS, … Organizations and Cultures: top management, marketing, sales, development, finance, customer/user organizations, … Changes in all of the above ©SMU-CSE
21
What Does A Successful Software Manager Need to Do?
©SMU-CSE
22
Software Management Guidelines
Eclectic combinations of advice Management frameworks Maturity models People management theories: X, Y, Z Enterprise Success Theorem: Theory W Enterprise Success Realization Theorem ©SMU-CSE
23
Sorting Out Software Advice
Build It twice Thorough test planning Do it top-down Prove everything correct Use disciplined reviews Do it outside-in Programming standards Automated aids Independent test teams Use walk-throughs Chief Programmer teams Measurable milestones Early requirements baseline Program Library Involve the user Structured Programming Design verification Configuration management Project work authorizations End-item acceptance plan Unit development folders ©SMU-CSE
24
Koontz-O’Donnell Management Framework
Planning Organizing Staffing Directing Controlling Purpose Contribution to goals Commitment Verifiability Cost-Effectiveness Precedence Purpose Unity of goals Cost- effectiveness Span of Management Purpose Contribution to goals Purpose Harmony of goals Purpose Assurance of goals Cost-effectiveness Control responsibility Motivation Understanding of goals Reflection of goals Selection Top talent Job matching Career progression Skills balance Teamwork Structure Reflection of plans Organizational suitability individuality Delegation of Authority Unity of command Parity of authority Responsibility Authority level Absoluteness of responsibility Communication Parity of information Responsibility Receptiveness Integrity Structure Premises WWWWWHHW Synchronization Recruiting Reward Openness Commitment Process Standards Critical-point Exception Flexibility Timeliness Action Leadership Identification Empathy Sustained initiative Integrity Team building Management of time Process Limiting Factor Flexibility Navigational change Performer Participation Division of Work Form follows function People’s strengths Functional definition Separation Retention Reinforcement Team building Phase out Backup ©SMU-CSE
25
CMMI Process Areas Staged Representation
Level 5 Optimizing Causal Analysis and Resolution Organizational Innovation & Deployment Level 4 Quantitatively Managed Quantitative Project Management Organizational Process Performance Organizational Process Focus Organizational Process Definition Organizational Training Integrated Project Management Risk Management Decision Analysis and Resolution Requirements Development Technical Solution Product Integration Verification Validation Level 3 Defined Integrated Teaming Organizational Environment for Integration Project Planning Project Monitoring and Control Configuration Management Process & Product Quality Assurance Supplier Agreement Management Measurement and Analysis Requirements Management Level 2 Managed Level 1 Performed ©SMU-CSE
26
Theory X and Theory Y* Theory X Theory Y
People inherently dislike work They have to be coerced into working They prefer being told what to do Theory Y People don’t inherently dislike work People can exercise self-direction Commitment to objectives depends on resulting rewards People can learn to seek responsibility Work creativity is widely distributed People’s potential is only partially utilized * D. McGregor, The Human Side of Enterprise, 1960. ©SMU-CSE
27
Theory Z: Japanese-Style Management
People work best toward goals which they have helped establish Once people have bought into goals, you can trust them to perform If people share a common set of values, they can develop workable project goals ©SMU-CSE
28
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. ©SMU-CSE
29
Win-lose Generally Becomes Lose-lose
Actually, nobody wins in these situations ©SMU-CSE
30
Enterprise Success Realization Theorem
Theorem: Your enterprise can realize success if and only if You identify and involve all of the success critical stakeholders (SCSHs) Dependency theory You determine how the SCSHs want to win Utility theory You help the SCSHs determine and commit to a win-win course of action and solution Decision theory You adaptively control the course of action to continue to realize a win-win solution Control theory ©SMU-CSE
31
Outline Course objective Roadmap of software engineering economics
Help you learn to be a successful software manager For a career lasting through the 2040’s. Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
32
VBSE Theory 4+1 Structure
©SMU-CSE
33
VBSE Component Theories
Theory W (Stakeholder win-win) Enterprise Success Theorem, Win-Win Achievement Theorem Dependency Theory (Product, process, people interdependencies) Systems architecture/performance theory, costing and scheduling theory; organization theory Utility Theory Utility functions, bounded rationality, Maslow need hierarchy, multi-attribute utility theory Decision Theory Statistical decision theory, game theory, negotiation theory, theory of Justice Control Theory Observability, predictability, controllability, stability theory ©SMU-CSE
34
Initial VBSE Theory: 4+1 Process – With a great deal of concurrency and backtracking
©SMU-CSE
35
Outline Course objectives Evolution of Software Engineering
Roadmap of software engineering economics Software management learning objectives What does a successful SW manager need to deal with? What does a successful (software) manager need to do? Enterprise Success Theorem Enterprise Success Realization Theorem Overview of VBSE Theory Value-Based Software Engineering Overview of Course Programmatics, schedule, academic integrity This Week’s Assignment ©SMU-CSE
36
CSE8340 Overview COCOMO II & Extensions VBSE Theory, Practice
Planning & Control COCOMO II Microeconomics Decision Theory Business Case Analysis People Management VBSE Theory, Practice VBSE Framework WinWin Spiral Risk Management Agile and Discipline MBASE; Model Clash Incremental Commitment Model COTS-based Process ©SMU-CSE
37
First Week’s Assignment
Today: Sign and turn in questionnaire and acknowledgement ©SMU-CSE
38
CSE8340 Questionnaire and Acknowledgement
Please fill out and return. Name: _________________________________________________ Student ID #: ___________________________________________ Dept./Degree Program: __________________________________ Job, Employer: _________________________________________ Software Work Experience (years): _______________________ Phone, fax numbers: ____________________________________ Address: ________________________________________ Acknowledgement: I acknowledge the importance of SMU's academic integrity standards (with respect to plagiarism, referencing others' work, etc.), and agree to abide by them. Signature: ______________________________________________ ©SMU-CSE
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.