Directory Image
This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Privacy Policy.

Evolutionary Model in Software Engineering

Author: Manoj Kumar
by Manoj Kumar
Posted: Jun 13, 2021

Evolutionary Model is an important model of software development life cycle. In this tutorial we have explained the evolutionary model in detail. I hope this tutorial will be helpful for computer science students in understanding the concepts of evolutionary model.

What is Evolutionary Model?

Evolutionary model in software engineering is also referred as the incremental model of software development. This model is mainly used in Agile approach of software development. The whole product is developed in iterative and incremental manner.

In evolutionary model approach software requirements are broken in several sub modules like M1, M2, M3……Mn. These sub modules are designed and developed in form of release. In first iteration module M1 is developed and delivered. In second iteration module M2 is developed and integrated with module M1. Now this increment M1+M2 is delivered to customer after second iteration. In the same way whole software is developed and in the end final software product is delivered to customer.

First the core modules that don’t need the service from others modules are developed.

Each successive version or model of the software product is a fully functioning software capable of performing more work than the previous versions or model.

Every deliverable should be meaningful for the customer. It should perform a functionality of the software.

This model is normally used to develop the large software consist of large number of functionality.

Various phases involved in each iteration are as shown in the above figure. Tasks are categorized into phases and are "time-boxed", that is, time frames are allotted to each task. Each time-boxed phrase is called a sprint.

  • Evolutionary model is very helpful in building the large software product.
  • This model also provides a chance to user to experiment with a partially developed software much before the complete version of the system is delivered. It becomes easy for the developer to remove the bugs and defects in early stages of software development.
This is Difficult sometime to divide the problem into several modules in such a way that these would be acceptable by the customer and which can be implemented in incremental and iterative manner.

Today in this tutorial we have explained about the Evolutionary Model with it’s advantages and disadvantages. I hope this tutorial will be helpful for computer science students.

I kindly request to readers, please give your feedback and suggestion. If you find any mistakes in this tutorial, then comment.

Evolutionary Model in Software Engineering

About the Author

Author is a professional technical trainer, technical content writer in the field of Computer Science and Engineering. He loves to read and writes the content on the topic to be asked in Gate Computer Science Exam.

Rate this Article
Leave a Comment
Author Thumbnail
I Agree:
Comment 
Pictures
Author: Manoj Kumar

Manoj Kumar

Member since: Sep 10, 2017
Published articles: 2

Related Articles