Chapter : Software Process

Slides:



Advertisements
Similar presentations
Departemen Ilmu Komputer IPB
Advertisements

PROCESS FRAMEWORK Lecture - 3. Topics covered PROCESS FRAMEWORK PROCESS MODELS DIFFERENCE.
1.1 S/W LIFE CYCLE MODELS 1.2 UNDERSTANDING S/W PROCESS
Chapter 2 The Software Process
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 LECTURE-3 CSE-477.
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.
CMMI Overview Quality Frameworks.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Developed by Reneta Barneva, SUNY Fredonia The 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.
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.
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.
Software Engineering II Lecture 1 Fakhar Lodhi. Software Engineering - IEEE 1.The application of a systematic, disciplined, quantifiable approach to the.
Chapter 2 Software Process: A Generic View
Chapter 2 The process Process, Methods, and Tools
Chapter 2 The Process.
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.
J. R. Burns, Texas Tech University Capability Maturity Model -- CMM n Developed by the Software Engineering Institute (SEI) in 1989 –SEI is a spinoff.
1M.Sc.(I.T.), VNSGU, Surat. Structured Analysis Focuses on what system or application is required to do. It does not state how the system should be implement.
Chapter 2 소프트웨어공학 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.
PART ONE The Product and the Process Chapter 2 The Process  Software Engineering: A Layered Technology a “quality” focus process model methods tools.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Chapter 2 Process: A Generic View
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,
Lecture Topics covered CMMI- - Continuous model -Staged model PROCESS PATTERNS- -Generic Process pattern elements.
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
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.
Developed by Reneta Barneva, SUNY Fredonia The Process.
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.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
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;
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Software Engineering Introduction.
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.
CMMI Overview Quality Frameworks. Slide 2 of 146 Outline Introduction High level overview of CMMI Questions and comments.
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.
Layered Technology Software Process Framework Generic Process Framework Activities Process Models 6/14/20162.
Software Project Management Unit 1. Evolving role of software S/w now a days resides in the mobile, mainframes The main role of the s/w is to transform.
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 Process: A Generic View
Chapter 2 The Process.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
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.
Software Engineering Lecture 16.
Software Engineering I
Presentation transcript:

Chapter : Software Process

Chapter - Topic Covered Layered Technology Software Process Framework Generic Process Framework Activities Umbrella Activities CMMI Level

Overview What? A software process – as a framework for the tasks that are required to build high-quality software. Who? Managers, software engineers, and customers. Why? Provides stability, control, and organization to an otherwise chaotic activity. Steps? A handful of activities are common to all software processes, details vary. Work product? Programs, documents, and data.

What is software engineering? Definition : (1) The application of systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software.(2) The study of approaches as in (1) above Its a discipline that is concerned with all aspects of software production. Software engineers should adopt Systematic and organized approach to their work Use appropriate tools and techniques depending on the problem to be solved The development constraints and the resources available Apply Engineering Concepts to developing Software Challenge for Software Engineers is to produce high quality software with finite amount of resources & within a predicted schedule

Software Engineering – Layered Technology Tools: CASE preferred Methods: technical “how to’s” Process model: the “framework” A quality focus: the “bedrock” computer-aided software engineering (CASE)

Layered Technology A quality Focus Process: Every organization is rest on its commitment to quality. Total quality management, Six Sigma, or similar continuous improvement culture and it is this culture ultimately leads to development of increasingly more effective approaches to software engineering. The bedrock that supports software engineering is a quality focus. Process: It’s a foundation layer for software engineering. It’s define framework for a set of key process areas (KRA) for effectively manage and deliver quality software in a cost effective manner The processes define the tasks to be performed and the order in which they are to be performed

Layered Technology Methods: Tools: It provide the technical how-to's for building software. Methods encompass a broad array of tasks that include requirements analysis, design, program construction, testing, and support. There could be more than one technique to perform a task and different techniques could be used in different situations. Tools: Provide automated or semi-automated support for the process, methods and quality control. When tools are integrated so that information created by one tool can be used by another, a system for the support of software development, called computer-aided software engineering (CASE)

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

Process framework Why process : A process defines who is doing what, when and how to reach a certain goal. To build complete software process. Identified a small number of framework activities that are applicable to all software projects, regardless of their size or complexity. It encompasses a set of umbrella activities that are applicable across the entire software process.

Process Framework Each framework activities is populated by a set for software engineering actions – a collection of related tasks. Each action has individual work task.

Generic Process Framework Activities Communication: Heavy communication with customers, stakeholders, team Encompasses requirements gathering and related activities Planning: Workflow that is to follow Describe technical task, likely risk, resources will require, work products to be produced and a work schedule. Modeling: Help developer and customer to understand requirements (Analysis of requirements) & Design of software Construction Code generation: either manual or automated or both Testing – to uncover error in the code. Deployment: Delivery to the customer for evaluation Customer provide feedback

The Process Model: Adaptability The framework activities will always be applied on every project ... BUT The tasks for each activity will vary based on: The type of project (an “entry point” to the model) Characteristics of the project Common sense judgment; concurrence of the project team

Umbrella Activities Software project tracking and control Assessing progress against the project plan. Take adequate action to maintain schedule. Formal technical reviews Assessing software work products in an effort to uncover and remove errors before goes into next action or activity. Software quality assurance Define and conducts the activities required to ensure software quality. Software configuration management Manages the effects of change. Document preparation and production Help to create work products such as models, documents, logs, form and list. Reusability management Define criteria for work product reuse Mechanisms to achieve reusable components. Measurement Define and collects process, project, and product measures Assist the team in delivering software that meets customer’s needs. Risk management Assesses risks that may effect that outcome of project or quality of product (i.e. software)

Capability Maturity Model Integration (CMMI) The Software Engineering Institute (SEI) has developed process meta-model to measure organization different level of process capability and maturity. CMMI – developed by SEI 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 practices refine a goal into a set of process-related activities.

CMMI Level Level 0 (Incomplete) – Process are not perform or not achieve all the goals and objectives defined by the CMMI for Level I capability. Level 1 (Performed) – All specific goals are performed as per defined by CMMI Level 2 (Managed) – All level 1 criteria have been satisfied In addition to Level I; People doing work have access to adequate resources to get job done, Stakeholders are actively involved, Work tasks and products are monitored, controlled, reviewed, and evaluated for conformance to process description. Level 3 (Defined) – All level 2 criteria have been achieved. In addition; management and engineering processes documented standardized and integrated into organization-wide software process

CMMI Level (cont.) Level 4 (Quantitatively Managed) - All level 3 criteria have been satisfied. Software process and products are quantitatively understood Controlled using detailed measures and assessment. Level 5 (Optimized) – Continuous process improvement is enabled by quantitative feedback from the process and testing innovative ideas.