Site icon Mohamed Sami

Choosing the right Software development life cycle model

Choosing the right SDLC

Selecting a Software Development Life Cycle (SDLC) methodology is a challenging task for many organizations and software engineers. What tends to make it challenging is the fact that few organizations know what are the criteria to use in selecting a methodology to add value to the organization. Fewer still understand that a methodology might apply to more than one Life Cycle Model. Before considering a framework for selecting a given SDLC methodology, we need to define the different types and illustrate the advantages and disadvantages of those models (please see the Software Development Life Cycle Models and Methodologies).

How to select the right SDLC

Selecting the right SDLC is a process in itself that the organization can implement internally or consult for. There are some steps to get the right selection.

STEP 1: Learn the about SDLC Models

SDLCs are the same in their usage. In order to select the right SDLC, you should have enough experience and be familiar with the SDLCs that will be chosen and understand them correctly.

As described in the software development life cycle models article, models are similar to the tools that important to know each tool usage to know which context it can fit into.

Imagine the image below by Jacob Lawrence, if the carpenter did not know the tools he will use, what will be the results? Did you visualize the disaster?

By Jacob Lawrence

STEP 2: Assess the needs of Stakeholders

We must study the business domain, stakeholders concerns and requirements, business priorities, our technical capability and ability, and technology constraints to be able to choose the right SDLC against their selection criteria.

STEP 3: Define the criteria

Some of the selection criteria or arguments that you may use to select an SDLC are:

What are the criteria?

Here are my recommended criteria, It will be good to share any new criteria you see that it will be valid

FactorsWaterfallV-ShapedEvolutionary PrototypingSpiralIterative and IncrementalAgile
Unclear User RequirementPoorPoorGoodExcellentGoodExcellent
Unfamiliar TechnologyPoorPoorExcellentExcellentGoodPoor
Complex SystemGoodGoodExcellentExcellentGoodPoor
Reliable systemGoodGoodPoorExcellentGoodGood
Short Time SchedulePoorPoorGoodPoorExcellentExcellent
Strong Project ManagementExcellentExcellentExcellentExcellentExcellentExcellent
Cost limitationPoorPoorPoorPoorExcellentExcellent
Visibility of StakeholdersGoodGoodExcellentExcellentGoodExcellent
Skills limitationGoodGoodPoorPoorGoodPoor
DocumentationExcellentExcellentGoodGoodExcellentPoor
Component reusabilityExcellentExcellentPoorPoorExcellentPoor
Selection Criteria

STEP 4: Decide

When you define the criteria and the arguments you need to discuss with the team, you will need to have a decision matrix and give each criterion a defined weight and score for each option. After analyzing the results, you should document this decision in the project artifacts and share it with the related stakeholders.

STEP 5: Optimize

You can always optimize the SDLC during the project execution, you may notice upcoming changes do not fit with the selected SDLC, it is okay to align and cope with the changes. You can even make your own SDLC model which optimum for your organization or the type of projects you are involved in.

[cite]

References

Software Development Life Cycle Models and Methologies. (2012, 3). Retrieved from melsatar.blog:  Software Development Life Cycle Models and Methodologies

Help to do more!

The content you read is available for free. If you’ve liked any of the articles at this site, please take a second to help us write more and more articles based on real experiences and maintain them for you and others. Your support will make it possible for us.

$10.00

Click here to purchase.

Also published on Medium.

Summary
Article Name
Choosing the right Software development life cycle model
Description
Selecting a Software Development Life Cycle (SDLC) methodology is a challenging task for many organizations and software engineers. What tends to make it challenging is the fact that few organizations know what are the criteria to use in selecting a methodology to add value to the organization.
Author
Publisher Name
Publisher Logo
Exit mobile version