Ch7: Software Production Process. 1 Questions  What is the life cycle of a software product?  Why do we need software process models?  What are the.

Slides:



Advertisements
Similar presentations
Chapter 7: Software production process Refers to the activities that are used for building, delivering, deploying, and evolving a software product, from.
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
1 Software Processes A Software process is a set of activities and associated results which lead to the production of a software product. Activities Common.
CS487 Software Engineering Omar Aldawud
Chap 2. Software Processes
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
Chapter 2 – Software Processes
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Software Engineering COMP 201
Chapter 1 The Systems Development Environment
Chapter 6: Design of Expert Systems
Unit 231 Software Engineering Introduction to SWE What is SDLC Phases of SDLC.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 3Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing.
Unit 191 Introduction to Software Engineering The objective of this section is to introduce the subject of software engineering. When you have read this.
Software Engineering General Project Management Software Requirements
1 SWE Introduction to Software Engineering Lecture 5.
Software lifecycle. CS351 - Software Engineering (AY2004)2 Software lifecycle “student view” Design & Specification Coding Testing (optional) Hand it.
L ECTURE 2 S OFTWARE P ROCESSES 1. O BJECTIVES To describe outline process models for requirements engineering, software development, testing and evolution.
Software Development Overview CPSC 315 – Programming Studio Spring 2008.
Maintenance = Software Evolution Any changes after the client has accepted the product is considered maintenance. n Any Changes? n What might these be?
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Chapter 2- Software Process Lecture 4. Software Engineering We have specified the problem domain – industrial strength software – Besides delivering the.
Software Process Activities. Process activities Real software processes are inter-leaved sequences of technical, collaborative and managerial activities.
CMSC 345, Version 1/03 An Overview of Software Processes Reference: Software Engineering, by Ian Sommerville, 6 th edition, Chapter 3.
Software Life Cycle Model
Lecture 2 Software Processes CSC301-Winter 2011 Hesam C. Esfahani
1 Software Construction Software Construction Chapter 1.
Ch. 71 The software production process. Ch. 72 Questions What is the life cycle of a software product? Why do we need software process models? What are.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
SDLC – A Brief Introduction
©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.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Software Processes l Coherent sets of activities for specifying, designing,
Lecture 3 Software Engineering Models (Cont.)
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
An Introduction to Software Engineering
CS205 Software Engineering_Overview Specifications: The Ariane 6 must be able to deliver both satellite hardware and crew into geostationary orbit. (Ariane.
Software Engineering - Abdul Majeed. What is software? Definition of Software Engineering Software Process Generic view of Software Engineering Software.
Software Life Cycle The software life cycle is the sequence of activities that occur during software development and maintenance.
1-1 Software Development Objectives: Discuss the goals of software development Identify various aspects of software quality Examine two development life.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Ch7: Software Production Process. 1 Waterfall models  Invented in the late 1950s for large air defense systems, popularized in the 1970s  Main characteristics:
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
CSI 1340 Introduction to Computer Science II Chapter 1 Software Engineering Principles.
IS444: Modern tools for applications development Dr. Azeddine Chikh.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
1)History of water fall model. 2)Features of water fall model. 3)Phase of water fall model. 4)Brief description of phases. 5)Advantages. 6)Disadvantages.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Lectures 2 & 3: Software Process Models Neelam Gupta.
Welcome to Software Project Management. CONVENTIONAL SOFTWARE MANAGEMENT The BEST and WORST thing about software is its flexibility. 1.Software development.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
C_ITIP211 LECTURER: E.DONDO. Unit 1 : The Systems Development Environment.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini II. Software Life Cycle.
Chapter3:Software Processes
CS 389 – Software Engineering
Software Process Activities.
Topic for Presentaion-2
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Life Cycle Models PPT By :Dr. R. Mall.
Software Processes.
Chapter 2 – Software Processes
An Overview of Software Processes
An Overview of Software Processes
Baisc Of Software Testing
CS310 Software Engineering Lecturer Dr.Doaa Sami
Requirements Engineering
Presentation transcript:

Ch7: Software Production Process

1 Questions  What is the life cycle of a software product?  Why do we need software process models?  What are the goals of a software process and what makes it different from other industrial processes?

2 Software production process  What is a software process?  Goal:  Hard to automate the production process:  Production models attempt to capture the software life cycle.

3 Software production process (contd..)  Engineering disciplines have well-define processes  For example, to build a house:  Can software have a similar, methodological approach?

4 Life cycle of a software product  What is a software life cycle?  Activities in the software life cycle

5 Software process model  Attempt to organize the software life cycle by  Goals of a software process

6 Code and fix model  Earlier programmers used the code-and-fix approach:  Source of difficulties and deficiencies:

7 Need for models  Need for sophisticated models:  Symptoms of inadequacy of the code & fix model: the software crisis

8 Need for models (contd..)  Software development process needed to:  Boehm states that the goals of a process model are:

9 Process as a black-box Product Process Informal Requirements

10 Process as a white-box

11 Main activities in software production  Relationship between the main activities:

12 Feasibility study  What is a feasibility study?  People:  Produces a Feasibility Study Document

13 Feasibility study (contd..)  For a commercial product:  For a product to be used in-house  Customized software

14 Requirements engineering  Purpose:  People:  Focus on

15 Requirements engineering (contd..)  Understand:  Identify:  Requirements analysis and elicitation activities produces a:

16 Requirements specification document  Provides:  Has its own qualities  Role of stakeholders  Relationship with testing:

17 Requirements specification document (contd..)  As any large document, it must be modular  Vertical modularity:  Horizontal modularity:

18 Requirements specification document (contd..)  Functional requirements:  Non-functional requirements:

19 Software architecture and detailed design  Purpose:  People:  Produces a:  Decomposition usually has two phases:

20 Software architecture and detailed design (contd..)  Design alternatives are suggested and evaluated:

21 Code and module testing  Purpose:  People:  Coding and algorithm alternatives are implemented and evaluated:

22 Code and module testing  Coding may be subject to company-wide standards:  Module testing may also follow company standards:  Other activities:

23 Integration and system testing  Purpose:  People:  Integration may be done incrementally through subsystems  The last step is system test  Alpha testing:

24 Integration and system testing (contd..)  Company standards may apply to:

25 Delivery and maintenance  Purpose:  People:  Delivery is done in two stages:

26 Delivery and maintenance (contd..)  Maintenance might be better named evolution  Lientz and Swanson’s study:  Changes to user requirements (42%)  Changes in the data format (17%)  Emergency fixes (12%)  Routine debugging (9%)  Hardware changes (6%)  Improvements in documentation (5%)  Improvements in efficiency (4%)  Other (5%)

27 Delivery and maintenance (contd..)  Role of requirements analysis on maintenance:  Many errors are not removed until the system is delivered.  Change is an intrinsic property of software, but hard to incorporate into a product.

28 Other software activities  Some activities span all phases of life cycle  Documentation  Verification:

29 Other software activities (contd..)  Management:  Three main aspects: