Background Summary for the Selected Topic
Software Engineering Is About Developing The Quality, Process And Methods That Are Used For The Process Of Software Development This Process Is The Framework that is included various activities and project tasks like requirement analysis, design, development and testing, implementation, documentation and evaluation. It is a systematic approach to finish the software development work in time and maintain the quality of the software product (Jüngling, Peraic, & Martin, 2020). It is used mentioned step-by-step approaches to finish the development process.
The research study analyses the selected topic with SWOT analysis to identify the strengths, weaknesses, opportunities and threats of SDLC. A summary is provided to better understand the SWOT easier for the reader. The effectiveness and benefits of the selected method are discussed in this paper to understand the usefulness of the method for software product development in the enterprise. The researcher is provided with some suggestions to get a better software product with high-quality. The study is highlighted how SDLC is fitted with strategies, goals and scope of the project. There is a discussion of the fact that SDLC is used to deal with the boundaries as well as constraints of the project work. Cost and profit estimation is done for SDLC methods to help in better understanding of the selected method are benefited the business in terms of the financial terms.
According to Martias (2018), SDLC is the structured process that will allow the creation of high-quality, low-cost software in little production time. The goal of this software development method is to produce high-quality software that exceeds the expectations as well as demands of the customers. SDLC was developed as a tool for structured analysis, and it was evolved in the 1960 environment where the system is based on the processing of data files. This method aims to keep the system in a controlled manner and produce quality data to be delivered to the customers. Using this method, the processing of data becomes centralized by the system administrator. This process is included a plan regarding how to maintain, develop and replace the software system (Adanna & Nonyelum, 2020). There are various software models such as waterfall, agile, spiral, prototyping, iterative, incremental models. It is required to select the right model focused on the project's requirements to make sure that there is project success. While emerging a quality software product, the developers are indirectly or indirectly involved in the software development process and consider quality, process and methods to develop the product.
- Easy adaptability by the non-technical person: The strength of the SDLC model is that the non-technical staff can easily use and understand the usage of the model for software development. Development of the software product using this model is not required technical skills and expertise.
- Step-by-step development stages: The SDLC model is contained six phases to develop the software such as requirement analysis, design, development and testing, implementation, documentation and evaluation; therefore, the strength is that the development of the software is carried out by following one-by-one step that will make a high quality of software product (Dias & Ferreira, 2018).
- Clear and ambiguous requirements: the SDLC model is applicable for only small or medium-sized projects; therefore, the customers are getting clear requirements of the software product, and it makes them easier to use the delivered product (Borkovskaya, 2018).
SWOT Analysis for the Selected Topic
At the end of the phase, the software is ready: The SDLC model follows six phases to develop the software product, and after completion of one phase, the other phase is started. Therefore, after completing the last phase, i.e. evaluation, the software is ready for usage. Therefore, the users have to wait until the end of the last phase to get the software ready.
- High risk and uncertainty: The risk factors of the SDLC model are the unrealistic budget and schedule of the software project, inadequate resources as well as unclear scope of the project that lead to the project failure (Tareque, 2021). SDLC model emphasises the uncertainty of the project as a sudden change in the project scope cause unclear budget and schedule delays.
- Integration is done at the end, and no option to identify the problems: As in the SDLC model, the iteration is done at the end of the project phases. Therefore there is a lack of access to earlier phases of the project (Nicholas & Steyn, 2020). It is also difficult to identify the problems at the earlier phase, as building as well as testing the functionality of the software is done at the end phase of the plan.
1. Excellent selection for the system requires high reliability: The SDLC model is suitable for the system development work where there is required high reliability in software. It is the quality of the software that makes sure that the presentation of the software is reliable.
2. Known solution and technology: The purpose of the SDLC model is to select, design and implement solutions to the software development requirements. In order to develop the system, implementation is included to use known technology solutions to manage the solutions for the risk handling (Davis & Yen, 2019).
1. Large scale projects with unclear requirements: SDLC model has a threat to be used for the large and complex projects with unclear model requirements. The model is undefined and unfixed, with unclear model requirements for software development (Jongeling et al., 2019).
2. Selected when ample technical resources are available: SDLC model is to be selected for the project when ample technical resources are available for the project work. There is no requirement to produce prototyping; high risk is involved with meeting the expectations of the customers (Silva et al., 2020). Confidence of the customers is required to be high when selecting the SDLC model.
• Easy adaptability by the non-technical person
• Step-by-step development stages
• Clear and ambiguous requirements
• At the end of the phase, the software is ready
• High risk and uncertainty
• Integration is done at the end, and no option to identify the problems
• Excellent selection for the system requires high reliability
• Known solution and technology
• Large scale projects with unclear requirements
• Selected when ample technical resources are available
The selected SDLC method is agile, as it is adaptive, which will make it different from other SDLC methods. This agile method is helping the business improve and measure the process of software development by enabling step-by-step analysis of the software development processes. This method is useful as it helps the business reduce the cost, meet the requirements of the customers and quick delivery the software to run the projects in an easier way (Heeager & Nielsen, 2018). Therefore, the agile method is to be selected for the business to get project success.
With the project life-cycle, the user can visualize the goals of the project, project tasks, as well as emerging risks at each stage of the process. As the agile model follows a step-by-step approach, therefore it makes sure that the programmer is not moving in other project tasks before completion of previous project stages (Pavlova et al., 2021). The project manager is not having better control, but it prevents overlapping as well as an overreaching of the responsibilities of the project team members and its own. Following the agile method, it is easier for the software developer to execute the project as it requires checks to make sure that the software is experiencing testing before the concluding deployment (Yli-Ojanperä et al., 2019). Each new programmer is joining the software development team can able to understand the requirements of the project by going through recorded documentation at each phase of the plan.
Overall Effectiveness of the Selected Method
The agile method is commonly utilized for a software development project. This SDLC method has greater adaptability to the change in the project scope, as this method uses phased planning as well as continuous integration through the project lifecycle. This selected method is suggested to be used for the business environment as it provides superior product quality to the customers, excellent customer satisfaction, better control, continuous improvement and reduction of the risks and uncertainties in the project. Incremental development holds value for the project team and system customers (Thesing, Feldmann, & Burchardt, 2021). The regular meeting is conducted among the software project team so that it is easier to share the current progress, discuss project problems and work out the solutions. Even this selected method also makes the entire process transparent for the customers. The incremental nature of the SDLC model means that the project is finished in short sprints that will make manageable nature of the project plan. It allows the products to roll out and changes made at each point through the project process. The agile method can find problems as well as create solutions in effective ways (Klünder, Hohl, & Schneider, 2018). The flexibility of this method allows the software team to respond to the customer’s queries and improve the product shortly.
The agile method is working well for the clearly defined project with the single deliverables as well as fixed deadlines of the project plan. This particular software approach is required thorough planning, documentation of the project as well as right control over the entire software development process (Nicholas & Steyn, 2020). In theory, the selected method is leading on time, on the budget, on-time delivery, as well as low risks of the project plan. At the end of each sprint, the product increment is to be delivered, and therefore each of the iterations adds to new features of the product that can result in the growth of the project. The main aspect of the selected method is meeting the scope of work that is changing with new requirements (Thrassou, Vrontis, & Bresciani, 2018). The project contains small cycles, and the team members are working closely and have a proper vision of the project responsibilities. The customer is engaged in the development, and they can accept the team's suggestions if there is any change in the project scope.
The selected method is built based on triple constraints like time, cost as well as scope. In this method, rather than fixing the scope at the project start, agile sets the time as well as cost as fixed, while the scope is to be adjusted focused on the requirements of the project client. Agile is being built with expectations that the scope is evolved. The time constraint talks about how the project is managed, that it meets with setting the deadlines as well as allocation of the resources in an effective way. The cost constraint is handling the plan to stay within the estimated budget, including only the materials, labour cost, supplier cost and others (Dias & Ferreira, 2018). Finally, the scope constraint is setting goals as well as deliverables of the project and defining priorities of the plan.
Suggestions on How to Use Effectively the Selected Method
The selected method sets the project boundaries as delivering the requirements of project clients in budgeted cost as well as time. The method allows for new project requirements as it is moving forward. By committing to the defined cost and time of the software project, the executives feel that the project is approved by the project sponsor (Heeager & Nielsen, 2018). At the end of the project, the client and team members find that the agile approach is successful compared to other traditional methods in terms of project boundaries and constraints.
The agile method does a proper cost and profit estimation based on the strategies of a relative measure of the project size like story points. Bottom-up estimation is used as a cost estimation technique, which details the requirements of the project as well as estimates of cost for each task to finish the requirements of the software development project. It involves estimating the work at the lowest level of the project details. By building the cost as well as time estimation for each work package, the probability of the work is to be able to meet with projected amounts progress the sustainability. Profit estimation is done by analyzing the cost and benefit estimation of the agile project so that it would be recommended if the project is beneficial or not (Silva et al., 2020). Agile cost estimation helps in proper planning and estimation of the total efforts that is used for implementation and delivering of the software product to customers in terms of meeting deadlines. Preliminary estimation is also required for the project to determine the actual cost for the software development work.
Conclusion and Recommendations
The study concluded that a software development model is required to analyze the requirements of software products so that there is the proper development of the software with high-quality. The developers and customers are looking at low cost and risk with high quality as well as the small cycle of the time, such that there is the optimization of the software productivity plus superiority of the software product. The study also concluded that the strengths of the SDLC model are easy adaptability by the non-technical person, step-by-step development stages and clear and ambiguous requirements. Weaknesses of this model are at the end of the phase; the software is ready, high risk and uncertainty and integration is done at the end and no option to identify the problems. Based on the SWOT analysis, the selected method is an agile methodology that helps manage the software project by breaking it up into various phases. It is involved collaboration with the stakeholders along with continuous improvements at each phase of this method.
It is recommended that communication is required among the stakeholders to share the project's requirements among the project team. Weekly project meetings will help the stakeholders and team to know the purpose and objectives of the agile project. Risk management is also recommended for the SDLC model so that at an early stage of the project, the risks and issues are identified, assessed and controlled before it impacts the project's success.
Adanna, A. A., & Nonyelum, O. F. (2020). Criteria for choosing the right software development life cycle method for the success of software project. IUP Journal of Information Technology, 16(2), 39-65.
Borkovskaya, V. (2018). Project management risks in the sphere of housing and communal services. In MATEC Web of Conferences (Vol. 251, p. 06025). EDP Sciences.
Davis, W. S., & Yen, D. C. (Eds.). (2019). The information system consultant's handbook: Systems analysis and design. CRC press.
Dias, J. P., & Ferreira, H. S. (2018). State of the software development life-cycle for the internet-of-things. arXiv preprint arXiv:1811.04159.
Heeager, L. T., & Nielsen, P. A. (2018). A conceptual model of agile software development in a safety-critical context: A systematic literature review. Information and Software Technology, 103, 22-39.
Jongeling, R., Ciccozzi, F., Cicchetti, A., & Carlson, J. (2019). Lightweight Consistency Checking for Agile Model-Based Development in Practice. J. Object Technol., 18(2), 11-1.
Jüngling, S., Peraic, M., & Martin, A. (2020). Towards AI-based Solutions in the System Development Lifecycle. In AAAI Spring Symposium: Combining Machine Learning with Knowledge Engineering (1).
Klünder, J., Hohl, P., & Schneider, K. (2018, May). Becoming agile while preserving software product lines: an agile transformation model for large companies. In Proceedings of the 2018 International Conference on Software and System Process (pp. 1-10).
Martias, A. (2018). Analisa Kecukupan Penerapan Pengawasan Internal Dengan Metode System Development Life Cycle PT. XYZ. Moneter-Jurnal Akuntansi dan Keuangan, 5(2), 139-148.
Nicholas, J. M., & Steyn, H. (2020). Project management for engineering, business and technology. Routledge.
Pavlova, N., Onysh?henko, S., Obronova, A., Chebanova, T., & Andriievska, V. (2021). Creating the Agile Model to Manage the Activities of Project Oriented Transport Companies. Eastern-European Journal of Enterprise Technologies, 1(3), 109.
Silva, D. S., Ghezzi, A., de Aguiar, R. B., Cortimiglia, M. N., & ten Caten, C. S. (2020). Lean Startup, Agile Methodologies and Customer Development for business model innovation: A systematic review and research agenda. International Journal of Entrepreneurial Behavior & Research.
Tareque, M. H. (2021). Updating a web-based card game to teach programming, cybersecurity and software development life cycle concepts (Doctoral dissertation, University of Lethbridge (Canada)).
Thesing, T., Feldmann, C., & Burchardt, M. (2021). Agile versus waterfall project management: decision model for selecting the appropriate approach to a project. Procedia Computer Science, 181, 746-756.
Thrassou, A., Vrontis, D., & Bresciani, S. (2018). The agile innovation pendulum: A strategic marketing multicultural model for family businesses. International Studies of Management & Organization, 48(1), 105-120.
Yli-Ojanperä, M., Sierla, S., Papakonstantinou, N., & Vyatkin, V. (2019). Adapting an agile manufacturing concept to the reference architecture model industry 4.0: A survey and case study. Journal of industrial information integration, 15, 147-160.
To export a reference to this article please select a referencing stye below:
My Assignment Help. (2022). Software Engineering: SWOT Analysis Of SDLC And Agile Method's Effectiveness - Essay.. Retrieved from https://myassignmenthelp.com/free-samples/bg007-project-management/Software-Engineering-Process-Methods-file-A1DEC37.html.
"Software Engineering: SWOT Analysis Of SDLC And Agile Method's Effectiveness - Essay.." My Assignment Help, 2022, https://myassignmenthelp.com/free-samples/bg007-project-management/Software-Engineering-Process-Methods-file-A1DEC37.html.
My Assignment Help (2022) Software Engineering: SWOT Analysis Of SDLC And Agile Method's Effectiveness - Essay. [Online]. Available from: https://myassignmenthelp.com/free-samples/bg007-project-management/Software-Engineering-Process-Methods-file-A1DEC37.html
[Accessed 05 March 2024].
My Assignment Help. 'Software Engineering: SWOT Analysis Of SDLC And Agile Method's Effectiveness - Essay.' (My Assignment Help, 2022) <https://myassignmenthelp.com/free-samples/bg007-project-management/Software-Engineering-Process-Methods-file-A1DEC37.html> accessed 05 March 2024.
My Assignment Help. Software Engineering: SWOT Analysis Of SDLC And Agile Method's Effectiveness - Essay. [Internet]. My Assignment Help. 2022 [cited 05 March 2024]. Available from: https://myassignmenthelp.com/free-samples/bg007-project-management/Software-Engineering-Process-Methods-file-A1DEC37.html.