Explain SDLC with phases
Software Development Life Cycle (SDLC)
is a process used by the software industry to design, develop and
test high quality softwares.
It is a systematic process for building software that ensures the quality and correctness of the software built.
It process aims to product high-quality software that meets customer expectations. The system development should be complete in the pre-define time frame and cost.
SDLC consists of a detailed plan which explain how to plan, build, and maintain specific software.
Every phase of the SDLC life cycle has its own process and deliverables that feed into the next phase.
The life cycle defines a methodology for improving the quality of software and the overall development process.
- SDLC is the acronym of Software Development Life Cycle.
- It is also called as Software Development Process.
- SDLC is a framework defining tasks performed at each step in the software development process.
- ISO/IEC 12207 is an international standard for software life-cycle processes. It aims to be the standard that defines all the tasks required for developing and maintaining software.
Implementing a lifecycle lets project managers reduce the program implementation costs,
remove complexity, and improve efficiencies. It also encourages reuse, upgrade and, most
significantly, cost savings.
Why SDLC ?
- It offers a basic for project planning, scheduling and estimating.
- Provides a framework for a standard set of activities and deliverables
- It is a mechanism for project tracking and control
- Increases visibility of project planning to all involved stakeholders of the development process
- Increased and enhance development speed
- Improved client relations
- Helps you to decrease project risk and project management plan overhead.
Phases of SDLC
1. Requirement Collection & Analysis
Requirement Gathering is the process of obtaining all the types of list of specifications (functional, program, technological, etc.) from all stakeholders (customers, users, suppliers, IT staff) which will be used as the basis for formal definition of what the project is. After the collection of desire requirements that needs to move forward, we will do analysis where it generates the main theme or result that the project going to build. The requirements describe the project, poorly written requirements can cause developmental issues and, more importantly, cause projects to fail if the objectives are misunderstood. That’s why the requirement analysis here defines the user’s current expectations or requirements for a new project/software being built or modified. So, at first the most significant step that we have to do is requirement collection with the better research analysis. The goal of the requirement collection and analysis in software engineering is to develop the most sophisticated and maintained proper descriptive documentation to build the new software at the optimum time frame. It has a four step process to be completed, which are:😎✌
- · Feasibility Study
- · Requirement Gathering
- · Software Requirement Specification
- · Software Requirement Validation
·
2. Planning
After
completion of requirements collection, the project requirements are reviewed
and a decision is taken as to whether a further actions will proceed. If it's
decided to continue, plans for the next phase of the project will be drawn up. Main
purpose of the project planning phase is to define requirements of information
technology deriving from business objectives. The development strategy,
benefits, and appropriate estimate of the conceptual design development costs
are calculated during this process. First, we initiate the project by set of the
project planning. Then, we Identify user expectations, specifications and
functionality for system efficiency, current technology infrastructure,
existing information technology system, potential technology considerations and
the effect or gap analysis on relevant systems. Some more of the process except
we mention above are following:
- · Developed the conceptual design of the new.
- · Assess factors, such as distance, expense, schedule, resources, staff and training.
- · Analyze costs and advantages, and consider alternatives.
- · Develop and approve the Plan for the project.
- ·
Chart the business case that supports the new program
to bring to management.
3. Development
After
requirement and planning the development phase we will begin for the software
development process which is the most significant phase to develop real
software as per the stakeholder’s requirements. In the development phase, all
the documents from the previous phase are transformed into the actual system. The
purpose of the Development Phase is to convert the system design prototyped in
the Design Phase into a working information system that addresses all
documented system requirements. At the end of this phase, the working system
will enter the Test Phase. In the design phase, only the blueprint of the IT
infrastructure is provided, whereas in this phase the organization actually
purchases and installs the respective software and hardware in order to support
the IT infrastructure. Following this, the creation of the database and actual
code can begin to complete the system on the basis of given specifications.
Implementation/Coding
starts once the developer gets the Design document. The Software design is
translated into source code. All the components of the software are implemented
in this phase.
4. Testing
In the
testing phase, all the pieces of code are integrated and deployed in the
testing environment. Testers then follow Software Testing Life Cycle activities
to check the system for errors, bugs, and defects to verify the system’s
functionalities work as expected or not, often. The two primary activities
involved in the testing phase are as follows:
- 1. Writing
test cases
- 2. Execution
of test cases
Testing is
a critical part of software development life cycle. To provide quality
software, an organization must perform testing in a systematic way. Once test
cases are written, the tester executes them and compares the expected result
with an actual result in order to verify the system and ensure it operates
correctly. Writing test cases and executing them manually is an intensive task
for any organization, which can result in the success of any business if
executed properly.
5. Deployment
& Maintenance
Once the product is tested, it is deployed in the production environment or first UAT (User Acceptance testing) is done depending on the customer expectation. During this next phase the system will be deployed to a real-life environment (the client's) where the actual user will start operating the system. It then places all data and components in the production environment. This phase is also called 'delivery.'
Then, Any necessary improvements, corrections and changes
will be made in the maintenance phase to ensure that the system continues to
work and remains updated to meet the business goals. Occasionally, the system
needs to be maintained and upgraded so it can adapt to future needs. The three
primary activities involved in the maintenance phase are as follows:
- 1. Support the
system users
- 2. System
maintenance
- 3. System
changes and adjustment
Comments
Post a Comment