unified process,agile process,process assesment ppt

41
PRESENTED BY: SHWETA GHATE TRUPTI DIWAN PRATIMA JADHAV SAPNA VASAVE MIT COLLEGE OF ENGINEERING,PUNE. Unified Process, Agile process, Process Assessment

Upload: shweta-ghate

Post on 04-Dec-2014

341 views

Category:

Documents


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Unified process,agile process,process assesment ppt

PRESENTED BY:SHWETA GHATETRUPTI DIWAN

PRATIMA JADHAVSAPNA VASAVE

MIT COLLEGE OF ENGINEERING,PUNE.

Unified Process, Agile process,Process Assessment

Page 2: Unified process,agile process,process assesment ppt

Agenda

Unified Process

Agile Process

Process Assessment

Page 3: Unified process,agile process,process assesment ppt

What is Process ???

SEP i.e. Software Engineering Process

Defines who, what, when and how of developing software.

Software Engineering Process

New or Changed

requirements

New or Changedsystem

Page 4: Unified process,agile process,process assesment ppt

What is Unified Process ??

Unified process (UP) is an architecture-centric, use-case driven, iterative and incremental development process that leverages unified modeling language and is compliant with the system process engineering metamodel.

A popular iterative modern process model (framework) derived from the work on the UML and associated process.

Page 5: Unified process,agile process,process assesment ppt

Unified Process

The leading object-oriented methodology for the development of large-scale software

Maps out when and how to use the various UML techniques

Develop high-risk elements in early iterations

Deliver value to customer

Page 6: Unified process,agile process,process assesment ppt

Creating the Unified Process

Rational Unified Process 5.01998

Rational Objectory Process 4.11996-1997

Objectory Process 1.0-3.81987-1995

Ericsson Approach

Rational Approach

IBM Approach

Unified Process 1998

OO Approach

Page 7: Unified process,agile process,process assesment ppt

The Unified Process

The Unified Process is an adaptable methodology.

The Unified Process is a modeling technique.

UML stands for unified modeling language.

• The object-oriented paradigm is iterative and incremental in nature

Page 8: Unified process,agile process,process assesment ppt

Unified Process PhasesInception

Establish the business case for the system, define risks, obtain 10% of the requirements, estimate next phase effort.

Elaboration Develop an understanding of the problem domain and the

system architecture, risk significant portions may be coded/tested, 80% major requirements identified.

Construction System design, programming and testing. Building the

remaining system in short iterations. Transition

Starts when beta testing is completed, Deploy the system in its operating environment. Deliver releases for feedback and deployment

Page 9: Unified process,agile process,process assesment ppt

The Phases/Workflows Of Unified Process

lPhase is Business context of a step

Workflow is Technical context of a step

Page 10: Unified process,agile process,process assesment ppt

The Phases/Workflows Of Unified Process

l NOTE: Most of the requirements work or workflow is done in the inception phase.

l However some is done later.

Page 11: Unified process,agile process,process assesment ppt

The Phases/Workflows Of Unified Process

l NOTE: Most of the implementation work or workflow is done in construction

l However some is done earlier and some later.

Page 12: Unified process,agile process,process assesment ppt

Example roles in UP

Stake Holder: customer, product manager, etc.

Software Architect: established and maintains architectural vision

Process Engineer: leads definition and refinement of Development Case

Graphic Artist: assists in user interface design, etc.

Page 13: Unified process,agile process,process assesment ppt

Agile Process

Page 14: Unified process,agile process,process assesment ppt

Agenda

Manifesto for Agile Software DevelopmentWhat is Agility?Agile Teams Agility and the Cost of ChangeAn Agile ProcessThe principles of agile methods Human FactorsAgile Process ModelsAgile ModelingConclusion

Page 15: Unified process,agile process,process assesment ppt

Manifesto for Agile Software Development“We are uncovering better ways of developing software by

doing it and helping others do it. Agile values:1. Individuals and interactions- in agile development, self

organization & motivation are important

2. Working software- working software will be more useful and welcome than just presenting documents to clients in meetings

3. Customer collaboration-requirements cant be fully collected at the beginning of the software development cycle, therefore continuous customer involvement is important

4. Responding to change- agile development is focused on quick responses to change and continuous development

Page 16: Unified process,agile process,process assesment ppt

Agility

Effective response to changeEffective communication among all

stakeholdersDrawing the customer into the team. Organizing a team so that it is in control of the

work performed

In order to yield rapid, incremental delivery of software

Page 17: Unified process,agile process,process assesment ppt

Agile Teams

Responsive to changes during project development

Recognize that project plans must be flexible

Eliminates the separation between customers and developers

Page 18: Unified process,agile process,process assesment ppt

Agility and the Cost of Change

Conventional wisdom is that the cost of change increases nonlinearly as a project progresses. It is relatively easy to accommodate a change when a team is gathering requirements early in a project.

Page 19: Unified process,agile process,process assesment ppt

Agility and the Cost of Change

Page 20: Unified process,agile process,process assesment ppt

An Agile Process

Is driven by customer descriptions of what is required (scenarios). Some assumptions: Recognizes that plans are short-lived (some requirements will

persist, some will change. Customer priorities will change) Develops software iteratively with a heavy emphasis on

construction activities (design and construction are interleaved, hard to say how much design is necessary before construction. Design models are proven as they are created. )

Analysis, design, construction and testing are not predictable. Thus has to Adapt as changes occur due to unpredictabilityDelivers multiple ‘software increments’, deliver an operational

prototype or portion of an OS to collect customer feedback for adaption.

Page 21: Unified process,agile process,process assesment ppt

Human Factors

The process molds to the needs of the people and team, not the other way around

key traits must exist among the people on an agile team : Competence. ( talent, skills, knowledge) Common focus. ( deliver a working software increment ) Collaboration. ( peers and stakeholders) Decision-making ability. ( freedom to control its own destiny) Fuzzy problem-solving ability.(ambiguity and constant

changes, today problem may not be tomorrow’s problem) Mutual trust and respect. Self-organization. ( themselves for the work done, process for

its local environment, the work schedule)

Page 22: Unified process,agile process,process assesment ppt

Agile Process Models

Extreme Programming (XP)Adaptive Software Development (ASD)Agile Modeling (AM)

Page 23: Unified process,agile process,process assesment ppt

Extreme programming

The most widely used agile process.Defines 4 framework activities

PlanningDesignCodingTesting

Page 24: Unified process,agile process,process assesment ppt

Extreme programming

24

planningplanning

designdesign

codingcoding

testtest

refactoring

user stories values acceptance test criteriaiteration plan

simple design CRC cards

spike solutions prototypes

pair programming

unit test continuous integration

acceptance testing

software increment project velocity computedsoftware increment project velocity computed

Release

Page 25: Unified process,agile process,process assesment ppt

Extreme programming

XP Planning Begins with the creation of “user requirements” Agile team assesses it and assigns a

cost They are grouped to form a deliverable

increment A commitment is made on delivery date After the first increment “project velocity” is used to help

define subsequent delivery dates for other increments

Page 26: Unified process,agile process,process assesment ppt

Extreme programming

XP DesignFollows the KIS principleFor difficult design problems, suggests the

creation of “spike solutions”—a design prototype

Encourages “refactoring”—an iterative refinement of the internal program design

Page 27: Unified process,agile process,process assesment ppt

Extreme programming

XP CodingRecommends the construction of a unit test

for a store before coding commences.Encourages “pair programming”.

XP TestingAll unit tests are executed daily“Acceptance tests” are defined by the

customer and executed to assess customer visible functionality

Page 28: Unified process,agile process,process assesment ppt

Adaptive Software Development (ASD)

Self-organization arises when independent agents cooperate to create a solution to a problem that is beyond the capability of any individual agent

Adaptive cycle characteristics Mission-driven planning Component-based focus Uses “time-boxing” Explicit consideration of risks Emphasizes collaboration for requirements gathering Emphasizes “learning”

Page 29: Unified process,agile process,process assesment ppt

Three Phases of ASD

adaptive cycle planning uses mission statement project constraints basic requirements time-boxed release plan

Requirements gathering J AD mini-specs

components implemented/ tested focus groups for feedback formal technical reviews postmortems

software incrementadjustments for subsequent cycles

Release

Page 30: Unified process,agile process,process assesment ppt

Three Phases of ASD

1. Speculation: Project is initiated and adaptive cycle planning

is conducted.Adaptive cycle planning uses project initiation

information.Based on the information obtained at the

completion of the first cycle, the plan is reviewed and adjusted.

Page 31: Unified process,agile process,process assesment ppt

Three Phases of ASD

2. Collaborations

Are used to multiply their talent and creative output

beyond absolute number (1+1>2).

It encompasses communication and teamwork, but it

also emphasizes individualism.

Page 32: Unified process,agile process,process assesment ppt

Three Phases of ASD

3. Learning:As members of ASD team begin to develop the

components, the emphasis is on “learning”.Learning will help them to improve developers level of

real understanding.Three ways: focus groups, technical reviews and project

postmortems

Page 33: Unified process,agile process,process assesment ppt

Process Assessment

Page 34: Unified process,agile process,process assesment ppt

What is Process Assessment

An objective model-independent method to assess the capability of an organization to meet the process goals

About collecting information

A way to demonstrate program effectiveness

Page 35: Unified process,agile process,process assesment ppt

Assessment Method

Assessment StagesKey PlayersInitiationPreparationAssessmentAnalysis and ReportingClosure

Page 36: Unified process,agile process,process assesment ppt

Assessment Stages

Initiation

Preparation

Assessment

Analysisand

Reporting

Closure

Page 37: Unified process,agile process,process assesment ppt

Initiation (stage 1)

Define theinputs

• identify the assessment purpose• select the assessment model• define goals for the assessment• identify the business drivers• identify constraints• document assumptions• identify additional information gathering requirements• identify feedback and output requirements• complete the assessment brief

Sanctionthe

business case

• costs and benefits• decision to proceed

Select the Resources

Outputs• assessment purpose• constraints• assessment goals• confidentiality agreements• quality measures to be collected

Page 38: Unified process,agile process,process assesment ppt

Assessment (stage 3)

Gather Information

• conduct interviews• study documentation• document findings

• consolidate the findings• rate the goals• rate the process• feedback initial conclusions• determine the Organizational Unit’s Capability Level

Reach Consensus

• on ALL ratings!

Conduct• according assessment plan• adapt plan for changes and feedback• data collection by interview or document• data review for process ratings• assessors agree on ratings before submitting them to the Lead Assessor

Types• measurement only (no analysis)• Findings & Recommendations• Findings & Action Planning

Page 39: Unified process,agile process,process assesment ppt

Analysis & Reporting (stage 4)

AnalyseFindings

DisseminateFindings

IdentifyAction Plan

issue Final Report

• Strengths & Weaknesses• Gap Analysis• Identify Improvement Opportunities

• semi-formal interactive feedback session

• prioritise improvements according impact & effort against business drivers• Cost/benefit Analysis• Schedule of improvement roll-out

• management findings & recommendations• summary assessment process & key players• results compared with targets• detailed process findings

Page 40: Unified process,agile process,process assesment ppt

Closure (stage 5)

Post-AssessmentReview

• results of the analysis of the participants feedback forms• the assessments’ achievements against its goals• the overall level of confidence in the assessments results• any problems the assessors experienced during the assessment including problems with the use of the method• the successes achieved• the techniques used during the assessment• the organizational unit and the Sponsor's response to the results

• Lead Assessor ensures that the Assessment Conformance Checklist is complete and signed-off.

Page 41: Unified process,agile process,process assesment ppt

Thank You