Why system analysis is important in the software development process.

James Oladimeji
3 min readJul 10, 2021
source: https://www.getsmarter.com/blog/career-advice/business-systems-analysis-important-business-faqs/

Software is a set of programs or instructions that instruct the computer what to do and is completely independent of hardware, and is generally categorized as system software, programmable software and application software (Dempster, 2021). The analysis and synthesis of the software categories are guided by a set of principles which are documented in the Software Engineering Body of Knowledge(SWEBOK). The successful application of software development principles to designing useful products/software is guided by the approach of “Use top-down structure programming, use a few good guys” and this could only achieve if the process systematically follow seven basic principle of software engineering which are: manage using a phased life cycle plan, perform continuous validation, maintain discipline control, use modern programming practices, maintain clear accountability for results, use better and fewer people and maintain a commitment to improve the process (Boehm, 1983).

Among the listings above, the first is generally referred to as software development lifecycle(SDLC) phases. SDLC is the process of the information system through the following successive phases: 1. feasibility study, 2. system investigation, 3. system analyst, 4. system design, 5. System implementation and 6. Review and maintenance (Constantinos J., 2021). System analysis is the careful examination of a business problem that an organization is planning to solve and it encompasses the feasibility studies and requirement gathering phases and contributes about 40% to software development projects(Tonya, 2021).

As foundation is critical in building engineering so is true in the system designing and development. The system analysis is the foundation of a software project that involves majorly feasibility studies, requirement gathering and whoever does the two is called system analyst(Tonya, 2021). Feasibility study is the stage where organization discuss the value, the cost, implication and importance of the product to the organization and this could be technical (in terms of hardware, software etc to use), economical (the cost of the product and likes), operational (maintenance and deployment), legal feasibility(the implication of the product to the society) and schedule(analysis of timelines/deadlines of the project). The feasibility studies determine if the project should be continued or not and also foresee the risk and problem that may arise in the future (Satyabrata, 2020).

What comes after feasibility studies is requirement gathering where questions are asked and answers provided, among the questions asked are not limited to: who has a stake in the problem(i.e who are the stakeholders)? What are the unknowns? Can the problem be compartmentalized? Can the problem be represented graphically? And what are the use cases? The answers to those questions are called system investigations and this could be functional and nonfunctional requirements(McCabe, 2007). Requirement gathering is a critical phase of the software project as it entails what to be builts, views to be expressed and information to be captured(Lane et al., 2016).

Most of the software failures are as result of improper requirement gathering and poor feasibility studies which thus make system analysts important in the software development industry. If a project will take twelve months to develop, feasibility studies and requirement gathering should take at least 5 months.

References

Boehm, B. W. (1983). Seven basic principles of software engineering. Journal of Systems and Software, 3(1), 3–24. https://doi.org/10.1016/0164-1212(83)90003-1

Constantinos J., S. (n.d.). System Development Life Cycle — An overview | ScienceDirect Topics. Retrieved July 10, 2021, from https://www.sciencedirect.com/topics/computer-science/system-development-life-cycle

Dempster, J. (2021, July 8). What is software development. https://www.ibm.com/topics/software-development

Lane, S., O’Raghallaigh, P., & Sammon, D. (2016). Requirements gathering: The journey. Journal of Decision Systems, 25(sup1), 302–312. https://doi.org/10.1080/12460125.2016.1187390

McCabe, J. D. (2007). 3 — Requirements Analysis: Process. In J. D. McCabe (Ed.), Network Analysis, Architecture, and Design (Third Edition) (pp. 99–158). Morgan Kaufmann. https://doi.org/10.1016/B978-012370480-1/50004-9

Satyabrata, J. (2020, June 26). Types of Feasibility Study in Software Project Development. GeeksforGeeks. https://www.geeksforgeeks.org/types-of-feasibility-study-in-software-project-development/

Tonya, B. (n.d.). System Analysis — An overview | ScienceDirect Topics. Retrieved July 10, 2021, from https://www.sciencedirect.com/topics/computer-science/system-analysis

--

--

James Oladimeji

I have always wanted to know how things work. I hate magic. This curiosity has driven me to programming, Java is my first and is to death do us part.