CMPT 275 Software Engineering

Size: px
Start display at page:

Download "CMPT 275 Software Engineering"

Transcription

1 CMPT 275 Software Engineering Software life cycle 1 Software Life Cycle Sequence of processes completed as a software project moves from inception to retirement At beginning of project development, choose Software development paradigm Software development process model Define the order/manner in which software life cycle processes are performed Then you are ready to start software specification, design, implementation, validation Janice Regan, Development Processes Next we will discuss a list of processes that need to occur some time during the lifetime of a project. The exact order of the processes and the number of times the processes are done will vary according to the process model developed Some processes can be considered to happen before, during or after development Other process occur at any time during development Janice Regan,

2 Processes For each process we consider we will decide/indicate when the process will most likely occur, give a name for the process, and give a list (partial?) of activities that comprise the process WHEN: before, during, after development Name of process List of activities Janice Regan, Development Processes - 1 WHEN: before development Concept Exploration Identifying idea and need for a product Formulate possible approaches to solution (high level only) Determining feasibility, identifying and mitigating risks promotion concept and setting up funding/support Janice Regan, Development Processes - 2 WHEN: before development System allocation Estimating, planning and identifying staffing needs for each phase Determine system architecture Janice Regan,

3 Development Processes - 3 WHEN: during development Requirements Analysis gathering, specifying and analyzing the requirements. Defining functionality and scope (limits on functionality) Define interface requirements Prioritize requirements Validate and Verify requirements Janice Regan, Development Processes - 4 WHEN: during development System and Software Design Design how software will be structured internally Establish system architecture Select or develop algorithms (if needed) Describe software system abstractions and relationships Analysis of the design and verification that the design meets the requirements Janice Regan, Development Processes - 5 WHEN: during development Implementation: Programming (and building) Verification that implemented software meets all requirements Plan unit implementation and integration (implementation/test) Create user manual (operating instructions) Janice Regan,

4 Development Processes - 6 WHEN: during development Testing (verification of implementation phase) Testing modules (unit test) Testing combinations of modules (integration test) Testing the whole system (system test) Janice Regan, Development Processes - 7 WHEN: post development Installation Installation at user site (plan test accept) User testing, verifying user needs are met (includes user acceptance test or UAT) Errors corrected, bugs fixed Janice Regan, Development Processes - 8 WHEN: post development Operation and Support (maintenance) Software enhanced (new features, new requirements) Errors corrected, bugs fixed Evolution to newer platforms (newer OS, hardware) Retirement: post development Janice Regan,

5 Integral Processes Integral processes take place during all phases of development Verification and Validation: Software Configuration and Management Configuration Control, Revision management Tracking and control of changes Documentation development / distribution Training Plan, Develop, Validate, Implement training program Janice Regan, Life cycle models Combine the development processes and activities in different ways (different order, once or repeated ) to model the life cycle of a project By making models of the life cycle of successful software projects can help us design better approaches to plan the life cycle of future projects There are several generic life cycle models that are often used or used as a basis for design of custom life cycle models Janice Regan, Generic Life Cycle models Sequential (activity centered) Perspective The waterfall method V model Iterative (activity centered) development Evolutionary Spiral Janice Regan,

6 Types of Generic Process Models - 2 Component Based Perspective Focus on applying reusable components (most already exist) Rational Unified Process Combines aspects of all three perspectives Useful for large systems Janice Regan, Waterfall Process Model Project Initiation Concept Exploration System Allocation Requirements Design Implementation Verification Validation Installation Operation & Support Janice Regan, Waterfall Process Model Project Planning Requirement Analysis Design Implementation Testing Maintenance Janice Regan,

7 V Model System Requirements Allocation Requirements Elicitation Requirements Analysis Preliminary Design Component Integration/test Operation Client Acceptance System Integration/test Detailed Design Unit Test Implementation Janice Regan, Why a Waterfall Process Model? Phases (processes) are performed once Makes the process easy to follow One phase should not be started until the previous one is complete Makes the process easy to manage Documents need only be produced and approved once (this is a costly process) Parallels other engineering process models The waterfall method should only be used if the requirements are well understood Janice Regan, Why not? Impractical to fully complete any one of the phases before starting the next one difficult to capture all requirements before proceeding to design Users don t get to see the results until the end problems may emerge only at the end when user realizes the product is not what was needed Janice Regan,

8 Fixing the problems How can we modify these sequential life cycle model to address these problems Prototypes can be useful to show to the user to catch problems before implementation can also be misleading as the client must understand that the system is not almost ready Allow for return to earlier processes to update models to include changes to fix deficiencies found in later processes: incorporate iteration Allow for an incremental approach of developing a basic solution, then adding additional functionality Janice Regan, Modified Waterfall Model Project Planning Requirement Analysis Design Add some iteration Implementation Testing Maintenance Janice Regan, Evolutionary model Iterative and incremental (many waterfalls) Software system to be developed is partitioned into development phases (sub goals) that include some user driven subset of the functionality of the entire project (e.g. Critical Functionality, Required Functionality, Desired Functionality) Each phase has its own requirements analysis followed by design, implementation, and testing Each phase adds additional functionality to the project Janice Regan,

9 Boehm s spiral model Unit Test and test System Acceptance test test Janice Regan, After Boehm, 1987 Spiral model Round 0: Feasibility study Round 1: Requirements development Round 2 : Development / test of system Risk analysis aspect is critical. In any round development can stop is risk is too high Requirements clearly defined and completely defined, risks are all low and a single round of development reduces to a waterfall Requirements clearly defined, but lowest risk in 1 st round, higher in 2 nd reduces to evolutionary Janice Regan, Evolutionary Process Model - 1 Advantages: Helps assure modularity and maintainability Each version built on tested results of a previous version User/client feedback of first iteration (could be a prototype) provides opportunity to catch potential problems, or misunderstanding early Helps improve project time estimation Record time taken during first iteration Helps produce better estimations for next iterations Test plans can be expanded for new functionality in later iterations Janice Regan,

10 Evolutionary Process Model - 2 Disadvantages: Because of overlapping iterations Synchronizing documentation Management overhead Janice Regan, Programming Paradigm The process life cycle models we have discussed were developed before the OO paradigm came into common use Some models can be adapted to the new paradigm What about life cycle models specifically for the OO paradigm? Janice Regan, OO: Dividing Tasks During requirements analysis identify requirements or groups of requirements that have different priorities. As an example Core functionality (for OO a few use cases) Necessary additional functionality (for OO add use cases) Desired additional functionality ( for OO add more use cases) Janice Regan,

11 OO: Incremental Development A proposed approach for the example: Develop the Core functionality. Get feedback from the client As a second iteration/increment add the necessary additional features, repeat the linear sequential process. Get more feedback Finally (time permitting) complete a third iteration/increment to add the desired additional functionality Janice Regan, Prototyping Build a mock up of the system for evaluation by client Helps confirm you are on the right track Mock-ups may be throwaway, that is rapidly constructed, (usually in a modeling language too inefficient for the final system) to illustrate the functionality of the system Mockups may be incremental, demonstrating some aspects of the system Beware the client may see the mock-up as an almost finished product, not a tool for interactive development with input from the client Janice Regan, Agile development: Scrum Please refer to an excellent online summary and video at Scrum/Intro_to_Scrum.htm Janice Regan,

12 SCRUM Three roles Project owner has overview of entire project (might include multiple scrum teams) Scrum manager (no management authority, a facilitator) Scrum team (ideally small < 6) a group of developers with a variety of skills Janice Regan, Scrum: incremental development Task are kept in a backlog Scrum team accepts tasks (features) from backlog as they are ready to deal with them. Develop working system by adding one feature or one small group of features at a time. Janice Regan,

03. Perspective Process Models

03. Perspective Process Models 03. Perspective Process Models Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Prescriptive Process Models advocates an orderly approach to software

More information

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping.

This tutorial also elaborates on other related methodologies like Agile, RAD and Prototyping. i About the Tutorial SDLC stands for Software Development Life Cycle. SDLC is a process that consists of a series of planned activities to develop or alter the Software Products. This tutorial will give

More information

SDLC Models- A Survey

SDLC Models- A Survey Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 2, Issue. 1, January 2013,

More information

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at

Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at Volume 8, No. 1, Jan-Feb 2017 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info A Study of Software Development Life Cycle Process Models

More information

Chapter 3 Software Process Model

Chapter 3 Software Process Model Usman Akram COMSATS Institute of information Technology lahore musmanakram@ciitlahore.edu.pk March 8, 2015 About software process model Outline 1 About software process model Build and Fix Model Why Models

More information

SWE 211 Software Processes

SWE 211 Software Processes SWE 211 Software Processes These slides are designed and adapted from slides provided by Software Engineering 9 /e Addison Wesley 2011 by Ian Sommerville 1 Outlines Software process models Process activities

More information

Introduction to Software Engineering

Introduction to Software Engineering UNIT I SOFTWARE PROCESS Introduction S/W Engineering Paradigm life cycle models (water fall, incremental, spiral, WINWIN spiral, evolutionary, prototyping, objects oriented) -system engineering computer

More information

Software Life Cycle. Main Topics. Introduction

Software Life Cycle. Main Topics. Introduction Software Life Cycle Main Topics Study the different life cycle models Study the difference between software maintenance and evolution Study product line engineering as a design methodology 2 Introduction

More information

The Top Thrill Dragster

The Top Thrill Dragster EEC 421/521: Software Engineering The Software Process Prescriptive Process Models 1/22/08 EEC 421/521: Software Engineering 1 The Top Thrill Dragster 420 ft tall Max speed over 120 mph World s second

More information

Software Development Life Cycle:

Software Development Life Cycle: Software Development Life Cycle: The systems development life cycle (SDLC), also referred to as the application development life-cycle, is a term used in systems engineering, information systems and software

More information

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis

Major attributes of the Lifecycle. The Systems Development Lifecycle. Project phases. Planning. Design. Analysis Modelling and Systems Development Lecture 2 The Systems Development Lifecycle The four-phase model common to all system development projects Major attributes of the Lifecycle The project Moves systematically

More information

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell

Selecting Software Development Life Cycles. Adapted from Chapter 4, Futrell Selecting Software Development Life Cycles Adapted from Chapter 4, Futrell Examples of Software Life Cycle Models Classical Waterfall Waterfall with feedback V-Shaped Prototyping Incremental Spiral Rapid

More information

A New Divide & Conquer Software Process Model

A New Divide & Conquer Software Process Model A New Divide & Conquer Software Process Model First A. Hina Gull, Second B. Farooque Azam Third C. Wasi Haider Butt, Fourth D. Sardar Zafar Iqbal Abstract The software system goes through a number of stages

More information

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016

Introduction to Software Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016 Introduction to Software Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 06 09/08/2016 1 Goals Present an introduction to the topic of software life cycles concepts and terminology benefits

More information

DRAFT. Effort = A * Size B * EM. (1) Effort in person-months A - calibrated constant B - scale factor EM - effort multiplier from cost factors

DRAFT. Effort = A * Size B * EM. (1) Effort in person-months A - calibrated constant B - scale factor EM - effort multiplier from cost factors 1.1. Cost Estimation Models Parametric cost models used in avionics, space, ground, and shipboard platforms by the services are generally based on the common effort formula shown in Equation 1. Size of

More information

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1

Software Processes. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model

Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model Agile Waterfall Hybrid Model The Waterfall Model has been the ideal choice for software development.

More information

LIFE-CYCLE MODELS AND PROCESS. Software Engineering 1/9/2008. CHAPTER 1, 2, and 3. Stephen R. Schach

LIFE-CYCLE MODELS AND PROCESS. Software Engineering 1/9/2008. CHAPTER 1, 2, and 3. Stephen R. Schach Slide 2.1 CHAPTER 1, 2, and 3 Slide 2.2 Object-Oriented Oriented Software Engineering WCB/McGraw-Hill, 2008 Stephen R. Schach srs@vuse.vanderbilt.edu SOFTWARE LIFE-CYCLE MODELS AND PROCESS Overview Slide

More information

Pertemuan 2. Software Engineering: The Process

Pertemuan 2. Software Engineering: The Process Pertemuan 2 Software Engineering: The Process Collect Your Project Topic What is Software Engineering? Software engineering is the establishment and sound engineering principles in order to obtain economically

More information

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK KINGS COLLEGE OF ENGINEERING DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK Subject Code & Subject Name: IT1251 Software Engineering and Quality Assurance Year / Sem : II / IV UNIT I SOFTWARE PRODUCT

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Without requirements and design, programming is the art of adding bugs to an empty text file. Louis Srygley Coding Is Essentially 0% of Creating Software

More information

Research Article / Paper / Case Study Available online at: Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India

Research Article / Paper / Case Study Available online at:  Analysis of Strengths and Weakness of SDLC Models Shikha Verma Delhi India ISSN: 2321-7782 (Online) Volume 2, Issue 3, March 2014 International Journal of Advance Research in Computer Science and Management Studies Research Article / Paper / Case Study Available online at: www.ijarcsms.com

More information

Rekayasa Perangkat Lunak 2 (IN043): Pertemuan 10. * Construction, Installation and Operations * Agile Method Software Development

Rekayasa Perangkat Lunak 2 (IN043): Pertemuan 10. * Construction, Installation and Operations * Agile Method Software Development Rekayasa Perangkat Lunak 2 (IN043): Pertemuan 10 * Construction, Installation and Operations * Agile Method Software Development Construction Construction is the development of all parts of the system,

More information

Chapter. Redesigning The Organization With Information Systems

Chapter. Redesigning The Organization With Information Systems Chapter Redesigning The Organization With Information Systems 1 Objectives Demonstrate how building new systems produces organizational change Explain how a company can develop information systems that

More information

Object-Oriented and Classical Software Engineering

Object-Oriented and Classical Software Engineering Slide 3.1 Object-Oriented and Classical Software Engineering Seventh Edition, WCB/McGraw-Hill, 2007 Stephen R. Schach srs@vuse.vanderbilt.edu CHAPTER 3 Slide 3.2 THE SOFTWARE PROCESS Overview Slide 3.3

More information

Learning Objectives. Agile Modeling and. Major Topics. Prototyping. Patched Up Prototype. Agile Modeling, but First. Prototyping

Learning Objectives. Agile Modeling and. Major Topics. Prototyping. Patched Up Prototype. Agile Modeling, but First. Prototyping Agile Modeling and Prototyping Systems Analysis and Design, 7e Kendall & Kendall 6 Learning Objectives Understand the roots of agile modeling in prototyping and the four main types of prototyping Be able

More information

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems

Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems Software Processes Based on Software Engineering, by Ian Sommerville Coherent sets of activities for specifying, designing, implementing and testing software systems Slide 1 Objectives To introduce software

More information

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014

Introduction to Software Life Cycles and Agile. CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014 Introduction to Software Life Cycles and Agile CSCI 5828: Foundations of Software Engineering Lecture 03 09/02/2014 1 Goals Present an introduction to the topic of software life cycles concepts and terminology

More information

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management Introduction to Software Project Management CITS3220 Software Requirements & Project Management "A project gets a year late one day at a time." "Anything that can be changed will be changed until there

More information

Installation and Maintenance of Health IT Systems

Installation and Maintenance of Health IT Systems Installation and Maintenance of Health IT Systems Software Development Life Cycle (SDLC) Model Software Development Life Cycle Learning Objectives 1. Define the steps of the Software Development Life Cycle

More information

Software Development Methodologies. CSC 440: Software Engineering Slide #1

Software Development Methodologies. CSC 440: Software Engineering Slide #1 Software Development Methodologies CSC 440: Software Engineering Slide #1 Topics 1. The Waterfall Model 2. Agile Software Development 3. The Unified Process 4. Object-Oriented Analysis and Design 5. The

More information

Part 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software?

Part 1. Software engineering Facts. CSC 4181 Compiler Construction Software Engineering Lectures. What is software engineering? What is software? Software engineering Facts CSC 4181 Compiler Construction Software Engineering Lectures Part 1 Fact: The economies of ALL developed nations are dependent on software. Fact: More and more systems are software

More information

TECHNICAL REVIEWS AND AUDITS

TECHNICAL REVIEWS AND AUDITS Chapter 11 Technical Reviews and Audits CHAPTER 11 TECHNICAL REVIEWS AND AUDITS 11.1 PROGRESS MEASUREMENT The Systems Engineer measures design progress and maturity by assessing its development at key

More information

Introduction to Systems Analysis and Design

Introduction to Systems Analysis and Design Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.

More information

Sistemi ICT per il Business Networking

Sistemi ICT per il Business Networking Corso di Laurea Specialistica Ingegneria Gestionale Sistemi ICT per il Business Networking Requirements Engineering Docente: Vito Morreale (vito.morreale@eng.it) 17 October 2006 1 UP Phases 1. Inception

More information

Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3.

Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS 9/17/2017. CHAPTER 3 Slide 3.2. Stephen R. Schach. Overview Slide 3. Slide 3.1 CHAPTER 3 Slide 3.2 Object-Oriented and Classical Software Engineering THE SOFTWARE PROCESS Eighth Edition, WCB/McGraw-Hill, 2011 Stephen R. Schach Overview Slide 3.3 Overview (contd) Slide 3.4

More information

The Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall

The Basic Waterfall Model. Software Process Models. Concurrent Development. (Concurrent Development) The Agile Critique of the Waterfall Software Process Models Critique & Defense of the Waterfall Issues in Waterfall Models concurrent development phase transitions and overlap Issues in Evolutionary Models incremental vs. iterative models

More information

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1

Lectures 2 & 3. Software Processes. Software Engineering, COMP201 Slide 1 Lectures 2 & 3 Software Processes Software Engineering, COMP201 Slide 1 What is a Process? When we provide a service or create a product we always follow a sequence of steps to accomplish a set of tasks

More information

Waterfall model is the earliest SDLC approach that was used for software development.

Waterfall model is the earliest SDLC approach that was used for software development. 1 Waterfall Model Guide These days there is a strong push for Agile Management, as opposed to Waterfall. Personally at Castellan Systems we believe that the agility should be applied to the project development

More information

[Name] [ ID] [Contact Number]

[Name] [ ID] [Contact Number] [Name] [Email ID] [Contact Number] THIS IS ONLY MODEL RESUME - DO NOT COPY AND PASTE INTO YOUR RESUME. PROFILE SUMMARY 15+ years of IT experience in Consulting and worked with the Major clients for the

More information

SE420 Software Quality Assurance

SE420 Software Quality Assurance SE420 Software Quality Assurance Lecture 1 Introduction Part-2 January 16, 2017 Sam Siewert Course Learning Objectives Theory of Overall SQA Process Process Models (Waterfall, Spiral, XP) using Agile Strategy

More information

V Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects

V Model material adapted from Steve Easterbrook. Waterfall Model material adapted from Steve Easterbrook. Lifecycle of Software Projects Lifecycle of Software Projects ECE450 Software Engineering II Lifecycle models are useful to compare project management strategies in abstract terms Birds-eye view strategy Detect strengths and weaknesses...

More information

Criteria for Method Selection and Process Design of a Technical Development Strategy

Criteria for Method Selection and Process Design of a Technical Development Strategy Criteria for Method Selection and Process Design of a Technical Development Strategy Suja Joseph-Malherbe CSIR sjoseph@csir.co.za sjosephmalherbe@gmail.com Copyright 2012 by Suja Joseph-Malherbe. Published

More information

Number: DI-IPSC-81427B Approval Date:

Number: DI-IPSC-81427B Approval Date: DATA ITEM DESCRIPTION Title: Software Development Plan (SDP) Number: DI-IPSC-81427B Approval Date: 20170313 AMSC Number: N9775 Limitation: N/A DTIC Applicable: No GIDEP Applicable: No Preparing Activity:

More information

Prof. Dr. Liggesmeyer, 1. Quality Management of Software and. Processes and QM. Systems. QMSS Processes and QM

Prof. Dr. Liggesmeyer, 1. Quality Management of Software and. Processes and QM. Systems. QMSS Processes and QM Quality Management of Software and Systems Processes and QM Prof. Dr. Liggesmeyer, 1 Contents V-Model XT Rational Unified Process (RUP) Extreme Programming (XP) Processes Prof. Dr. Liggesmeyer, 2 V-Model

More information

Oracle Unified Method (OUM) Using OUM with Agile Techniques. Jan Kettenis Oracle Global Methods Oracle Consulting Netherlands

Oracle Unified Method (OUM) Using OUM with Agile Techniques. Jan Kettenis Oracle Global Methods Oracle Consulting Netherlands Oracle Unified Method (OUM) Using OUM with Agile Techniques Jan Kettenis Oracle Global Methods Oracle Consulting Netherlands 1 1 The Agile Manifesto values Individuals and interactions Working software

More information

Command and Control Software Development Lessons Learned. Lt Col Michael D. Sarchet Deputy Director, Space Systems Command and Control Division

Command and Control Software Development Lessons Learned. Lt Col Michael D. Sarchet Deputy Director, Space Systems Command and Control Division Command and Control Software Development Lessons Learned Lt Col Michael D. Sarchet Deputy Director, Space Systems Command and Control Division 1 UNCLASSIFIED Agenda Two real world case studies Lessons

More information

Agile Development Doesn t Have to Mean Fragile Enterprise Processes

Agile Development Doesn t Have to Mean Fragile Enterprise Processes Fragile Enterprise Processes An MKS White Paper By: Colin Doyle ALM Strategic Product Manager MKS Inc. The Move to Agile Agile software development methodologies are garnering a lot of interest these days.

More information

Software Engineering Lecture 5 Agile Software Development

Software Engineering Lecture 5 Agile Software Development Software Engineering Lecture 5 Agile Software Development JJCAO Mostly based on the presentation of Software Engineering, 9ed Exercise Describe the main activities in the software design process and the

More information

Introduction to Agile/Extreme Programming

Introduction to Agile/Extreme Programming Introduction to Agile/Extreme Programming Matt Ganis, Senior Technical Staff Member (Certified Scrum Master) IBM Hawthorne, New York ganis@us.ibm.com August 2007 Session 8061 Current slides at: http://webpage.pace.edu/mganis

More information

Copyright Software Engineering Competence Center

Copyright Software Engineering Competence Center Copyright Software Engineering Competence Center 2012 1 Copyright Software Engineering Competence Center 2012 5 These are mapped categories to the waste categories of manufacturing. An excellent overview

More information

Identification of. 2 (25) - SOFTWARE ARCHITECTURE ATAM: Method for Architecture Evaluation - Sven Arne Andreasson - Computer Science and Engineering

Identification of. 2 (25) - SOFTWARE ARCHITECTURE ATAM: Method for Architecture Evaluation - Sven Arne Andreasson - Computer Science and Engineering ATAM: Method for Architecture Evaluation ATAM Focuses on quality attribute requirements. Critical to have precise characterizations for each quality attribute. Attribute-Based Architectural Styles The

More information

Component-based Development Process and Component Lifecycle

Component-based Development Process and Component Lifecycle -based Process and Lifecycle Ivica Crnkovic 1, Michel Chaudron 2, Stig Larsson 3 1 Mälardalen University, Department of Computer Science and Electronics, Sweden 2 Eindhoven University of Technology, Dept.

More information

Agile Project Management

Agile Project Management Object-Oriented Software Engineering Using UML, Patterns, and Java Agile Project Management Outline A mountaineering example Project context Goals, client types Environment, methods, tools, methodology

More information

Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan

Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan International Journal of Scientific & Engineering Research, Volume 7, Issue 12, December-2016 Analysis of Spiral Model in Software Projects for the Software Houses of Pakistan 1486 Muhammad Saleem 1 saleemstriker@hotmail.com

More information

An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB

An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB An Evolutionary Lifecycle Model with Agile Practices for Software Development at ABB Aldo Dagnino ABB US Corporate Research Center 1021 Main Campus Drive Raleigh, NC, USA aldo.dagnino@us.abb.com Abstract

More information

Quality Management of Software and Systems: Processes and QM

Quality Management of Software and Systems: Processes and QM Quality Management of Software and Systems: Processes and QM Contents V-Model XT Rational Unified Process (RUP) Extreme Programming (XP) Processes 2 V-Model XT Starting point: V-Model 97 Broadened guideline

More information

Object-Oriented & Classical Soft Engineering

Object-Oriented & Classical Soft Engineering Object-Oriented & Classical Soft Engineering Seventh Edition Stephen R. Schach Vanderbilt University Higher Education Boston Burr Ridge, IL Dubuque, IA New York San Francisco St. Louis Bangkok Bogota Caracas

More information

INF5181: Process Improvement and Agile Methods in Systems Development

INF5181: Process Improvement and Agile Methods in Systems Development INF5181: Process Improvement and Agile Methods in Systems Development Lecture 12 September 2017: Standard software process models. Understanding processes and their contexts E-mail: dagsj@ifi.uio.no INF5181

More information

Redesigning the Organization with Information Systems

Redesigning the Organization with Information Systems Chapter 14 Redesigning the Organization with Information Systems 14.1 2006 by Prentice Hall OBJECTIVES Demonstrate how building new systems produces organizational change Explain how a company can develop

More information

ICS 52: Introduction to Software Engineering

ICS 52: Introduction to Software Engineering ICS 52: Introduction to Software Engineering Fall Quarter 2004 Professor Richard N. Taylor Lecture Notes http://www.ics.uci.edu/~taylor/ics_52_fq04/syllabus.html Copyright 2004, Richard N. Taylor. Duplication

More information

Scrum, Creating Great Products & Critical Systems

Scrum, Creating Great Products & Critical Systems Scrum, Creating Great Products & Critical Systems What to Worry About, What s Missing, How to Fix it Neil Potter The Process Group neil@processgroup.com processgroup.com Version 1.2 1 Agenda Scrum / Agile

More information

2 Why is systems development difficult and risky? 3 How do businesses use the systems development life cycle (SDLC) process?

2 Why is systems development difficult and risky? 3 How do businesses use the systems development life cycle (SDLC) process? 1 What is systems development? 2 Why is systems development difficult and risky? 3 How do businesses use the systems development life cycle (SDLC) process? 4 How do businesses use the rapid application

More information

[control] [data] [process] [strategy] [partners] [testing] [validation]

[control] [data] [process] [strategy] [partners] [testing] [validation] [control] [data] [process] A practical approach to using Agile in an FDA regulated environment environment Jim Gunning Director, Q-CSV Johnson & Johnson [strategy] [partners] [testing] [validation] Agenda

More information

Information Systems Development

Information Systems Development Information Systems Development Based on Chapter 3 of Whitten, Bentley, and Dittman: Systems Analysis and Design for the Global Enterprise (7th Ed). McGraw Hill. 2007 Wei-Tsong Wang 1 IIM, NCKU 3 Objectives

More information

by Craig Larman and Bas Vodde Version 1.1

by Craig Larman and Bas Vodde Version 1.1 FEAURE EAM PRIMER by raig Larman and Bas Vodde Version 1.1 Feature s and Requirement Areas are key elements of scaling lean and agile development. hey are analyzed in depth in the Feature eam and Requirement

More information

Scrum. Software Engineering and. The Waterfall model. The Waterfall model - some arguments. The Waterfall model - some arguments. Time.

Scrum. Software Engineering and. The Waterfall model. The Waterfall model - some arguments. The Waterfall model - some arguments. Time. Software Engineering and Scrum autumn 2010 Department of Computer and Information Science Linköping University, Sweden The Waterfall model Requirements One of the first life-cycle models (Royce, 1970)

More information

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes

Objectives. Rapid software development. Topics covered. Rapid software development. Requirements. Characteristics of RAD processes Objectives Rapid software development To explain how an iterative, incremental development process leads to faster delivery of more useful software To discuss the essence of agile development methods To

More information

ISTQB Sample Question Paper Dump #11

ISTQB Sample Question Paper Dump #11 ISTQB Sample Question Paper Dump #11 1. Which of the following is true a. Testing is the same as quality assurance b. Testing is a part of quality assurance c. Testing is not a part of quality assurance

More information

AGILE SOLUTIONS. Agile Basics

AGILE SOLUTIONS. Agile Basics AGILE SOLUTIONS Agile Basics info@one80services.com one80services.com AGILE SOLUTIONS Agile Basics Table of Contents 2 Who We Are 3 What Is Agile? 4 Agile Values 5 Agile Principles 6 Agile Development

More information

Requirements Engineering and Agile Methodology

Requirements Engineering and Agile Methodology Requirements Engineering and Agile Methodology R. Kuehl/J. Scott Hawker p. 1 Requirements Engineering and Agile Processes (You may be thinking) Requirements engineering model as presented is not very agile

More information

7. What is planning? It is an act of formulating a program for a definite course of action. Planning is to decide what is to be done.

7. What is planning? It is an act of formulating a program for a definite course of action. Planning is to decide what is to be done. UNIT I FUNDAMENTALS 2 MARKS QUESTIONS & ANSWERS 1. What is software project management? Software project management is the art and science of planning and leading software projects. It is sub discipline

More information

The Product Creation Process

The Product Creation Process - 0. feasibility 1. definition 2. system 3. 4. integration & test 5. field monitoring needs verification core information Legend: in draft full under development most information 50% available in concept

More information

Some Well Known Software Development Life Cycle Models

Some Well Known Software Development Life Cycle Models Chapter 2 Some Well Known Software Development Life Cycle Models 2.1 Introduction It is really tough to draw a sharp line between software development approaches and Software Development Life Cycle (SDLC)

More information

SE420 Software Quality Assurance

SE420 Software Quality Assurance SE420 Software Quality Assurance Lecture 2 Software Specification Part-1 January 16, 2017 Sam Siewert SQA LO s (Learning Objectives) Theory and Principles 1. Coverage of Current SQA Theory and Practice

More information

Expand application range with respect to consider the whole system. Consider state of the art and adapt actual regulations and standards

Expand application range with respect to consider the whole system. Consider state of the art and adapt actual regulations and standards V-Model 97 is not state of the art in all fields No further development since that time 07/1997: update and release of V-Model 97 Increasingly applied in business, partially in SMBs, too Generally binding

More information

Contents. Today Project Management. What is Project Management? Project Management Activities. Project Resources

Contents. Today Project Management. What is Project Management? Project Management Activities. Project Resources Contents Last Time - Software Development Processes Introduction Software Development Processes Project Management Requirements Engineering Software Construction Group processes Quality Assurance Software

More information

The Agile PMP Teaching an Old Dog New Tricks

The Agile PMP Teaching an Old Dog New Tricks The Agile PMP Teaching an Old Dog New Tricks Why are we here today? What is Project Management? When will the project be done? How much will it cost? Do we all agree on what done looks like? What are the

More information

Reducing Business Risk

Reducing Business Risk July 2005 Reducing Business Risk Through Agile Development Fred Tingey Head of Risk Systems BNP Paribas Introduction Context What is Agile Programming? Traditional vs Agile approach A New Way to do Things

More information

SUSE Unified Delivery Process

SUSE Unified Delivery Process Guide www.suse.com SUSE Unified Delivery Process What Is the SUSE Unified Delivery Process? The SUSE Unified Delivery Process is a solution delivery process based on the IBM* Rational Unified Process*

More information

Lean Agile Methodologies Accentuate Benefits of Cloud Computing Yash Talreja, President, The Technology Gurus

Lean Agile Methodologies Accentuate Benefits of Cloud Computing Yash Talreja, President, The Technology Gurus Lean Agile Methodologies Accentuate Benefits of Cloud Computing Yash Talreja, President, The Technology Gurus Advances in technologies such as virtualization, storage and high-speed network access, as

More information

D25-4. How Intertech Uses Agile

D25-4. How Intertech Uses Agile D25-4 How Intertech Uses Agile How to Use this Download This document shares an overview of how we use Agile/Scrum to deliver successful projects, the major differences between a waterfall/fixed bid project

More information

Software System Integration. Chapter 8 Software testing 1

Software System Integration. Chapter 8 Software testing 1 Software System Integration Chapter 8 Software testing 1 Overview What is system integration? Integration process description Integration testing System Integration Checklist Chapter 8 Software testing

More information

Chapter 6: Software Evolution and Reengineering

Chapter 6: Software Evolution and Reengineering Chapter 6: Software Evolution and Reengineering Harald Gall Software Engineering Group www.ifi.unizh.ch/swe/ Universität Zürich Institut für Informatik Ian Sommerville 2004 Software Engineering, 7th edition.

More information

Scrum and Agile Processes. Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011

Scrum and Agile Processes. Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011 Scrum and Agile Processes Dr.-Ing. Oliver Ciupke Haufe-Lexware GmbH & Co. KG 2011 Scrum and Agile Processes: Outline Classical processes and their limitations Agile processes Scrum o Overview o History

More information

Chapter 2: The Project Management and Information Technology Context

Chapter 2: The Project Management and Information Technology Context Chapter 2: The Project Management and Information Technology Context TRUE/FALSE 1. Many of the theories and concepts of project management are difficult to understand. F PTS: 1 REF: 44 2. If project managers

More information

Software Engineering II - Exercise

Software Engineering II - Exercise Software Engineering II - Exercise April 29 th 2009 Software Project Management Plan Bernd Bruegge Helmut Naughton Applied Software Engineering Technische Universitaet Muenchen http://wwwbrugge.in.tum.de

More information

Attribute-Driven Design Method

Attribute-Driven Design Method 1 Attribute-Driven Design Method April 2014 Ying SHEN SSE, Tongji University 2 Lecture objectives This lecture will enable student to understand ADD steps design the architecture using ADD method 3 Architecture

More information

SOFTWARE ENGINEERING

SOFTWARE ENGINEERING Page 1 MCA302 SOFTWARE ENGINEERING UNIT I - SOFTWARE PROCESS Introduction S/W Engineering Paradigm life cycle models (water fall, incremental, spiral, WINWIN spiral, evolutionary, prototyping, object oriented)

More information

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs.

What are requirements? Basics of Requirement Engineering. Definition of a Stakeholder. Stated Vs. Real Requirements. Stated Vs. What are requirements? Basics of Requirement Engineering Muzaffar Iqbal Farooqi A requirement is a necessary attribute in a system, a statement that identifies a capability, characteristic, or quality

More information

Use Cases and User Stories for Agile Requirements

Use Cases and User Stories for Agile Requirements Use Cases and User Stories for Agile Peter Schmidt, PMP, PMI-ACP, CPL VP, Client Services, ESI International pschmidt@esi-intl.com www.esi-intl.com Agenda 1 2 3 Principles Identify the principles that

More information

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016

Introduction to Agile Life Cycles. CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016 Introduction to Agile Life Cycles CSCI 5828: Foundations of Software Engineering Lecture 07 09/13/2016 1 Goals Introduction to Agile Life Cycles The Agile Manifesto and Agile Principles Agile Life Cycles

More information

Evolutionary Differences Between CMM for Software and the CMMI

Evolutionary Differences Between CMM for Software and the CMMI Evolutionary Differences Between CMM for Software and the CMMI Welcome WelKom Huan Yín Bienvenue Bienvenido Wilkommen????S???S??? Bienvenuto Tervetuloa Välkommen Witamy - 2 Adapting an An Integrated Approach

More information

Application of an Agile Development Process for EN50128/railway conformant

Application of an Agile Development Process for EN50128/railway conformant Application of an Agile Development Process for EN50128/railway conformant Software T. Myklebust SINTEF ICT, Trondheim, Norway T. Stålhane NTNU, Trondheim, Norway N. Lyngby SINTEF ICT, Trondheim, Norway

More information

When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment

When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment When the Business Wants Waterfall Implementing Agile in a Phase-Based Environment Marjorie Farmer Wireline & Perforating Global Software Discipline Manager Agenda Halliburton Situation and Challenges LIFECYCLE

More information

The effect of moving from a plan-driven to an incremental software development approach with agile practices

The effect of moving from a plan-driven to an incremental software development approach with agile practices Empir Software Eng (2010) 15:654 693 DOI 10.1007/s10664-010-9136-6 The effect of moving from a plan-driven to an incremental software development approach with agile practices An industrial case study

More information

Task 1: Multiple Choice (25%)

Task 1: Multiple Choice (25%) 1 All subparts give equally score. Document and justify any assumptions. Task 1: Multiple Choice (25%) Use the two attached answer forms for this task (keep one for yourself). You can get a new form from

More information

Software Engineering Fall 2014

Software Engineering Fall 2014 Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 09/17/2014 What is next Deliverable? Due: 09/19/2014 1. Problem Statement with Shall statements 2. RTM (4

More information

Agile Plus Comprehensive model for Software Development

Agile Plus Comprehensive model for Software Development Agile Plus Comprehensive model for Software Development Amit Juyal Umesh Kumar Tiwari Lata Nautiyal Shashidhar G. Koolagudi Assistant Professor Assistant Professor Assistant Professor Professor Graphic

More information

Agile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University

Agile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University Agile Tutorial for the Senior Project Class School of Computing and Information Sciences Florida International University What is Agile? In simple terms, Agile is a collection of ideas to guide both the

More information