0% found this document useful (0 votes)
2 views

Unit1

The document discusses software engineering, focusing on prescriptive process models and the evolutionary model. It highlights the advantages and disadvantages of the evolutionary model, emphasizing its adaptability to changing requirements and the importance of user involvement. The conclusion underscores the need for careful evaluation of project-specific factors to optimize the benefits of the evolutionary model in software development.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Unit1

The document discusses software engineering, focusing on prescriptive process models and the evolutionary model. It highlights the advantages and disadvantages of the evolutionary model, emphasizing its adaptability to changing requirements and the importance of user involvement. The conclusion underscores the need for careful evaluation of project-specific factors to optimize the benefits of the evolutionary model in software development.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 55

1.

Introduction to
Software Engineering
By
Ms.Dirgule A.V.
Software Engineering
• Software Process Models (1)
Prescriptive process models evolved over the years to bring some
order to the software development (structure, order, consistency)…
But, the software industry is fast changing!A prescriptive process
model is a strategy/paradigm that prescribes a set of process
elements (activities, actions, work tasks, product, QA, CM) and a
workflow.Different software projects require different process
models!Why?- nature of the application- complexity- methods and
tools- required control- expected quality- outcomes/products
• Application of Evolutionary Model
• It is used in large projects where you can easily find modules for incremental
implementation. Evolutionary model is commonly used when the customer wants to start
using the core features instead of waiting for the full software.
• Evolutionary model is also used in object oriented software development because the
system can be easily portioned into units in terms of objects.
• Necessary Conditions for Implementing this Model
• Customer needs are clear and been explained in deep to the developer team.
• There might be small changes required in separate parts but not a major change.
• As it requires time, so there must be some time left for the market constraints.
• Risk is high and continuous targets to achieve and report to customer repeatedly.
• It is used when working on a technology is new and requires time to learn.
Advantages Evolutionary Model

• Adaptability to Changing Requirements: Evolutionary models work effectively in


projects when the requirements are ambiguous or change often. They support
adjustments and flexibility along the course of development.
• Early and Gradual Distribution: Functional components or prototypes can be
delivered early thanks to incremental development. Faster user satisfaction and
feedback may result from this.
• User Commentary and Involvement: Evolutionary models place a strong
emphasis on ongoing user input and participation. This guarantees that the
software offered closely matches the needs and expectations of the user.
• Improved Handling of Difficult Projects: Big, complex tasks can be effectively
managed with the help of evolutionary models. The development process is
made simpler by segmenting the project into smaller, easier-to-manage portions.
Disadvantages Evolutionary
Model
• Communication Difficulties: Evolutionary models require constant cooperation and
communication. The strategy may be less effective if there are gaps in communication
or if team members are spread out geographically.
• Dependence on an Expert Group: A knowledgeable and experienced group that can
quickly adjust to changes is needed for evolutionary models. Teams lacking
experience may find it difficult to handle these model’s dynamic nature.
• Increasing Management Complexity: Complexity can be introduced by organizing and
managing several increments or iterations, particularly in large projects. In order to
guarantee integration and synchronization, good project management is needed.
• Greater Initial Expenditure: As evolutionary models necessitate continual testing,
user feedback and prototyping, they may come with a greater starting cost. This may
be a problem for projects that have limited funding.
Conclusion

• The evolutionary model is a helpful framework in the quickly evolving


field of software development, where requirements are frequently
modified and user expectations change. As with any development
process, optimizing the advantages and minimizing the possible
negatives of evolutionary models in software engineering requires
careful evaluation of project-specific considerations.
Unified Process
Unified Process
Unified Process

You might also like