Software Analysis, Details of Importance


by Thomas Carter                                                                                       November 8, 2018

 

Abstract

   
    Systems Analysis has a critical importance in the creation of well designed and functional software systems. We will explore several items which are essential keys to successful software development and creation.

Table of Contents


  • Introduction
  • Systems Analysis, Who’s Who?
  • Systems Analysis, One step at a time Please
  • Systems Analysis, Standards Are King
  • Conclusion

Introduction

    
    In the various stages or phases of the software life-cycle, a systems analysis certain individuals are involved in the process and necessary for optimal application and usage of the software. We will look at some of the various stages to examine their importance and need for standardization.

Systems Analysis, Who’s Who?

    
    During the course of a software project certain individuals are involved in the process and necessary for optimal application and usage of the software. The users chosen for this phase, or step, should typically be subject matter experts (SME) who can make beneficial contributions to the design and application of the software. These “experts” should be able to provide software usage scenarios, use cases, process exceptions, participate in prototyping validation, and user acceptance of newly released software applications. 

   A second group of users would be from higher management, who would also provide company direction and be able to approve, or “sign off”, of the accuracy and completeness of the requirements. The end users or subject matter experts would then be able to validate that the software does, in fact, meet those same given requirements. [1]

The Systems Analysis, One step at a time Please

    
    We have mentioned phases in the software development process, but have really discussed what these phases are, or how many phases are needed to successfully complete a project. While this is a lengthy conversation, regarding many details, we can briefly say that we need three phases, or steps, to make an iterative project. These three steps would be named as analysis, development, and implementation. No matter what approach is used, these three steps must be included as essential to complete a project, because without one of these three steps, a product could be successfully released to a production environment. [2] 

    Some might argue that another fourth step would be critical in a successful software release, this being a testing phase –and I would fully agree with them. However in some businesses, the testing phase is included within the “development” phase, and in other businesses, they include the testing phase within the “implementation” phase. In either case, the testing step can be included, in one of the three main steps given here. In fact, I suggest that there are many other steps that are actually needed for a successful software release, but for the purpose of this document set, we will focus on these three for the sake of simplicity. 

     In each of these phases, or steps, it is critical for the meeting, details, and decisions to be fully documented (or at least bulleted). As a means of open collaboration and knowledge sharing, these project decisions should be made openly available on a company intranet, publication, or project documentation. The main reason for well documented and accurate project details is training current and future employees, though there are many other important reasons for keeping good documentation and job saving records. 

Systems Analysis, Standards Are King

    
    As with any great or important task, a standardized approach can provide a needed “safety net” for unknown situations that may arise and stall a project. This principle would definitely apply for analysts, and development teams alike, who may not be at an expert level on the subject(s). Now, I reiterate that, there are many arguably important sets and bases of software standards, and in any of these cases, a standardized approach provides a solid basis that all team members and employees can follow for common results and expectations. 

    In a software project, the various phases of planning, timelines for project release into a production environment, testing timelines, user preparation and training, and support of the new implementation must all adhere to some level of standardization, or the project would never be deployable. For example, if there were no standards in a systems project, the end users would have very little idea how the current system functioned under normal conditions, and the system administrators would have no idea how to deploy the software into the production environment i.e. what server(s) the software should be installed and configured to run on. Without a standardized approach for a software project, the analysis phase might consist of one conversation. That set of verbal of ideas, or “requirements”, may later be incorrectly delivered to a developer, who misses the entire purpose and essence of the software release. The guarantee of a successful and useful software release in this type of environment is greatly reduced, along with productivity and profitability of the company in which it exists.

Conclusion


   In this document, we have covered several essential keys to successful software development and creation. We have discussed some reasons and the importance of including end users in the analysis phase of software projects. A phased, and fully documented, approach to software development can provide the benefits of a successful and useful release as well as provide necessary training materials for future employees. A standardized approach to software development is important only when success is also a desirable end. When one considers all the factors involved in a large software project, standards must be applied to bring order to the project and timeline. [3] When you think about it, standards are applied even in the most chaotic environments; it just depends how cognizant the individuals may be in their decisions. For example, if the typical and standard step of management during a system failure is to panic, the chances of success are still within reach, but a sound and logical long term solution may never be. In this case, the standard was still applied to the situation, but the manner of approach is situational and temporarily effective. Thus, a standardized and business applicable set of well tried standards is critical to project success and long term efficiency.


References


[1] Detmar Straub and Jonathan Trower, "The Importance of User Involvement in Successful Systems: A Meta-analytical Reappraisal", March 1988

[2] Ron Burback, "Software Engineering Methodology: The WaterSluice", December 1998

[3] Michael Morris and Andrew Dillon, “The Importance of Usability in the Establishment of Organizational Software Standards for End User Computing", 1996


No comments:

Post a Comment