These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.

Slides:



Advertisements
Similar presentations
PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
Advertisements

Slide Set to accompany Web Engineering: A Practitioner’s Approach
Chapter 2 The Software Process
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter 2 Process Models
May 14, May 14, 2015May 14, 2015May 14, 2015 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific University, Azusa,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CS487 Software Engineering Omar Aldawud
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.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering Introduction. Why are you here? …alternatively, why do we think you need to be here? Why a course on software engineering? How is.
Chapter : Software Process
Process: A Generic View
Process: A Generic View n A software process  is a roadmap to building high quality software products.  provides a framework for managing activities.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
Chapter 2 Software Process: A Generic View
Chapter 2 The process Process, Methods, and Tools
Chapter 2 Process: A Generic View
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.
Chapter 2 소프트웨어공학 Software Engineering 임현승 강원대학교
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Coming up: Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering - I
Chapter 4 프로세스 모델 Process Models
Process: A Generic View
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter.
The Software Process Chapter – II. Topics S/w Engg – A layered Technology A Process Framework Process Patterns Process Assessment Product and Process.
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.
1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 7/e Chapter 2.
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Chapter 2 A Generic View of Process Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
1 2.1 Software Engineering Software engineering is a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software;
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)
CS 281 Intro to Software Engineering Lecture 02 Software Engineering (1)
Software Engineering (CSI 321) Software Process: A Generic View 1.
Software Engineering CE 501 Prepared by : Ashwin Raiyani.
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.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter 2.
How Software Projects Start SW projects start with a need. We need to keep better data on the students in the CSCE Dept. I heard that one of our competitors.
1 Chapter 1 Software and Software Engineering Software Engineering: A Practitioner’s Approach, 7th edition by Roger S. Pressman.
Software Life Cycle “What happens in the ‘life’ of software”
Software Engineering (CSI 321)
Chapter 2 Software Engineering
Chapter 2 Process: A Generic View
Chapter 2 The Process.
Chapter 2 Software Engineering
Chapter 2 Process Models
For University Use Only
Chapter 2 Process Models
Chapter 2 The Process.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
For University Use Only
Chapter 2 Process Models
Chapter 4 Process Models
Chapter 2 Process Models
Chapter 2 Process Models
Presentation transcript:

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Software Engineering  The application of  systematic, disciplined, quantifiable approach  to the development, operation, and maintenance of software;  that is, the application of engineering to software.  The study of approaches as pointed above. The IEEE definition

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, A Layered Technology Software Engineering a “quality” focus process model methods tools

Process Process Defines who is doing what, when, and how to reach a certain goal. Defines who is doing what, when, and how to reach a certain goal. Forms the basis for management control of software projects. Forms the basis for management control of software projects. Methods Methods technical “how to”s for building software technical “how to”s for building software Broad array of tasks: communication, requirements analysis, design modeling, program construction, testing, and support Broad array of tasks: communication, requirements analysis, design modeling, program construction, testing, and support Tools Tools Automated support for process and methods Automated support for process and methods These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001,

5 A Process Framework Process framework Framework activities work tasks work tasks work products work products milestones & deliverables milestones & deliverables QA checkpoints QA checkpoints Umbrella Activities Process framework Umbrella Activities Framework activity 1 Framework activity n Software Process

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, A Process Framework Process framework Framework activities work tasks work products milestones & deliverables QA checkpoints Umbrella Activities Process framework Modeling activity Modeling activity Software Engineering action : Analysis work tasks: requirements gathering, work tasks: requirements gathering, elaboration, negotiation, elaboration, negotiation, specification, validation specification, validation work products: analysis model and/or requirements specification requirements specification milestones & deliverables QA checkpoints Software Engineering action : Design work tasks: data design, architectural, interface design, interface design, component design component design work products: design model work products: design model and/or design specification and/or design specification Umbrella Activities

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Framework Activities Communication Communication Planning Planning Modeling Modeling Analysis of requirements Analysis of requirements Design Design Construction Construction Code generation Code generation Testing Testing Deployment Deployment Delivery Delivery Feedback Feedback

Activity: Communication Activity: Communication Task set for a relatively simple project Task set for a relatively simple project Make a list of stakeholders for project Make a list of stakeholders for project Invite all stakeholders for an informal meeting Invite all stakeholders for an informal meeting Ask each stakeholder to make a list of required features and functions Ask each stakeholder to make a list of required features and functions Discuss requirements and build a final list Discuss requirements and build a final list Prioritize requirements Prioritize requirements Note areas of uncertainty Note areas of uncertainty Task set for a larger project Task set for a larger project … These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001,

Activity: Communication, Action: requirement gathering Task set for a relatively simple project … Task set for a relatively simple project … Task set for a larger project Task set for a larger project Make a list of stakeholders for project Make a list of stakeholders for project Interview each stakeholder separately Interview each stakeholder separately Build a preliminary list of required features and functions Build a preliminary list of required features and functions Schedule a series of facilitated requirement gathering meetings Schedule a series of facilitated requirement gathering meetings Conduct meetings Conduct meetings Produce informal user scenarios as part of each meeting Produce informal user scenarios as part of each meeting Refine user scenarios based on stakeholder feedback Refine user scenarios based on stakeholder feedback Build a revised list of stakeholder requirements Build a revised list of stakeholder requirements Use quality function deployment techniques to prioritize requirements Use quality function deployment techniques to prioritize requirements Package requirements so that they can be delivered incrementally Package requirements so that they can be delivered incrementally Note constraints and restrictions that will be placed on the system Note constraints and restrictions that will be placed on the system Discuss methods for validating the system Discuss methods for validating the system

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Typical Umbrella Activities Software project tracking and control Software project tracking and control Risk management Risk management Software quality assurance Software quality assurance Formal technical reviews Formal technical reviews Measurement Measurement Software configuration management Software configuration management Reusability management Reusability management Work product preparation and production Work product preparation and production

Software project tracking and control Software project tracking and control To maintain schedule … To maintain schedule … Risk management Risk management Software quality assurance Software quality assurance Formal technical reviews Formal technical reviews Uncover and remove errors before they propagate to the next action Uncover and remove errors before they propagate to the next action Measurement Measurement Process, project and product measures Process, project and product measures Software configuration management Software configuration management Manages the effects of change Manages the effects of change Reusability management Reusability management Work product preparation and production Work product preparation and production Create models, documents, logs, forms, lists … Create models, documents, logs, forms, lists … 11

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, The Process Model: Adaptability the framework activities will always be applied on every project... BUT the framework activities will always be applied on every project... BUT the tasks (and degree of rigor) for each activity will vary based on: the tasks (and degree of rigor) for each activity will vary based on: the type of project the type of project characteristics of the project characteristics of the project common sense judgment; concurrence of the project team common sense judgment; concurrence of the project team

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, The CMMI Capability Maturity Model Integration The CMMI defines each process area in terms of “specific goals” and the “specific practices” required to achieve these goals. The CMMI defines each process area in terms of “specific goals” and the “specific practices” required to achieve these goals. Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective. Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective. Specific practices refine a goal into a set of process- related activities. Specific practices refine a goal into a set of process- related activities.

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Process Patterns Process patterns define a set of activities, actions, work tasks, work products and/or related behaviors Process patterns define a set of activities, actions, work tasks, work products and/or related behaviors A template is used to define a pattern A template is used to define a pattern Typical examples: Typical examples: Customer communication (a process activity) Customer communication (a process activity) Analysis (an action) Analysis (an action) Requirements gathering (a process task) Requirements gathering (a process task) Reviewing a work product (a process task) Reviewing a work product (a process task) Design model (a work product) Design model (a work product)

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Process Assessment The process should be assessed to ensure that it meets a set of basic process criteria that have been shown to be essential for a successful software engineering The process should be assessed to ensure that it meets a set of basic process criteria that have been shown to be essential for a successful software engineering.

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Assessment and Improvement

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Personal Software Process (PSP) Recommends five framework activities: Recommends five framework activities: Planning Planning High-level design High-level design High-level design review High-level design review Development Development Postmortem Postmortem stresses the need for each software engineer to identify errors early and as important, to understand the types of errors stresses the need for each software engineer to identify errors early and as important, to understand the types of errors

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, Team Software Process (TSP) Each project is “launched” using a “script” that defines the tasks to be accomplished Each project is “launched” using a “script” that defines the tasks to be accomplished Teams are self-directed Teams are self-directed Measurement is encouraged Measurement is encouraged Measures are analyzed with the intent of improving the team process Measures are analyzed with the intent of improving the team process

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, The Primary Goal of Any Software Process: High Quality Remember: High quality = project timeliness Why? Less rework!