University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC.

Slides:



Advertisements
Similar presentations
Systems Investigation and Analysis
Advertisements

CAPACITY LOAD OUTPUT.
McGraw-Hill/Irwin © 2003 The McGraw-Hill Companies, Inc., All Rights Reserved. 7-1 Chapter 7 CHAPTER 7 THE EFFECT OF INFORMATION TECHNOLOGY ON THE AUDIT.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Ricardo Valerdi USC Center for Systems and Software.
Future Work Needed Kenneth Wade Najim Yaqubie. Outline 1.Model is simple 2.Too many assumptions 3.Conflicting internal architectures 4.Security Challenges.
Introduction To System Analysis and Design
University of Southern California Center for Software Engineering CSE USC System Dynamics Modeling of a Spiral Hybrid Process Ray Madachy, Barry Boehm,
University of Southern California Center for Systems and Software Engineering Issues and Recommendations Emanating from the Management Issues Group of.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
University of Southern California Center for Systems and Software Engineering Integrating Systems and Software Engineering (IS&SE) with the Incremental.
Discrete-Event Simulation: A First Course Steve Park and Larry Leemis College of William and Mary.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 Ray Madachy, Barry Boehm USC Center for Systems and Software Engineering.
University of Southern California Center for Software Engineering CSE USC 3/11/02 1 New System Dynamics Models Ray Madachy USC-CSE Annual.
University of Southern California Center for Software Engineering CSE USC 1 Software Schedule Analysis with Process Concurrence Ray Madachy
Expert COSYSMO Update Raymond Madachy USC-CSSE Annual Research Review March 17, 2009.
University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/16/08 Modeling System and Software Engineering Processes with.
1 Software Testing and Quality Assurance Lecture 14 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
Production Systems Chapter 9.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
COMP8130 and 4130Adrian Marshall 8130 and 4130 Test Management Adrian Marshall.
Software Process and Product Metrics
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Architecture in Practice (3rd Ed) Introduction
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 5 Slide 1 Chapter 5 Project Management Modified by Randy K. Smith.
Chapter 10 Architectural Design
Software Development Process
Bina Nusantara 2 C H A P T E R INFORMATION SYSTEM BUILDING BLOCKS.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Control Loop Foundation Batch and Continuous Processes.
Search Engines and Information Retrieval Chapter 1.
Introduction to Discrete Event Simulation Customer population Service system Served customers Waiting line Priority rule Service facilities Figure C.1.
Chapter 1 Introduction to Simulation
CPIS 357 Software Quality & Testing
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
So What? Operations Management EMBA Summer TARGET You are, aspire to be, or need to communicate with an executive that does not have direct responsibility.
Risk Management for Technology Projects Geography 463 : GIS Workshop May
Introduction To System Analysis and Design
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
1-1 System Development Process System development process – a set of activities, methods, best practices, deliverables, and automated tools that stakeholders.
Principles, Practices and Dynamics of Research Management LECTURE-4 Research Design Kazi Nurmohammad Hossainul Haque Senior Lecturer, Civil Service College.
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Business Process Change and Discrete-Event Simulation: Bridging the Gap Vlatka Hlupic Brunel University Centre for Re-engineering Business Processes (REBUS)
Software Testing and Quality Assurance Software Quality Assurance 1.
Systemic Perspective Necessary and Sufficient Activities.
Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition Irwin/McGraw-Hill.
Enterprise Systems Architectures EGN 5621 Enterprise Systems Collaboration (Professional MSEM) Fall, 2012.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Formulating a Simulation Project Proposal Chapter3.
Chapter 4 프로세스 모델 Process Models
Project Management and Risk. Definitions Project Management: a system of procedures, practices, technologies, skills, and experience needed to manage.
University of Southern California Center for Systems and Software Engineering Approaching the Design Stages Pongtip Aroonvatanaporn CSCI577 Fall 2010 November.
Software Process Dynamics USC CSCI 510: Software Management and Economics November 18, 2009 Dr. Raymond Madachy
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Mahmut Ali GÖKÇEIndustrial Systems IEU Introduction to System Engineering ISE 102 Spring 2007 Notes & Course Materials Asst. Prof. Dr. Mahmut.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Castlebridge associates | | Castlebridge changing how people think about information How to Implement the.
Systems Architectures System Integration & Architecture.
Value network analysis for complex service systems: Author : Juite Wang Jung-Yu Lai Li-Chun Hsiao Professor : Soe-Tsyr Daphne Yuan Presenter : Po-Wei Chiang.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Introduction To Modeling and Simulation 1. A simulation: A simulation is the imitation of the operation of real-world process or system over time. A Representation.
Lecture 3 Prescriptive Process Models
Unified Modeling Language
Complexity Time: 2 Hours.
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
CS223: Software Engineering
Presented By: Darlene Banta
System architecture, Def.
Presentation transcript:

University of Southern California Center for Systems and Software Engineering ©USC-CSSE1 3/18/08 (Systems and) Software Process Dynamics Ray Madachy USC Center for Systems and Software Engineering Annual Research Review March 18, 2008

University of Southern California Center for Systems and Software Engineering ©USC-CSSE2 3/18/08 Dealing with Systems and Software Engineering Complexities The evaluation of process strategies for the architecting and engineering of complex systems involves many interrelated factors. Effective systems and software engineering requires a balanced view of technology, business or mission goals, and people. System dynamics is a rich and integrative simulation framework used to quantify the complex interactions and the strategy tradeoffs between cost, schedule, quality and risk. Everything is connected to everything Anonymous

University of Southern California Center for Systems and Software Engineering ©USC-CSSE3 3/18/08 Systems and Software Engineering Challenges What to build? Why? How well? –Stakeholder needs balancing, business case Who to build it? Where? –Staffing, organizing, outsourcing How to build? When; in what order? –Construction processes, methods, tools, components, increments How to adapt to change? –In user needs, technology, marketplace How much is enough? –Functionality, quality, specifying, prototyping, test See relevant application models in Software Process Dynamics chapters 4-6

University of Southern California Center for Systems and Software Engineering ©USC-CSSE4 3/18/08 The Software Process Dynamics Field 1991 Software Project Dynamics book, Abdel-Hamid and Madnick, MIT –A single model –Useful tradeoff insights, some mischaracterizations 1990’s Growing number of applications and commercial modeling tools 1998 Annual ProSim Workshop start 1999 Refereed journal articles start 2000’s Many applications, few modeling principles 2008 Software Process Dynamics book, Madachy, USC –Modeling techniques and principles, model building blocks, entire models, review of extensive model applications

University of Southern California Center for Systems and Software Engineering ©USC-CSSE5 3/18/08 Software Process Dynamics Table of Contents Part 1 - Fundamentals Chapter 1 – Introduction and Background Chapter 2 – The Modeling Process with System Dynamics Chapter 3 – Model Structures and Behavior for Software Processes Part 2 – Applications and Future Directions Chapter 4 – People Applications Chapter 5 – Process and Product Applications Chapter 6 – Project and Organization Applications Chapter 7 – Current and Future Directions Appendices – Statistics of Simulation, Annotated Bibliography, Provided Models

University of Southern California Center for Systems and Software Engineering ©USC-CSSE6 3/18/08 System Dynamics Principles Major concepts –Defining problems dynamically, in terms of graphs over time –Striving for an endogenous, behavioral view of the significant dynamics of a system –Thinking of all real systems concepts as continuous quantities interconnected in information feedback loops and circular causality –Identifying independent levels in the system and their inflow and outflow rates –Formulating a model capable of reproducing the dynamic problem of concern by itself –Deriving understandings and applicable policy insights from the resulting model –Implementing changes resulting from model-based understandings and insights. The continuous view –Individual events are not tracked –Entities are treated as aggregate quantities that flow through a system

University of Southern California Center for Systems and Software Engineering ©USC-CSSE7 3/18/08 System Dynamics Strengths / Weaknesses Strengths –Provides a global system perspective and the ability to analyze combined strategies –Enables analysis of integrated process factors and feedback loops (e.g. holistic enterprise models, positive and negative feedback, process delays, process concurrence) –Finding the right process balance (e. g., quality assurance levels, staffing levels) –Adapting to change; strategic long-term policy analysis –Can model inherent tradeoffs between schedule, cost and quality –Attractive for schedule analysis accounting for critical path flows, task interdependencies and bottlenecks not available with static models or PERT/CPM methods Weaknesses –Assumption of homogeneity of entities; cannot attach attributes to individual entities –Sequential activities difficult to represent –Queuing and other discrete statistics not captured

University of Southern California Center for Systems and Software Engineering ©USC-CSSE8 3/18/08 System Dynamics Notation System represented by x’(t)= f(x,p). x: vector of levels (state variables), p: set of parameters Legend: Example system:

University of Southern California Center for Systems and Software Engineering ©USC-CSSE9 3/18/08 Model Elements

University of Southern California Center for Systems and Software Engineering ©USC-CSSE10 3/18/08 Model Elements (continued)

University of Southern California Center for Systems and Software Engineering ©USC-CSSE11 3/18/08 Brooks’s Law Model “Adding manpower to a late software project makes it later” [Brooks 75]. A simple model based on the following assumptions: –New personnel require training by experienced personnel to come up to speed –More people on a project entail more communication overhead –Experienced personnel are more productive then new personnel, on average.

University of Southern California Center for Systems and Software Engineering ©USC-CSSE12 3/18/08 Brooks’s Law Model Output Sensitivity of Software Development Rate to Varying Personnel Allocation Pulses (1: no extra hiring, 2: add 5 people on 100th day, 3: add 10 people on 100th day) Days Function points/day

University of Southern California Center for Systems and Software Engineering ©USC-CSSE13 3/18/08 Brooks’s Law Dynamics

University of Southern California Center for Systems and Software Engineering ©USC-CSSE14 3/18/08 References Abdel-Hamid T, Madnick S, Software Project Dynamics, Englewood Cliffs, NJ, Prentice-Hall, 1991 Madachy R, Software Process Dynamics, Wiley/IEEE Press, Hoboken NJ, 2008 USC Web Sites