SIMS Waterfall Simulation – Seminar 3 PRM Eran Padumadasa.

Slides:



Advertisements
Similar presentations
Software Processes.
Advertisements

2003 Mateusz Żochowski, Marcin Borzymek Software Life Cycle Analysis.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 12, Software Life Cycle.
Computer Science Department
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 المحاضرة الثانية.
Chap 2. Software Processes
Software Process Model
What is software? Computer programs and associated documentation
MADALINA CROITORU Software Engineering week 1 Madalina Croitoru IUT Montpellier.
 2004 by SEC Chapter 2 Software Development Process Models.
CSE 470 : Software Engineering The Software Process.
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Modeling the Process and Life Cycle CSCI 411 Advanced Database and Project Management Monday, February 2, 2015.
 © Ian Sommerville A software process model is an abstract representation of a process. It presents a description of a process from some particular perspective.
ISNE101 Dr. Ken Cosh. Recap  We’ve been talking about Software…  Application vs System Software  Programming Languages  Vs Natural Languages  Syntax,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
SYSC System Analysis and Design
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
©Ian Sommerville 2000 Software Engineering, 6th edition Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing.
Software Development Overview CPSC 315 – Programming Studio Spring 2008.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CMSC 345, Version 1/03 An Overview of Software Processes Reference: Software Engineering, by Ian Sommerville, 6 th edition, Chapter 3.
Chapter 3 Software Processes.
University of Toronto Department of Computer Science CSC444 Lec04- 1 Lecture 4: Software Lifecycles The Software Process Waterfall model Rapid Prototyping.
Software Development Process
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
 Software Models.  A software life-cycle model is a descriptive and diagrammatic representation of the software life-cycle. This includes a series of.
The Architecture Business Cycle. Software Architecture Definition The software architecture of a program or computing system is the structure or structures.
Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Software Processes (Chapter 3)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Software Processes l Coherent sets of activities for specifying, designing,
Software Life Cycle Models. Waterfall Model  The Waterfall Model is the earliest method of structured system development.  The original waterfall model.
Planning Game in Artifacts Tracker (AT) Project Michal Pilawski.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
1 SWE Introduction to Software Engineering Lecture 4.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
Chapter 2 Software Processes (2/2) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
Process 3a 1 A Spiral Model of Software Development and Enhancement Barry Boehm Computer, May 1988 text pp34-45.
September 30, 2010COMS W41561 COMS W4156: Advanced Software Engineering Prof. Gail Kaiser
Software Development Life Cycle (SDLC)
SIMS Waterfall Simulation – Seminar 2 PRM Eran Padumadasa.
 Many models have been proposed to deal with the problems of defining activities and associating them with each other  The first model proposed was the.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Introduction Requirements and the Software Lifecycle (3)
A framework that describes the activities performed at each stage of a software development project. A life-cycle or a software process is the organisational.
1 SYS366 Week 2 - Lecture Visual Modeling and Process.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini II. Software Life Cycle.
Software Development - Methodologies
Unit 6 Application Design KLB Assignment.
Lecture 3 Prescriptive Process Models
Software Processes (a)
Software Processes.
Software Development Process
Chapter 2 Software Processes
An Overview of Software Processes
An Overview of Software Processes
Software Processes.
PRESENTED BY P.SANDEEP MSc,MTech
Presentation transcript:

SIMS Waterfall Simulation – Seminar 3 PRM Eran Padumadasa

This model was designed to embody an iterative development process that values regularly providing the customer with incremental versions of the software throughout the life cycle. We accomplished this using a module-based approach that accommodated the partial submissions of a project throughout the process. In this model, a module represents an anonymous part of the project that can be worked on and developed independently of the other parts. Development actions, such as risk analysis, requirements analysis, design, and implementation are performed on each module separately. We specifically designed the attributes of a module to facilitate teaching about incremental software process approaches.

Questions to Consider: In particular, a module in this model has the following attributes (none of which are visible to the player at the beginning of the game, but instead are only revealed through various analysis activities performed on each module): Value: This represents the priority of this module to the customer, which in turn controls how much the completion of that module will help the player’s final score. Discovering this value through risk analysis can help the player to prioritize the completion of each module if time constraints prevent a complete submission. Inflexibility: This value signifies the degree to which the customer will be unwilling to accept deviations from their ideal concept of the module. The higher the inflexibility of a module, the more the player’s score will be hurt if that module is implemented incorrectly. Once again, using risk analysis to discover this value will help to guide the player in prioritizing modules.

Changeability: This value corresponds to how often the module is likely to be changed by the customer and, like value and inflexibility, is also discovered using risk analysis. This value is very important to determining how the player should proceed. Overcoming frequent customer changes is one of the primary challenges of this model, so knowing which modules are most likely to change is one of the most important pieces of information that should be used when devising a strategy for playing the game. Accuracy: This represents how well the developed module corresponds to the customer’s expectations for that module. Accuracy is improved by working on a module’s requirements, and it is eroded whenever the customer makes changes to the module. Even if a module is complete, if its accuracy is too low, it might represent no value at all to the customer in terms of the final project. This is especially true in modules with high inflexibility values. Phase difficulties: Each module contains a difficulty value for each development action that can be performed on it (requirements, design, and implementation). These values can help a player to determine which modules might make good candidates for the basis of early, rapid prototypes. Performing difficulty analysis on a module reveals that module’s difficulty values.

Questions Which artifact attribute seemed to be most important and most strongly affect the outcome of the game (e.g., inflexibility, difficulty, changeability, etc.)? Why? Try skipping one or more of the documentation phases (requirements/design) on one or more modules. What effect does this have? How does the early submission of a partially complete project affect your work on the remainder of the project? Describe your approach to the game in terms of the lifecycle models we discussed in class. In what ways did you follow a given lifecycle model? Is there any situation where it might be valuable to use the “start over” action?

Write a report divided into two parts. Part A describes your experience. Run the simulation five times. Each time record your score. And indicate what strategies you used to improve your score in each successive scenarios.

Additional Reading 1.Beck, K., Extreme Programming Explained: Embrace Change. 2000, Reading, MA: Addison-Wesley. 2.Boehm, B.W., A Spiral Model of Software Development and Enhancement. IEEE Computer, (5): p Glib, T., Evolutionary Delivery versus the Waterfall Model. ACM SIGSOFT Software Engineering Notes, 1985: p Laman, C. and V. Basili, Iterative and Incremental Development: A Brief History. IEEE Computer, (6): p Royce, W., TRW's Ada Process Model for Incremental Development of Large Software Systems, in Proceedings of the 12th International Conference on Software Engineering p Scacchi, W., Process Models in Software Engineering, in Encyclopedia of Software Engineering, J. Marciniak, Editor. 2001, Wiley.