Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) it is nothing but step by step implementation of software. It is systematic process of building a software Ensure the quality.
What are the phases of SDLC?
- Information Gathering
- Analysis
- Design
- Coding
- Testing
- Maintenance
Information Gathering :-
BA (business analyst ) is responsible for information gathering.That is which type of customer application wants what was the purpose of that application.
Information gathering means requirement gathering. This information gathering nothing but Business requirements known as BRS. BRS: Business Requirement specification
BA is taking Requirement from clients/Customers & Preparing BRS document. Simply it acts as bridge between Client and Technical team (Devloper and Tester).
Analysis:-
Business analyst is involved in this process in the Analysis phase SRS is made, in the. After BRS = SRS documents prepared, Software Requirement specification
BRS: Business Requirement specification . SRS: Software Requirement specification o Also called as – functional requirement specification document. SRS Means details documentation .Software Requirement specification will contain Function Requirement, Functional Flow diagram, Use cases and Snapshot.
- Functional Requirement: Functional Requirement is nothing but a detail requirement for every single module. Means specific requirement of every sub module. Functional requirement means Element which are required to fulfill the specific function.
For Example: Sign up page is main function.
First name , last name, Email id, mobile no.. password, Forget password.
- Functional Flow Diagram:
Functional flow diagram is the process of show the relationship between the element/task. Functional flow diagram means flow of task. This flow show dependency of two task each other. Here the sequential arrange this task. It is a step by step implementation of requirement.
Req. 1 – Req.2 –Req. 3 –Req.4 like that.
For Example:
-
Use Cases:
Use cases are the requirement. Whenever Business analyst gather requirement to customer that are whole project requirement.
It is similar to use story. In use case only single requirement are there. In the Use cases consist of two parts that is Description and acceptance criteria.
Description:-
It is a description about the functionality. Means what is the customer expectation. What user want to do ,what is the process of the build and what we give the output.
Acceptance Criteria:-
In acceptance criteria is nothing but scenario. Means when this scenario are correct that time we generate the desired output otherwise system give the failure.
Design:-
It is process of transform customer requirement into some suitable form basically two types of design. System architecture develops the design
- HLD – High level design
- LLD – Low level design
-
Difference between high level design and low level design?
High-Level Design (HLD)
- High level design is developed by System architecture or design architecture
- Brief description or Working in main module .
- An outline about the designing Structural functionality of Main module
- Include relation dependency of main module
- Database tables identified along with their key elements
- Complete architecture diagrams along with technology details
- High-level design defines the architecture/design of modules. It defines the functionality between the two modules.
- It is macro level design. Understand architecture of entire application from main module to sub module.
Low-Level Design (LLD)
- Static logic and Functional logic of the every sub modules
- Database tables, which include type and size
- Complete detail of the interface
- Addresses all types of dependency issues
- Low level design is Developed /design by front end developer Complete input and outputs for every module.
- Designing Structural functionality of Sub module
- Low-level Design defines the architecture/design of individual components.
Coding:-
Coding means programming developer is involved in coding. One line is code. Multiple line of code is known as program. It is set of programming language designed, written by programmer known as coding
There are two types of developer.
- Front end developer
- Back end developer
Front End developer/Coding – UI, Functional checking, flow, process developed by Front End developer .Front end developer develop animation, Action pages, functionality,U.I.
Back End developer/coding – Data Management, Data gathering, Data security, algorithm section is done at the back end section developed by Front End. End Back end developer –Data management, Data Analysis, Data security.
-
What is testing?
Testing:-
Definition:- Testing is a process of checking whether our software generate desired outputs. In short how well software work it is called testing.
Developer who is woke on front end development as well as back end development called as full stack developer
It is a process to check Completeness & correctness of software/ Application as per customers’ requirement
Testing having three types of testing –
- White box Testing
- Black Box Testing
III. Grey Box Testing
- White box Testing
White box Testing is called as Clear Box testing, Glass Box testing, Transparent Testing. It is also called as Static Testing.
It is a coding level testing approach to check Completeness & correctness of program .White Box Testing done by coder means it testing done by developer.
- Black Box Testing
Black Box testing is called as System and Functional testing. It is done by tester.
In the black box testing tester verify/ validates internal functionality of application depends on external interface (front end). It’s a build level testing Technique
- Gray box Testing –
Gray box testing – It’s a combination of white box testing & Black box testing. Gray box testing = White Box Testing + Black box testing. Testers are involve in Gray box testing.
In the gray box testing Testers needs some programming language. In case any defect occurs – testers makes some changes in code itself instead of assigning to the developers.
Maintenance:-
Maintenance means provide the service after the delivery of product. Project team will give 1 month warrant support for that build/ functionality. Project team will get KT (knowledge transfer) to support team. After warrant period, these build/ functionality will sent to support/ Maintenance team.
-
What is mean by SDLC?
Sdlc- It is Software Development Life cycle. It is the process of developing the high quality software. In the software development life cycle developed, design, and test the software. Software development life cycle is the step by step implementation of the software ensure the quality of product .
- Types of SDLC/Methodology/Models
- Waterfall Model
- V-Model
- Agile
- Fish Model