Series on Software Development Methodologies and Processes – Part 2

This is a continuation of my previous blog post on April 25th, 2012 titled Series on Software Development Methodologies and Processes – Part 1

Over the year’s software development is being done based on various development approaches.  Depending on the customer’s style of approach towards software development, its IT strategy and more importantly on the business challenges, various methodologies and related processes have come into existence. In Part 2 of this series let us see the key development methodologies that are being currently practiced:

The way I see software development methodologies is, that they are more like standards. I would categorize the methodologies as ‘Forerunners’ and ‘Challengers’

The Forerunners Group of Software Development Methodologies

Scrum is an agile project management methodology. This methodology mainly works by implementing small sets of practices and predefined roles. This methodology works in an interative process called Sprints. Its popularity is based mainly on it use of ‘commonsense’ practices that can be implemented in many situations. Scrum is also dependent on other methodologies during the actual build of the application/software.

Extreme Programming
Extreme Programming (or XP) is an agile software engineering methodology. This process practices the best practices that are dealt at the ‘extreme level’. Ongoing changes to requirements are a regular aspect of this software development process. XP acts as a complementary to Scrum and fixes some of the gaps that Scrum leaves. Daily software engineering activities are some of the key activities that happen in this methodology.

Rational Unified Process (RUP)
RUP is customized for specific organizations and projects. It key aim is to provide a complete solution. RUP uses a tool developed by IBM Rational. RUP works in 4 phases – Inception Phase, Elaboration Phase, Construction Phase, Transition Phase. Key features include iterative development, visual mode and control changes

Dynamic Systems Development Method
Dynamic Systems Development Method (DSDM) is a agile project management methodology is based upon the concepts of Rapid Application Development. DSDM is similar in lines of Scrum methodology and has the real work being done by the development teams. Project management practice is considerably lower compared to the development teams work.

Projects in Controlled Environments (Prince2) is a project management methodology. Prince 2 emphasizes many processes and activities covering the management, control and organization of projects, and is deliberately not restricted to IT projects.

To learn more on each of the methodologies, I have included the hyperlinks to Wikipedia to all. We will continue with the ‘Challengers’ to these ‘Forerunners’ as Part 3 of this series in my subsequent blogs.

To learn in-depth overview Amzur Technologies Application Development methodology, please visit our website at and use our Contact Us page to submit a request.

To receive a free complementary 1 hour technical and business analysis consulting service, call us at 813-600-4060 ext 124 or email us at

Authored by Meher Goru, Amzur Technologies, Inc.