software project methods

22
The Definitive List of Software Development Methodologies

Post on 18-Oct-2014

21.024 views

Category:

Technology


1 download

DESCRIPTION

A summary of the more popular software develpment processes and methods.

TRANSCRIPT

Page 1: Software Project Methods

The Definitive List of Software Development Methodologies

Page 2: Software Project Methods

Words by Jurgen

Page 3: Software Project Methods

Scru

m

Page 4: Software Project Methods

Scrum agile software development

Created by Ken Schwaber and Jeff Sutherland

Scrum is a skeleton that includes a small set of practices and predefined roles.

Scrum is becoming a de facto standard for managing agile software development projects.

One reason for Scrum's popularity is that it consists of only a few common sense practices that can be applied in many situations. This also means that Scrum by itself is never enough, and that development teams have to shop in other methods (usually XP) for additional practices.

Page 5: Software Project Methods

Extreme Extreme Programming (XP)Programming (XP)

Page 6: Software Project Methods

Extreme Programming (XP)

agile software developmentCreated by Kent Beck XP is a set of best practices of

which some are taken to an "extreme" level.

As with other agile methods, XP regards ongoing changes to requirements as a natural and desirable aspect of software development.

In the selection of its practices XP leans towards the daily software engineering activities of developers.

XP is often seen as complementary to Scrum, filling most of the holes that Scrum leaves wide open.

Page 7: Software Project Methods

Lean

S

oft

ware

D

evelo

pm

en

t

Page 8: Software Project Methods

Lean Software Developmentagile software development

Originally promoted by Mary and Tom Poppendieck

Translated from lean manufacturing to the software development domain.

Lean Software Development is adapted from the Toyota product development system, and it is the embodiment of the "lean" subculture that exists within the agile community (and that has by now become big enough not to be able to call itself lean anymore).

It is said that the lean and agile concepts form a perfect match.

Page 9: Software Project Methods

Unified

Process

Page 10: Software Project Methods

Unified Processsoftware engineering framework

Created by Ivar Jacobson, Grady Booch and James Rumbaugh.

The USDP is an extensible framework that should be customized for specific organizations and projects.

It aims to be a complete solution, which means that the full framework is far too big for all but a few projects.

However, stripping the framework to its bare essentials is like turning a plane into a bicycle. It might be easier simply to select another more lightweight method.

Page 11: Software Project Methods

Rational Unified Process (RUP)

Page 12: Software Project Methods

Rational Unified Process (RUP)

software engineering framework

Created and maintained by the people at Rational Software (now owned by IBM), including Philippe Kruchten.

It is a commercial product delivered as a more detailed version of the Unified Software Development Process (which is presented as a generic public domain process).

This also means that the RUP suffers from the same problem as the USDP, being bloated and too costly to customize for small projects.

Page 13: Software Project Methods

D

S

D

M

Page 14: Software Project Methods

Dynamic Systems Development Method (DSDM) agile project management

created and maintained by the UK-based DSDM Consortium, which includes both vendors and experts.

It was originally based upon the concepts of Rapid Application Development.

DSDM finds itself on the same level as Scrum, meaning that it lists a small number of practices for project management of software development, while leaving the details of the real work (building a product) to be filled in by the development teams.

Page 15: Software Project Methods

Prince2

Page 16: Software Project Methods

Prince2 (Projects in Controlled Environments)

project management methodology

Developed by the UK’s Office of Government Commerce (OGC).

Prince2 describes many processes and activities covering the management, control and organization of projects, and is deliberately not restricted to IT projects.

Even though Prince2’s popularity makes it a de facto standard for project management (particularly in Europe), it is criticized (by many including me) for being too prescriptive, too big and not easily customizable.

Page 17: Software Project Methods

PMBOK

Page 18: Software Project Methods

Project Management Body of Knowledge (PMBOK)

project management methodology, Developed by the US-based Project Management Institute (PMI).

It is an internationally recognized standard providing the fundamentals of project management, not limited to IT-projects.

Similar to Prince2, the PMBOK describes many processes and activities, though the PMBOK can be seen as being descriptive (what), while in contrast Prince2 is more prescriptive (how).

Their main similarity is that both are criticized for not being agile.

Page 19: Software Project Methods

CMMI

Page 20: Software Project Methods

Capability Maturity Model Integration (CMMI) software engineering model, Developed by Watts Humphrey

The CMMI aids in the definition and understanding of an organization’s processes and was originally intended as a tool for assessing the maturity of an organization’s processes.

These days it is also used as a roadmap for process improvement. The CMMI is heavily criticized for focusing on processes rather than people, and it may lead organizations down the road of bureaucracy.

Page 21: Software Project Methods

Pictures CC from Flickr

Check the slide notes for source details

Page 22: Software Project Methods

Want to comment?Leave a note below or click the links to our blog posts.

Jurgen - Noop.nlCraig - Betterprojects.net