Steps to Project Completion
Problem Definition: The current system needs to be analysed to determine why a new system is needed for the current system. The analysist needs to discover what is needed to be added and why it is needed, this needs to be done as the developer will be unable to produce the needed product without this information, or they might develop something that is incompatible with the current system or add features that simply shouldn’t be there are not needed. The analyst needs to define specifically what is wrong and what needs to happen, to do this there are several methods: One on One interviews, Mass surveys and simple observation of the current systems.
Feasibility Study: Once the analyst is confident that they have discovered the problems and found all they need to know, then they need to determine whether or not it is feasible to actually take action to develop the product or not. Average questions that are asked during this stage are questions about the Cost, the possible Budget, will there be enough Time, does the company have the necessary Skills to develop it, does the company have the necessary Hardware to develop the product, do they have the needed Software to run the product and how much it would cost, will there need to be Training to run the program once made and would it be Technically possible to create.
Systems Investigation: Once the management has listened to any alternate solutions that might be provided by the System Analyst and have decided to either commission the new product to be developed, or to make changes to a pre-existing product/system. During this phase, a very detailed investigation will be carried out to understand the current system and the proposed new system. With the current system, the analyst and developers will need to know how staff/ customers interact with it, how other systems interact with the current system, what is good about the current system and what could cause problems with the current system. With the new system, the analyst and developers will need to know what the new system/product needs to be able to do, how it is going to do this, what people want from it and how it should be incorporated into the system. To do this, the analysist would perform Face-to-Face Interviews with potential users of the system to see what they would like, perform observation how users use the current systems to try to create a way to seamlessly integrate the new product into the current system so the users can use it with efficiency.
Systems Design:Once the project manager and the client have agreed upon the requirements (Requirements Specifications) is becomes the time to define the project for its last few stages before the project enters development. This phase is called the Design phase, during this phase the project is designed in detail to ensure that the product will meet the user’s requirements. This involves Project Planning, System Requirements Specifications, the Data Dictionary and the Testing Documentation.
- Project Planning: This is about handling staff associated with the production of the product: how many are involved, where and when they are needed for the project. It would also include information about what resources they might need: computers, office spaces, soldering kits etc. it would also include the planning tools, which are used in this section such as Gantt Charts, Critical Path Analysis (CPA) and any Project Management Software.
- System Requirement Specification: This document will contain information such as the capture methods used to gather data for the system, any of the inputted data that goes into the system, any data that is outputted from the system, how the data is processed through the system. In addition, a record of the file structure for the data storage, how the UI (User Interface) is designed, how it interacts with the OS (Operating System) being used and the hardware that is going to be used on the new system.
- Data Dictionary: This defines Tables, fields, records and relationships, along with the constants, variables and data structures. As well as any validation that is required in the system along with any query structures.
- Testing Documentation: From the gathered information from the analysts, the developers will know what is expected of the final product; from this, they will be able to develop a Test Plan for the key parts of the product once developed, and more tests can apply later.
Requirements Analysis and Specification: In this section, the developers would need to know all of the requirements that is needed in the final product and why. This includes what the final project should be what it should do, how it should do it and a business case stating whether it could be done on a budget with details stating how much it should cost. It also includes whether or not it is recommended to pursue this course of action or if it would be more beneficial to follow another course of action.
System Development & Testing: During this stage, the main development of the product takes place using the previously acquired information to correctly design the product. Normally, if possible, the project would be separated amongst several people or teams of people to allow for them to each work on parts of the project individually to help speed up the development. Once a functional version of the product is ready, the developers will run the product through a series of tests that have been made in the prior test plan document. By using this Test Plan, the development team can learn what works, what does not and what might need to be done to improve, refine or fix any issues that could be causing problems.
System Implementation: This is when the product is implemented into the main system; to do this the developers will have previously designed to work with the main system. This is also when the product is put out for sale and is distributed to the client and other potential buyers or clients.
System Maintenance: This continues for the lifetime of the product, any Technical Documentation that has been created previously including anything like the Test Log, Data Dictionary and the Project Planning for technicians to perform maintenance as needed. This will allow technicians to see what components of the product do what and use this to help solve any issues that might arise.
Review & Evaluation: Once everything is complete the Project manager will review how well the overall development of the product, see where things might have gone wrong or see what was handled better than other parts. From this review they will be able to see how well certain parts of the process and know what needs to be improved.