Question

In: Computer Science

Using the library, Internet, and your course materials, research information about software development methodologies. Select at...

Using the library, Internet, and your course materials, research information about software development methodologies. Select at least 3 different development methodologies. Write 400–600 words to address the following:


Provide a brief description for each of your selected methodologies.


Include at least 3 characteristics of each methodology


Discuss the advantages and disadvantages of each methodology


Cite all references using APA formatting.


Create a table to summarize your findings, as follows:


Solutions

Expert Solution

Three software development methodologies are as follow:

  1. Rapid Application Development.
  2. Agile Development methodology.
  3. Waterfall development method

Waterfall development method

Waterfall Development model was first SDLC Model to be used widely in Software Engineering to ensure success of the project. In "The Waterfall" approach, the whole process of software development is divided into separate phases. In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially.

Characteristics of model:

  • Requirements are very well documented, clear and fixed.

  • Product definition is stable.

  • Technology is understood and is not dynamic.

  • There are no ambiguous requirements.

  • Ample resources with required expertise are available to support the product.

  • The project is short.

Some of the major advantages of the Waterfall Model are as follows −

  • Simple and easy to understand and use

  • Easy to manage due to the rigidity of the model. Each phase has specific deliverables and a review process.

  • Phases are processed and completed one at a time.

  • Works well for smaller projects where requirements are very well understood.

  • Clearly defined stages.

  • Well understood milestones.

  • Easy to arrange tasks.

  • Process and results are well documented.

The major disadvantages of the Waterfall Model are as follows −

  • No working software is produced until late during the life cycle.

  • High amounts of risk and uncertainty.

  • Not a good model for complex and object-oriented projects.

  • Poor model for long and ongoing projects.

  • Not suitable for the projects where requirements are at a moderate to high risk of changing. So, risk and uncertainty is high with this process model.

  • It is difficult to measure progress within stages.

  • Cannot accommodate changing requirements.

Agile Development Methodology:

Agile development method is develop to overcome the disadvantages of other models like structured or waterfall.

In all agile methods, teams develop the software in iterations that contain mini-increments of the new functionality.

There are many different forms of the agile development method, including scrum, crystal, extreme programming (XP), and feature-driven development (FDD).

Another good thing about it is that it minimizes peril by creating software in short time boxes, known as iterations, which happen to last from one week to one month.

Characteristics of agile method:

  • Scrumis the most popular way of introducing Agility due to its simplicity and flexibility.
  • Testing is integrated throughout the lifecycle, enabling regular inspection of the working product as it develops.
  • Agile development principles encourage ‘user/client’ active involvement throughout the product’s development process.
  • In agile development, change is accepted.

The advantages of the Agile Model are as follows −

  • Is a very realistic approach to software development.

  • Promotes teamwork and cross training.

  • Functionality can be developed rapidly and demonstrated.

  • Resource requirements are minimum.

  • Suitable for fixed or changing requirements

  • Delivers early partial working solutions.

The disadvantages of the Agile Model are as follows −

  • Not suitable for handling complex dependencies.

  • More risk of sustainability, maintainability and extensibility.

  • An overall plan, an agile leader and agile PM practice is a must without which it will not work.

  • Strict delivery management dictates the scope, functionality to be delivered, and adjustments to meet the deadlines.

Rapid application development

Rapid application development is a software development methodology that uses minimal planning in favor of rapid prototyping. A prototype is a working model that is functionally equivalent to a component of the product.

In the RAD model, the functional modules are developed in parallel as prototypes and are integrated to make the complete product for faster product delivery. Since there is no detailed preplanning, it makes it easier to incorporate the changes within the development process.

RAD projects follow iterative and incremental model and have small teams comprising of developers, domain experts, customer representatives and other IT resources working progressively on their component or prototype.

The most important aspect for this model to be successful is to make sure that the prototypes developed are reusable.

Characteristics of Rapid:

  • RAD should be used only when a system can be modularized to be delivered in an incremental manner.

  • It should be used if there is a high availability of designers for Modelling.

  • It should be used only if the budget permits use of automated code generating tools.

  • RAD SDLC model should be chosen only if domain experts are available with relevant business knowledge.

The advantages of the RAD Model are as follows −

  • Changing requirements can be accommodated.

  • Progress can be measured.

  • Iteration time can be short with use of powerful RAD tools.

  • Productivity with fewer people in a short time.

  • Reduced development time.

The disadvantages of the RAD Model are as follows −

  • Dependency on technically strong team members for identifying business requirements.

  • Only system that can be modularized can be built using RAD.

  • Requires highly skilled developers/designers.

  • High dependency on Modelling skills.

  • Inapplicable to cheaper projects as cost of Modelling and automated code generation is very high.

  • Management complexity is more.

References:

Sr.no. site
1 https://blog.planview.com/top-6-software-development-methodologies/
2 https://www.softwaretestinghelp.com/software-development-life-cycle-sdlc/
3 https://www.softwaretestinghelp.com/software-development-life-cycle-sdlc/

Related Solutions

Investigate the library, the Internet, and your course materials for information about different requirements elicitation methods....
Investigate the library, the Internet, and your course materials for information about different requirements elicitation methods. Write 400‒600 words to address the following: Based on your research, provide a recommendation of 3 different elicitation methods. Provide a brief description of each method. Identify the benefits of these methods as well as any disadvantages they may have. List at least 3 common problems encountered by teams when eliciting and analyzing requirements. Cite all references using APA format.
Using the resources at your campus or public library (or on the Internet), select 5 mutual...
Using the resources at your campus or public library (or on the Internet), select 5 mutual funds—a growth fund, an equity-income fund, an international (stock) fund, an index fund, and a high-yield corporate bond fund—that you think would make good investments. Briefly explain why you selected these funds. List the funds’ holding period returns for the past year and their annual compound rates of return for the past 3 years. (Use a schedule like the one in Table 12.2 to...
Implementing a Public Health Program Using the South University Online Library or the Internet, research about...
Implementing a Public Health Program Using the South University Online Library or the Internet, research about the ten leading causes of death in the United States. List all the diseases and select one disease. Research further on your selected disease. Based on research, create a 5- to 7-page Microsoft Word document that includes: use diabetes A proposal for a public health program to address that disease within your community. An outline of the steps you will undertake to evaluate the...
Identifying Health Disparities Using the South University Online Library or the Internet, research and read about...
Identifying Health Disparities Using the South University Online Library or the Internet, research and read about a specific health disparity of interest to you. This can be based on gender, age, race, ethnicity, sexual orientation, gender identity, etc. Based on your research and data gathered, create a report in a 8 to 10 page paper that addresses the following: What is the background of the disparity chosen? Who does this disparity impact? What are the determinants of this disparity? What...
a) Use the internet, library, or other information source to research imports and exports for any...
a) Use the internet, library, or other information source to research imports and exports for any state or country in the world. Pick a country or state and discuss its import goods and export goods. You should include some dollar values or % of GDP figures b) For the country you choose, discuss some possible sources of comparative advantage for that economy.
Using the Internet and Strayer Library, research the treatment of revenues for a for-profit versus not-for-profit...
Using the Internet and Strayer Library, research the treatment of revenues for a for-profit versus not-for-profit entity. Next, analyze at least two (2) accounting treatments for revenues for profit and a not-for-profit entity.
Using the South University Online Library or the Internet, select a public health issue or topic...
Using the South University Online Library or the Internet, select a public health issue or topic you feel needs to be addressed in your community. Based on your research, respond to the following regarding the public health issue you selected: Explain why it is important to address your selected public health issue in your community. Define the purpose statement for the public health issue or topic you feel needs to be addressed in your community. Develop at least two research...
Using the South University Online Library or the Internet, select a public health issue or topic...
Using the South University Online Library or the Internet, select a public health issue or topic you feel needs to be addressed in your community. Based on your research, respond to the following regarding the public health issue you selected: Explain why it is important to address your selected public health issue in your community. Define the purpose statement for the public health issue or topic you feel needs to be addressed in your community. Develop at least two research...
Using the South University Online Library or the Internet, research database security and UML. Based on...
Using the South University Online Library or the Internet, research database security and UML. Based on your research and readings for the week, respond to the following discussion topics. Often, systems have only one level of security when it comes to databases. Imagine that someone is trying to add a name (which should be composed only of letters) to a database. The user mistakenly hits a number, and the system rejects the entry. Such security can be implemented at the...
Using the Internet or the Strayer Library, research at least three (3) latest trends in unemployment...
Using the Internet or the Strayer Library, research at least three (3) latest trends in unemployment within the U.S. Next, analyze the latest trends in unemployment within the U.S. that you have researched. Based on your analysis, suggest at least two (2) changes that the federal government could make to increase employment. Provide support for your suggestions.
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT