What is the difference between "requirements analysis" and "gap analysis?"
In information technology, gap analysis is the study of the differences between two distinct information systems or applications. A gap is often said to be "the space between where you are and where you want to be." Gap analysis may be defined simply as the difference between what is needed and what is available. Gap analysis is a comparison process of two systems, and is undertaken as a means of bridging the space between them. Gap analysis provides a foundation for measuring investment of time, money and human resources required to achieve a particular outcome (for example, to turn the payroll process from paper based to paperless with the use of automation).
In business and economics, gap analysis is the assessment of business resources by comparing actual performance with its potential performance. The goal of the gap analysis is to identify gaps in optimized performance. This provides a company with insight into potential improvement. Such analysis can be performed at the strategic or operational level of an organization. Gap analysis is the study of what a business is doing currently and where it wants to go in the future. Note that "GAP analysis" has also been used as a means for classification of how well a product or solution meets a targeted need or set of requirements. In this case, "GAP" can be used as a ranking of "Good," "'Average" or "Poor."
Conversely, requirements analysis is the process of describing how stakeholder needs are to be analyzed, structured and specified for use in the design and implementation of an acceptable solution to a business problem. The objective is to articulate the characteristics of what is needed so that an optimal solution can be designed and implemented. Requirements analysis involves the creation of models that help to determine the full extent of the stakeholder needs. These models are used to refine the overall scope of the problem domain and the investigation. Requirements analysis reveals missed or poorly defined stakeholder needs.
There are three broad types of solution development methodologies that might be used during requirements analysis:
- Business process analysis -- focuses on improving the processes of the organization in order to achieve business objectives.
- Object-oriented analysis -- views an information system as a collection of classes that pass messages to one another, and which contain data attributes and the operations that are used to create and modify those attributes.
- Structured analysis -- takes a perspective that the system is a collection of processes executed by the system, and analysis is therefore process-centric.
- Quality software performance doesn't happen accidentally
- What are requirements types?
- Software requirements: Using models to understand users' needs