SE Unit - 1
SE Unit - 1
Types of Software
Examples of Webapps
There are many different types of webapps, but some of the most
popular examples include:
Resources
• 1. Requirements Gathering:
Here are some resources that you may nd helpful in learning more
about software myths:
2. Design:
3. Implementation:
4. Testing:
5. Deployment:
6. Maintenance:
Design:
Implementation:
Testing:
Deployment:
• Deploy the app to app stores for iOS and Android devices.
1.1 De ne Objectives:
3. Key Considerations:
3.3 Automation:
ff
• Leverage automation tools to streamline repetitive tasks and
reduce manual errors.
4. Resources:
Please note that while the examples provided are illustrative, the
speci c improvement strategies and tools would depend on the
unique context and requirements of the software development
environment. Continuous assessment and improvement are crucial
for adapting to changing technologies and delivering high-quality
software products.
The Waterfall model is the earliest SDLC approach that was used
for software development.
An iterative life cycle model does not attempt to start with a full
speci cation of requirements. Instead, development begins by
specifying and implementing just part of the software, which is then
reviewed to identify further requirements. This process is then
repeated, producing a new version of the software at the end of
each iteration of the model.
• Resources with needed skill sets are not available and are
planned to be used on contract basis for speci c iterations.
Identi cation
This phase starts with gathering the business requirements in the
baseline spiral. In the subsequent spirals as the product matures,
identi cation of system requirements, subsystem requirements and
unit requirements are all done in this phase.
fi
fi
fi
fi
fi
This phase also includes understanding the system requirements
by continuous communication between the customer and the
system analyst. At the end of the spiral, the product is deployed in
the identi ed market.
Design
The Design phase starts with the conceptual design in the baseline
spiral and involves architectural design, logical design of modules,
physical product design and the nal design in the subsequent
spirals.
Construct or Build
The Construct phase refers to production of the actual software
product at every spiral. In the baseline spiral, when the product is
just thought of and the design is being developed a POC (Proof of
Concept) is developed in this phase to get customer feedback.
• Process is complex
V-Model - Design
Under the V-Model, the corresponding testing phase of the
development phase is planned in parallel. So, there are Veri cation
phases on one side of the ‘V’ and Validation phases on the other
side. The Coding Phase joins the two sides of the V-Model.
Architectural Design
Architectural speci cations are understood and designed in this
phase. Usually more than one technical approach is proposed and
based on the technical and nancial feasibility the nal decision is
taken. The system design is broken down further into modules
taking up di erent functionality. This is also referred to as High
Level Design (HLD).
Module Design
In this phase, the detailed internal design for all the system
modules is speci ed, referred to as Low Level Design (LLD). It is
important that the design is compatible with the other modules in
the system architecture and the other external systems. The unit
tests are an essential part of any development process and helps
eliminate the maximum faults and errors at a very early stage.
These unit tests can be designed at this stage based on the
internal module designs.
Coding Phase
ff
fi
fi
fi
fi
fi
The actual coding of the system modules designed in the design
phase is taken up in the Coding phase. The best suitable
programming language is decided based on the system and
architectural requirements.
Validation Phases
The di erent Validation Phases in a V-Model are explained in detail
below.
Unit Testing
Unit tests designed in the module design phase are executed on
the code during this validation phase. Unit testing is the testing at
code level and helps eliminate bugs at an early stage, though all
defects cannot be uncovered by unit testing.
Integration Testing
Integration testing is associated with the architectural design
phase. Integration tests are performed to test the coexistence and
communication of the internal modules within the system.
System Testing
System testing is directly associated with the system design
phase. System tests check the entire system functionality and the
communication of the system under development with external
systems. Most of the software and hardware compatibility issues
can be uncovered durqing this system test execution.
ff
fi
Acceptance Testing
Acceptance testing is associated with the business requirement
analysis phase and involves testing the product in user
environment. Acceptance tests uncover the compatibility issues
with the other systems available in the user environment. It also
discovers the non-functional issues such as load and performance
defects in the actual user environment.
V- Model ─ Application
V- Model application is almost the same as the waterfall model, as
both the models are of sequential type. Requirements have to be
very clear before the project starts, because it is usually expensive
to go back and make changes. This model is used in the medical
development eld, as it is strictly a disciplined domain.