Lecture 2 Flashcards
(33 cards)
What is software process?
A software process (also knows as software methodology) is a set of related activities that leads to the production of the software.
List Software processes.
-Requirement Analysis
-Design
-Implementation
(Coding)
-Testing (Validation)
-Deployment
-Maintenance (Evolution)
Explain planning of the software project.
Calculating the strengths, weaknesses and risks of the project, is vital before starting the project.
Explain Requirement analysis process.
- Important fundamental stage in SDLC.
- It tells us what services are required of the system.
What is SRS document?
It includes all the product requirements to be designed and developed during the project life cycle.
Explain Design process.
The process of converting the software requirement specification into a software structure that realizes that specification.
The “how” of the software life cycle.
Explain implementation process.
In this stage of SDLC the actual development starts and the product is built.
The programming code is generated as per design document specification (DDS).
Explain testing process.
Verification and validation is intended to show that a system conforms to its specification and meets the requirement of the system customer.
Explain deployment process.
After testing, it is formally deployed to the customer.
Product may be released in a limited segment and test in the real business environment.
Based on the feedback, make changes.
Explain system maintenance process.
Once the software passes through all the stages without any issues, it is to undergo a maintenance process wherein it will be maintained and upgraded from time to time to adapt to changes.
What are software process models?
models are also referred as “Software Development Process Models”. Each process model follows a Series of steps unique to its type to ensure success in the process of software development.
What is the difference between SDLC and Software process models.
SDLC are activities that take place during the life of a software development (e.g. requirement analysis, design, coding, testing, maintenance)
Development models are thewaythe lifecycle is carried out (e.g. waterfall, incremental, prototyping, etc.).
List types of process models.
-Waterfall model
-Prototyping
>Throwaway
>Evolutionary
-Incremental
-development
-Spiral model
Define waterfall model.
The waterfall model is a sequential approach, where each fundamental activity of a process represented as a separate phase, arranged in linear order.
Write some advantages of waterfall model.
- It is simple and easy to understand and use.
- Works well for small projects where requirements are very well understood.
Write some disadvantages of Waterfall model.
-Partitioning of the project in different stages makes it difficult to respond to changing customer requirements.
What is prototyping process model?
It is a part of a system that is developed quickly to check customer’s requirement.
What are some advantages of prototyping?
- Users can try the system and provide feedback during development.
- Prototyping enable early detection of errors.
What are some disadvantages of prototyping?
- Formal end-of-phase reviews do not occur.
- System documentation is often absent or incomplete, since the primary focus is on development of the prototype.
What are observations?
Used for requirements elicitation and validation.
Prototyping mode: Throwaway prototype.
Throw Away Prototype is developed from the initial requirements but is not used for the final project.
Some developers believe that this type is a waste of time because you don’t use it.
Advantages of throwaway model?
- Significantly reduce project risk
- Has a short project timeline
Disadvantages of throwaway model?
- The prototype actually does nothing, its just presentational.
- Only for a limited purpose
Define Evolutionary prototype.
Evolutionary prototypingis a model in which the system is developed in increments so that it can readily be modified in response to end-user and customer feedback.