A feasibility study is used to determine whether or not new a new proposed software system is worth implementing or if it is even possible to implement at all. Such a study should inform the decision of whether or not to carry on with the project. The input to a feasibility study is a set of requirements by the business, an outline description of the system and how the system is supposed to support business processes. The result of a feasibility study should normally be a report that recommends whether or not development of the system should move forward.
Table of Contents
Objectives of feasibility study
The main objective of a feasibility study is to establish the reasons for developing the software that is acceptable to users, adaptable to change and conforms to existing standards.
The other objectives of a feasibility study are as below:
- Determining whether the software will meet the requirements of the organisation that will use it.
- Determining whether the software can be implemented using the current technology and within the specified budget and schedule.
- Determining whether the software can be integrated with the other already existing software.
Types of feasibility
There are three main types of feasibility which are investigated during the feasibility study of a prospective software system for a particular organisation. These are the technical, the operational and the economic feasibilities.
This involves the assessment of the current resources and technology (e.g. the hardware and software) which are required to accomplish the user requirements in the software within the allocated time and budget. The following tasks are carried out during the course of such a study:
- The technical skills and capabilities of the members of the development team are analysed.
- It is determined whether the relevant technology is stable and established enough.
- Whether the demanded technology is available or if the requested features can be achieved with the current/available technology.
- In many cases it is also necessary that it be determined whether the technology chosen to develop the software has a large enough number of already existing users who can be consulted when problems are encountered or if there is need for improvement.
Operational or behavioural feasibility helps check whether the employees in the business will use the system or not. Operational feasibility relies on human resources and analyses whether the software will operate properly after it is developed or not.
The following tasks are performed by the operational feasibility:
- A determination of whether the problems anticipated in user requirements are of high priority.
- A determination of whether the solution suggested by the software development team is acceptable.
- The user friendliness of the software is evaluated.
- Its interface should be simple enough for the prospective users to be able to use it without significant difficulty.
- An analysis of whether users will be able to adapt to the new software.
- An analysis of whether the organization is satisfied by the alternative solutions provided by the software development team.
Economic feasibility helps determine whether the required software is capable of generating financial gains for the organisation. This facet of the feasibility study involves the consideration of factors such as the cost incurred on the (hiring of the) software development team, the estimated cost of hardware and software and the cost of performing the feasibility study. The costs made on purchases (such as those of hardware) and the activities required to carry out software development are considered. Additionally, it is necessary to consider the benefits that can be achieved by developing the software—the software is said to be economically feasible if its development is still deemed to make financial sense and is able to produce long-term gains for the organisation after factors such as the following have been considered:
- The cost incurred on software development.
- The cost required to conduct full software investigation (such as requirements elicitation and requirements analysis).
- The cost of hardware, software development teams and training.
The feasibility study process
Here the information about whether the system helps in achieving the objectives of the organisation is assessed.
Specifies the possible sources of information from whence information about the planned software can be obtained. Generally these sources include the people who are supposed to use the software, the organisation where it will be used and the development team itself.
A feasibility report is the conclusion of the feasibility study by the software development team. It includes recommendations about whether the software development should continue. This report may also include information about changes in the software scope, budget and schedule and suggestions of any requirements in the system.
Benefits of conducting a feasibility study
- It enhances the focus of the project team members.
- It helps in identifying new opportunities.
- Valuable information is provided for decision making.