Вы находитесь на странице: 1из 9


2 Software Process Models

Emphasis on flexibility in producing software quickly and capably

is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.

Customer satisfaction Welcome changing requirements

Working software is delivered frequently

Working software is the principal measure of progress Sustainable development Close Face-to-face conversation is the best form of communication Projects are built around motivated individuals Continuous attention to technical excellence and good design

Self-organizing teams Regular adaptation to changing circumstances

Modularity is a key element of any good process. Modularity allows a process to be broken into components called activities.

Short cycle is repeated many times to refine the deliverables.

Time Bound
Setting time limits in every Iteration and scheduling them accordingly.

require a minimal number of activities necessary to mitigate risks and achieve their goals.

During an iteration, new risks may be exposed which require some activities that were not planned.

An agile process does not try to build the entire system at once. Instead, it partitions the nontrivial system into increments which may be developed in parallel, at different times, and at different rates..

Convergence states that we are actively attacking all of the risks worth attacking.

People Oriented
Agile processes favor people over process and technology.

Agile processes foster communication among team members.

oExtreme Programming(XP)
Is a software development methodology which is intended to improve software quality and responsiveness to changing customer requirements. As a type of agile software development, it advocates frequent releases in short development cycles (time boxing), which is intended to improve productivity and introduced checkpoints where new customer requirements can be adopted.

oScrum Development
is an iterative and incremental agile software development method for managing software projects and product or application development.

oCrystal Clear
can be applied to teams of up to 6 or 8 co-located developers working on systems that are not life-critical. The Crystal family of methodologies focus on efficiency and habitability as components of project safety. Crystal Clear focuses on people, not processes or artifacts.