Unit - I
Unit - I
SDLC Models
The most common SDLC models are:
1. Waterfall Model - It is the first sequential-linear model because the
output of the one stage is the input of the next stage. It is simple and easy
to understand, which is used for a small project. The various phases of the
waterfall model are as follows:
a. Requirement analysis
b. Feasibility study
c. Design
d. Coding
e. Testing
f. Installation
g. Maintenance
2. Iterative Model - This model leads the software development process in
iterations. It projects the process of development in cyclic manner
repeating every step after every cycle of SDLC process.
Iterative development is a way of breaking down the software
development of a large application into smaller pieces.
3. Spiral Model - This model considers risk, which often goes un-noticed
by most other models. The model starts with determining objectives and
constraints of the software at the start of one iteration. Next phase is of
prototyping the software. This includes risk analysis. Then one standard
SDLC model is used to build the software. In the fourth phase of the plan
of next iteration is prepared.
4. Verification & Validation Model - It is an extended version of the
waterfall model. It will implement in two phases wherein the first phase,
we will perform the verification process, and when the application is
ready, we will perform the validation process. In this model, the
implementation happens in the V shape, which means that the verification
process done under downward flow and the validation process complete
in the upward flow.
5. RAD Model - A software project can be implemented using this model if
the project can be broken down into small modules wherein each module
can be assigned independently to separate teams. These modules can
finally be combined to form the final product.
6. Hybrid Model - The hybrid model is used when we need to acquire the
properties of two models in the single model. This model is suitable for
small, medium, and large projects because it is easy to apply, understand.
Benefits of SDLC
Gives a defined view of the entire system, resources, timeline, and goals
Design reviews help to ensure the reliability and quality of the final
product
Enhanced control over large or complex projects
Involves comprehensive and explicit steps
Provide goals and deliverables that meet the standards of each party
involved in the project, requires keeping detailed documentation
throughout the entire process
Easy evaluation of costs and growth of the developed system
Disadvantages of SDLC
Requirements Determination
System Design
System Design is the process of designing the architecture, components, and
interfaces for a system so that it meets the end-user requirements.
Physical Design - Physical design relates to the actual input and output
processes of the system. It focuses on how data is entered into a system,
verified, processed, and displayed as output.
Logical Design - Logical design relates to an abstract representation of
the data flow, inputs, and outputs of the system. It describes the inputs
(sources), outputs (destinations), databases (data stores), procedures (data
flows) all in a format that meets the user requirements.
Test Planning
Communication
Communication is the process of sharing the ideas, information, view from one
party to another party.
Interviewing
Presentation Skills
Risk Analysis
The main objective of risk analysis is to identify all possible risk and document
a plan to counter the risk in case of unlikely event occurring. When an
undesirable event occurs, it might be too late to counter the consequences unless
adequate planning has been done to mitigate the risk.
1. Manpower Risk
2. Technology
a. Using New Technology
b. Using Outdated Technology
3. Business Risk
Feasibility Study
Feasibility Study in Software Engineering is a study to evaluate feasibility of
proposed project or system. Feasibility study is carried out based on many
purposes to analyze whether software product will be right in terms of
development, implantation, contribution of project to the organization etc.
This model furthermore, is vast when it comes to agile delivery wherein the
software products need to be developed as well as shipped in short iterations
depending on agreements among the industrial as well as industry stakeholders
which are termed as Minimum Viable Product (MVP).
JAD Participants
Benefits of JAD
Drawbacks of JAD
Structure Walkthrough
Code Walkthrough
Code Review is a systematic examination, which can find and remove the
vulnerabilities in the code such as memory leaks and buffer overflows.
Design Review
Prototyping
Database Design
The main objectives of database designing are to produce logical and physical
designs models of the proposed database system.
The logical model concentrates on the data requirements and the data to be
stored independent of physical considerations. It does not concern itself with
how the data will be stored or where it will be stored physically.
The physical data design model involves translating the logical design of the
database onto physical media using hardware resources and software systems
such as database management systems (DBMS).
Software Metrics
Software quality metrics are a subset of software metrics that focus on the
quality aspects of the product, process, and project. These are more closely
associated with process and product metrics than with project metrics.
Software Evaluation
Sources for Evaluation are:
1. Benchmark Programs (Minimum Hardware Configuration, Testing etc/)
2. Experience to other users (Satisfied or not)
3. Product Reference Module (System Capabilities)