28
Ch-1 Introduction The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…

Ch-1 Introduction

  • Upload
    minh

  • View
    35

  • Download
    1

Embed Size (px)

DESCRIPTION

Ch-1 Introduction. The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…. Continue. There is an need to evaluate processes used in organization for executing s/w projects and to improve them.. - PowerPoint PPT Presentation

Citation preview

Page 1: Ch-1 Introduction

Ch-1 Introduction

The processes used for executing a software project have major effect on quality of s/w produced and productivity achieved in project…

Page 2: Ch-1 Introduction

Continue

There is an need to evaluate processes used in organization for executing s/w projects and to improve them..

CMM for s.w developed by SEI is a framework that can be used for both purposes…

Page 3: Ch-1 Introduction

Process Based Approach for Project Execution What is software development project?

-> it is the project in which a s/w product is developed to fulfill the customer needs and is delivered within a specified cost and time.

When is project successful?

-> when it meets or exceeds the expectations on all three parameters- cost, schedule and quality. A key success parameter is set of processes followed in the project.

Page 4: Ch-1 Introduction

Continue

There are several reasons for project failure such as improper estimation, requirements management, weak project management etc. These reasons can be combined into category called process failure.

High quality and productivity are two aims of project for delivering a s/w product.

Q&P depends on 3 factors: process, people and technology. This relationship is called quality triangle. It is similar to process-technology-leadership triangle and also known as iron triangle.

Page 5: Ch-1 Introduction

Process, people and technology triangle

process Technology

People

Q & P

Page 6: Ch-1 Introduction

Capability Maturity Model

Many frameworks are available such as ISO 9001, CMM, Trillium, SPICE and BOOTSTRAP.

But two most prominent are ISO 9001 and CMM. CMM is framework that focuses on processes

for software development. It can be used both to evaluate s/w process and to process improvements.

One objective is to distinguish mature process from immature process.

Page 7: Ch-1 Introduction

Continue

The range of results expected when project is executed using software process of an organization is software process capability.

The actual result achieved is called software process performance.

There are 5 levels in CMM which are initial, repeatable, defined, managed and optimizing.

Page 8: Ch-1 Introduction

Continue

Level-1 initial

Level-5 Optimizing

Level-2 repeatable

Level-3 defined

Level-4 managed

Page 9: Ch-1 Introduction

Continue

In level 1 an organization executes a project in a manner that a team and project manager see fit. The processes are used on an ad hoc basis.

In level 2 project management practices are well established.

In level 3 the software processes for the organization have been precisely defined and regularly followed.

In level 4 quantitative understanding of process capability makes it possible to predict and control the process performance.

In level 5 the process improves continuously.

Page 10: Ch-1 Introduction

Continue

Each maturity level is characterized by some key process area (KPA) that specify the areas on which the organization should elevate its process to that maturity level except level 1.

Page 11: Ch-1 Introduction

KPAs in different levels

Each KPA specifies a group of activities called key practices.

The key practices are organized into various groups called commitment to perform, ability to perform, activities performed, measurements and analysis and verifying implementation.

Page 12: Ch-1 Introduction

ContinueList of some of the KPAs:- For level 2:-

-> requirement management

-> software project planning

-> software project tracking and oversight

-> software subcontract management

-> software quality assurance

-> software configuration management

Page 13: Ch-1 Introduction

Continue For level 3:-

-> organization process focus

-> organization process definition

-> training program

-> integrated software management

-> software product engineering

-> intergroup coordination

-> peer reviews

Page 14: Ch-1 Introduction

Continue Level 4:-

-> software quality management

-> quantitative process management Level 5:-

-> process change management

-> technology change management

-> defect prevention

Page 15: Ch-1 Introduction

Assessment Method

The approach that organizations used for process assessment is called CMM based appraisal for internal process improvement (CBA-IPI).

Another form of assessment is called software capability evaluation, that place at the request of some customer (usually).

CBA-IPI helps in improving the process. Assessment is performed by an assessment

team.

Page 16: Ch-1 Introduction

Continue

There are three main sources of information:

-> Maturity questionnaire

-> Documentation

-> Interviews

Page 17: Ch-1 Introduction

Processes at Infosys

Some factors that helps in deploying and changing the processes and in implementing CMM are:

-> Senior managers who are s/w professionals

-> Process orientation and adoption of ISO.

-> A strong commitment to measurement and transparency

-> A training program

-> Use of technology

Page 18: Ch-1 Introduction

Process Architecture and Documentation

process

subactivities

stages

activities

Page 19: Ch-1 Introduction

SEPG and Software Process Improvement Planning The core group that takes the responsibility for

coordinating the process activities in the organization is called Software Engineering Process Group.

At infosys, the SEPG consist of quality professionals whose duty is monitoring and improving the process for improving the Q&P.

Process definition and enhancement are key activities of SEPG.

Page 20: Ch-1 Introduction

Continue

SEPG member is associated with a project as a quality advisor. He provides assistance in defining and following processes, ensures that the processes are followed. Aids in analyzing the data, and provides specific training on some aspects of processes.

In addition one senior SEPG person is assigned as a group leader to look after process activities of a business unit.

The major tasks of the SEPF focus on process management, training, process deployment and audits

Page 21: Ch-1 Introduction

Effort distribution of SEPG

Page 22: Ch-1 Introduction

Senior management involvement

Page 23: Ch-1 Introduction

Process life cycle

Infosys uses a simpler model for process management, which is also a derivative of the PDCA cycle.

Life cycle has three major steps:

-> process defination

-> process implementation and deployment

-> process analysis and change

Page 24: Ch-1 Introduction

Continue

Process definitionImplementation and

deployment

Process analysis andchange

Page 25: Ch-1 Introduction

Continue

Process definition:-

-> It is defined for a task that transforms some inputs to outputs. The goal is to specify a process that will perform a task in an optimal manner. Generally divide-and-conquer approach will be performed.

The main participants are SEPG members, members of task force, process users and senior management.

Page 26: Ch-1 Introduction

Continue

Process implementation :--> it includes those activities that must be carries

out to implement new process or to implemement changes to an existing process.

Changes are of two types: -> major-> minor-> In minor process changes the process definition

and proposed changes are reviewed and a notification is sent to all users.

Page 27: Ch-1 Introduction

Continue

Implementation to major changes resembles the implementation of new process.

The participants in this phase are SEPG, senior management, process users and pilot projects

Page 28: Ch-1 Introduction

Continue

Process analysis and change:-

-> It includes those activities which are carried out to identify a need for changes to existing processes and to handle the change request.

-> Input to this stage is change requests and main output is changed process.

-> it is having 3 stages; project planning, project execution and project closure.