SDLC Arsh D.
docx
keyboard_arrow_up
School
University of Texas, Dallas *
*We aren’t endorsed by this school
Course
6301
Subject
Information Systems
Date
Apr 3, 2024
Type
docx
Pages
6
Uploaded by CommodoreNeutron102
1
The Software Development Life Cycle (SDLC)
Arsh Durrani
Professor Khan
ITSS 4330.501
09/05/2023
2
Introduction
The SDLC, or Software Development Life Cycle, is a rigorous approach software development teams use to design, produce, and maintain high-quality software (
Akinsola et al. n.p). It consists of several steps that ensure the program's seamless growth. The SDLC's initial step is requirements collection. Throughout this phase, the development team engages with stakeholders to gather and evaluate their requirements and expectations for the program. This helps in defining the project's objectives and range. After acquiring the conditions, the team moves on to the design process. At this stage, the team creates a software system blueprint covering the architecture, database design, user interface, and overall program structure. This phase helps in visualizing the program's appearance and operation. After the design phase, the team goes on to the development phase, when the actual coding and programming occur. Here, the software is developed based on the requirements and design guidelines previously gathered. The development team uses a range of programming languages and frameworks to construct the code and ensure its functionality.
Why and When is the SDLC Useful?
The SDLC (Software Development Life Cycle), which offers an organized approach to software development, is crucial in ensuring that all necessary procedures are carried out and risks are reduced (
Sen et al.). By recognizing and fixing any issues before they worsen, early problem-
solving may help avoid costly errors or delays. To produce a more dependable and efficient final product, the SDLC ensures that the software conforms to the relevant requirements and quality standards. It is instrumental when developing complex software systems or working on a project with several teams. The SDLC provides a structured framework that enhances collaboration and
3
communication while guaranteeing everyone is working toward the same goals. This reduces the possibility of misunderstandings or conflicts arising between several teams operating independently. By following the SDLC, software development projects may be completed more successfully and effectively, increasing customer satisfaction and the project's likelihood of success.
Phases of the SDLC
The SDLC comprises several parts, all of which are often utilized. These parts include requirements collecting, system design, coding, testing, deployment, and maintenance. The actions and outcomes specific to each phase ultimately determine the project's success. Teams must carefully plan and complete each step of the software development process systematically to be successful and effective. By following the stages of the SDLC, teams may manage projects effectively and ensure that they reach their objectives. Gathering requirements helps to clarify the client's expectations and gives the project's foundation. System design may be used to draw out an overview of the application's functionality and organizational structure. Testing ensures the software is error-free, while coding gives the design life. During deployment, the software is utilized in a real-world setting, and regular maintenance keeps it current and functional. The project's likelihood of success increases through lowering risks, increasing production, and providing consumers with a high-quality product.
Activities within each Phase of the SDLC
Within each phase of the SDLC, specific activities take place. The project team extensively collaborates with stakeholders throughout the requirements collecting phase to comprehend and
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help
4
record their demands. The team develops a comprehensive strategy for the software's architecture and user interface during the design phase (
Okesola et al. n.p). Various testing techniques are utilized to find and address any problems or defects, such as unit testing and system testing. Deploying the program on servers or PCs and granting users access is known as deployment. The project team monitors the software's functionality during maintenance and makes any required adjustments. This may include rolling out security updates, bug fixes, or new
features based on customer input. In the maintenance phase, the software's long-term worth is maximized, its ongoing functioning is maintained, and a delightful user experience is delivered.
Deliverables and Outputs of Each Phase of the SDLC
Along with requirements papers and project plans, a feasibility study is one of the deliverables and outcomes of the planning stage of the SDLC. In these papers, the project's goals are outlined,
its parameters are established, and its technical and financial feasibility are evaluated. Deliverables and outputs throughout the development process could include a working software prototype or a finished item that satisfies the specifications. This comprises all relevant paperwork, including user guides, test plans, and source code. Extensive testing and debugging are done throughout the development process to guarantee that the program is error-free and up to standard. After the development phase, the software is made accessible and incorporated into the existing systems during implementation. End-user training and continuing technical assistance are also included in this phase. The software is regularly updated and maintained as part of the maintenance phase of the SDLC to fix bugs or improve functionality in response to user input and changing business needs.
Advantages and Disadvantages of the SDLC
5
The advantage of the SDLC is that it gives a scientific and systematic approach to software development, ensuring that no steps are omitted, and everything is completed. Thus, there is less chance that the final product will be inaccurate or faulty. The disadvantage of the SDLC is that it
may take some time and may not be suitable for projects with short deadlines or continuously changing needs (
Olorunshola and Francisca). The inflexible SDLC design could also need to be more adaptable to allow for last-minute changes or innovations made during development. This could need more costly changes, which would cause the finished product's delivery to be delayed. Smaller projects may not be able to benefit from the SDLC as much as larger ones, which is another disadvantage. An approach to development that is more flexible and iterative may be preferable in this situation. The SDLC is a widely used and accepted paradigm for software development despite its shortcomings because it puts a heavy emphasis on precise planning and quality assurance.
If the requirements change often, the SDLC could take a while. This choice may not be the most suitable one for projects with tight deadlines because of the potential for delivery delays. All stakeholders may be fully aware of the project's goals and constraints thanks to the SDLC's focus
on formal procedures and documentation. Whether to adopt the SDLC or another development methodology ultimately depends on the project's size, complexity, and timing. Conclusion
The SDLC offers a methodical approach that may be useful for projects requiring a lot of documentation and stakeholder interaction, despite its flexibility and time constraints. It is essential to do a comprehensive study of the specific project needs of each organization before choosing the optimal development technique.
6
Reference Akinsola, Jide ET, et al. "Comparative analysis of software development life cycle models (SDLC)."
Intelligent Algorithms in Software Engineering: Proceedings of the 9th Computer Science On-line Conference 2020, Volume 1 9
. Springer International Publishing, 2020.Kang, Sooyoung, and Seungjoo Kim. "CIA-level driven secure SDLC framework for integrating security into SDLC process."
Journal of Ambient Intelligence and Humanized Computing
13.10 (2022): 4601-4624.
Okesola, Olatunji J., et al. "Software requirement in iterative SDLC model."
Intelligent Algorithms in Software Engineering: Proceedings of the 9th Computer Science On-line Conference 2020, Volume 1 9
. Springer International Publishing, 2020.
Olorunshola, Oluwaseyi Ezekiel, and Francisca Nonyelum Ogwueleka. "Review of system development life cycle (SDLC) models for effective application delivery."
Information and Communication Technology for Competitive Strategies (ICTCS 2020) ICT: Applications and Social Interfaces
. Springer Singapore, 2022.
Sen, Shilpa, Mayank Patel, and Ajay Kumar Sharma. "Software Development Life Cycle Performance Analysis."
Emerging Trends in Data-Driven Computing and Communications: Proceedings of DDCIoT 2021
. Springer Singapore, 2021.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
- Access to all documents
- Unlimited textbook solutions
- 24/7 expert homework help