Chapter 4 Review Chad Hagstrom CS 310 Spring 2008.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
Advertisements

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 501: Software Engineering Fall 2000 Lecture 2 The Software Process.
Lecture # 2 : Process Models
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 المحاضرة الثانية.
CEN nd Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi Software Process Models.
1 Chapter 4 - Part 1 Software Processes. 2 Software Processes is: Coherent (logically connected) sets of activities for specifying, designing, implementing,
Soft. Eng. II, Spring 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter II Chap1: Software Engineering Models (Review) Mandatory reading: chapter.
Chapter 2 – Software Processes
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
Software Processes Coherent sets of activities for specifying, designing, implementing and testing software systems.
Software Engineering COMP 201
Soft. Eng. I, Spring 07Dr Driss Kettani, from I. Sommerville1 CSC-3324: Chapter 5 Requirements Engineering Reading: Chap. 6, 7 + annex.
1 CS 501 Spring 2003 CS 501: Software Engineering Lecture 2 Software Processes.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 3Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
CS 425/625 Software Engineering Software Processes
©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.
1 SWE Introduction to Software Engineering Lecture 5.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 1 Socio-technical Systems.
L ECTURE 2 S OFTWARE P ROCESSES 1. O BJECTIVES To describe outline process models for requirements engineering, software development, testing and evolution.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
The web application development process Basharat Mahmood, COMSATS Institute of Information Technology, Islamabad, Pakistan. 1.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Software Process Activities. Process activities Real software processes are inter-leaved sequences of technical, collaborative and managerial activities.
Chapter 3 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
1 CMPT 275 Software Engineering Software life cycle.
Software Processes Sumber dari : cc.ee.ntu.edu.tw/~farn/courses/SE/ch4.ppt.
©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.
Instructor: Peter Clarke
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Software Processes (Chapter 3)
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 3 Slide 1 Chapter 3 Software Processes.
©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,
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
Lecture 3 Software Engineering Models (Cont.)
Database System Development Lifecycle 1.  Main components of the Infn System  What is Database System Development Life Cycle (DSDLC)  Phases of the.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
An Introduction to Software Engineering
Chapter 12 Review Chad Hagstrom CS 310 Spring 2008.
1 CS 501 Spring 2004 CS 501: Software Engineering Lecture 2 Software Processes.
Introduction to Software Development (Software Engineering - I)
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©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 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
PI2134 Software Engineering IT Telkom.  Layered technology  Software Process  Generic Process (by Pressman)  Fundamental activities (by Sommerville)
Software Engineering, 8th edition. Chapter 4 1 Courtesy: ©Ian Sommerville 2006 FEB 13 th, 2009 Lecture # 5 Software Processes.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 310 Ch 4: Software Processes Software process: a set of activities that lead to a software system specification design and implementation validation.
1 SYS366 Week 2 - Lecture Visual Modeling and Process.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini II. Software Life Cycle.
Chapter3:Software Processes
CHAPTER 2 Testing Throughout the Software Life Cycle
Software Processes.
An Overview of Software Processes
CS310 Software Engineering Lecturer Dr.Doaa Sami
Presentation transcript:

Chapter 4 Review Chad Hagstrom CS 310 Spring 2008

Concepts Overview Primary Concepts: * The Main Software Process Phases: Specification, Design, Implementation, Validation, and Evolution * Models for Software Development * Description of CASE Tools

Processes: Specification Determines what system to build via these stages: * Feasibility Study – Is the software affordable, possible, and beneficial? * Reqs. Elicitation & Analysis – Determine what the customer wants the system to do. Involves research, modeling, user interviews, etc. * Reqs. Specification – Convert Elicitation & Analysis results into formal, concrete requirements. * Reqs. Validation – Look for errors, omissions, etc.

Processes: Design & Impl. Determines how to build the system via these stages: * Architectural Design – Create the types and interactions of sub- systems. * Abstract Specification – Define what the sub-systems will provide, as well as their restrictions. * Interface Design – Specifies how sub-systems communicate with one another. * Component Design – Divide sub-systems into smaller pieces to carry out the sub-system's tasks. * Data Structure Design – Create data storage and retrieval methods. * Algorithm Design – Create algorithms that carry out the system's tasks.

Processes: Validation Tests the system for errors via these stages: * Component testing – Ensures that the pieces function properly on their own. * System testing – Ensures that the pieces function properly when put together. * Acceptance testing – Ensures that the overall system does what the specifications say (verification) and that it meets the customer's expectations (validation).

Processes: Evolution * Systems are often upgraded based on future requirements alterations by customers. * This process is normally far less expensive compared to equivalent hardware evolution.

Process Models There are 3 main models in Chapter 4 for carrying out the SW process tasks: * Waterfall – Near-total separation of process phases. * Evolutionary – Simultaneous progression on process phases. * Component-Based – Building the software via pre-made pieces.

Models: Waterfall * Requirements, design, etc. are kept (almost) completely separate. * Future process stages are not allowed to begin until prior stages are fully completed and documented. * Changes made to already-completed stages require a total re-work of those stages, starting w/ the earliest. * It is simpler to view project progress, but making frequent system changes is highly inefficient. * Typically works best for giant SW systems.

Models: Evolutionary * Requirements, design, etc. are allowed to progress simultaneously. * Changes made to various process stages are handled more efficiently than with the Waterfall model. * However, documentation is typically not produced frequently, so progress measurement is difficult. * Keeping the software flexible may involve sub-par structuring techniques. * Typically works best for medium, dynamic systems.

Models: Component-Based * Constructs the system via pre-built software pieces. * Involves acquiring, altering, and adding pre-made code into the desired system. * Allows for decreased development time and money, but restricts requirements & design flexibility.

CASE Tools * CASE – Computer Aided Software Engineering * Refers to software that is devoted to helping developers with tasks in the software creation process. * Includes: Code compilers, model creation software, program debuggers, etc.

Conclusion My New Ch. 4 Perspectives: * Realization of how high-level Ch. 4's descriptions of the software processes are, compared to later chapters. * Observation of how the component-based model sounds more appealing to me now than before. Utilization of Ch. 4's Content: * My project has thus far been developed with an evolutionary approach.

References * Ian Sommerville's Software Engineering (8 th ed)‏ * Professor Carol Shilepsky's PowerPoint slides at aurora.wells.edu