TyroCity

Discussion on: Software Development Strategies and what to consider while choosing what to use?

Collapse
 
shantamilan profile image
ShantaMilan

The three main software development strategies are as follows.

Waterfall Strategy

This strategy has 7 steps which are planning, analysis, design, development, testing, implementation and maintenance. Each step has been chronologically places and every step needs to be fulfilled completely before moving on to the next step. Different teams may work on various steps which they then hand over to the next team. But one major shortcoming of this strategy is that circumstance change and so does the design. For this the waterfall has to be revisited to the planning stage and reworked which is inefficient, time consuming and even frustrating. This strategy has been used a lot but its success rate is discouraging.

Interative Method

This method uses 6 steps which are all the steps used in waterfall except maintenance. This method is time bound and does the best from the resources available at hand. One major advantage of this over waterfall is that it deals with fast changing environment and makes changes accordingly. Various steps are conducted at the same time unlike waterfall. Another aspect that this method holds is that it is customer driven. It means that they take feedback loop from their prototype and make appropriate changes from the suggestions received before the final launch.

Agile Method

This method as its name suggests is very flexible in nature. Various groups and steps are mixed and are developed cohesively. This gives more priority to team work. It even involved the customers or business users in the development process and so is very constructive and innovative in nature. This method is very quick and usually takes 2-6 weeks to get it done. This method exceeds the other two in terms of innovation fostered by mutual team work resulting in fostering of trust between the team members and even the end users. "Agile development methodology has had a higher success rate than any other software methodology. Despite agile methodology’s success, agile projects face challenges. (Litchmore, 2016)”

Factors necessary for choosing a software development strategy

No method of software development is perfect in itself. All have their advantages and disadvantages. While choosing a software a company should understand the goal of the software and how it impact the overall organization in the long run. It is therefore important to draw up an enterprise architecture first based on which the application and use of software can be pointed out. The later implications of poorly planned software development will be too costly and the damage will already have be done. (Wallace, 2015) The company should understand the cost of development and maintenance cost in future, the flexibility for changes in the software if the need arises and its practical implication to meet the enterprise goal. Return on investment should be higher than the cost related to its development

References

Litchmore, K. A. (2016). A comparative study of agile methods, people factors, and process factors in relation to project success. Ann Arbor: ProQuest Dissertations Publishing.

Wallace, P. (2015). Information System in Action. In P. Wallace, Introduction to Information System (pp. 4-9). New Jersey: Pearson Education, Inc.