Within today's lecture we were given information towards the method that have been used between the 1980's-1990's and then from the 1990's onwards for Rapid Application Development (RAD). Within the 1980's a method called Structured Design was used to attempt to erase all problems that happened before this time. Within the Structured Design section there are 2 different types of project management methods that were produced in order to try and make project management easier. These 2 methods include:
- Waterfall Method
- Parallel Process
Within each type of process, there are 4 steps that are used to manage the application development and these are:
- Planning
- Analysis
- Design
- Implementation
Both of these methods differ to each other vastly, and contain their positive and negative factors.
- Waterfall Process
The Waterfall Process is a sequential life cycle, which in other words means that one thing happens after the other, and runs in a sequence where once one section has been created, it cannot be returned too. With the Waterfall method, in exceptional circumstances, if mistakes are made in later sections of the process of the project management then earlier sections can be revisited, although this is rare and isn't recommended. The Waterfall process does have one major negative effect - designing the documents upfront means they can be very hard to understand due to their length.
2. Parallel Process
The Parallel Process is generally used for splitting the project once the "Design Phase" has been created. The Planning and Analysis section are created respectively in order, but once the Design phase is reached an initial Design section is created, followed by 2+ splits. These splits are used for work to be carried out on different sections of the Design process, so that the progress of the project can actually be viewed and evidence is provided. The 2+ splits for the Design process lead onto an Implementation process to be carried out for each of the splits. Once all of these Implementation processes have been completed then they merge back together to form an Integration section which eventually leads onto the final system been produced. Generally, by using this process, the project management is shortened, however a negative factor to bear in mind when using this process is that there will be 2+ different "mini phases" been carried out, therefore there is a high risk of mistakes been carried out in the different phases, and when the convergence stage occurs, these mistakes will be integrated.
Following these 2 methods been created within the 1980's, and the mistakes that were been created within these processes been recognised, 3 more processes were created in the 1990's to reduce mistakes and errors that could potentially arise. The aim was to try and respond to the problems by ensuring a quicker delivery and also less paperwork.
- Phased Development
Phased Development was created so that the different phases were completed in order of importance, meaning that the project is completed in phases/versions so that the user can constantly receive updates towards the system they want to use. Aid of a diagram is much better to explain this process, although in basic terms the process runs like this:
Planning > Analysis > Analysis (Version 1) > Design (Version 1) > Implementation (1st Version) > System Created (Version 1) > Analysis (Version 2) > Design (Version 2) > Implentation (Version 2) > System Created (Version 2) > Analysis (Version 3) > Design (Version 3) > Implemenntation (Version 3) > System Created (Version 3).
This version has lots of positive features:
- Customer receives "something" very quickly, despite it not been fully created.
- While customer uses version 1, work is carried out on version 2 - therefore constant implementation.
- If problems are located within the first version then the system upgrade process can be used to erase these issues.
- Saves having to wait for the entire system to be fully created, then errors are found and erased.
- Documentation is much smaller, as there are small systems for continuously created systems.
2. Prototyping
Prototyping allows the customer to have a "play" or a "trial" with the version created, and notes/feedback is given to the creator for faults that many be found. Within this version the following process is carried out:
Planning, Analysis Design and Implementation (Carried out at once) > System Prototype (Not a fully working version) > A loop is then created going back to the Analysis Design and Implementation sections so that errors found can be erased. This process is carried out until all problems have been found then the final Implementation process can be carried out, followed by the system been fully produced.
With this method though, there is a major disadvantage that if any initial problems are found in the first version, they are usually carried out in the later versions. If a problem occurs in the Analysis section, then the customer may not realise it, and it means that the same errors are looped over and over for many versions. Another negative is that no guarantee can be made that the customer will be happy, as feedback is not always exact.
3. Throwaway Prototyping
Throwaway Prototyping is exactly the same as prototyping apart from the early versions are not created, and only a design prototype is created. The process used for Throwaway Prototyping runs as follows:
Planning > Analysis (Thorough Analysis) > Analysis, Design and Implementation > Design Prototype (Not a System Prototype) > A loop is then created going back to the Analysis Design and Implementation sections so that errors found can be erased. This process is carried out until all problems have been found then the final Implementation process can be carried out, then a stem is created coming from the Analysis Design and Implementation section for the Final Design section to be completed > Implementation > System Produced.
Design prototypes continuously made until all problems that may arise are made. "Throwaway" means the Final Design flies away from the rest of the system created so far. This method is a way of creating a Final Design with all other problems that COULD arise been solved. A negative effect for this process is that the client/customer may not want this process to be carried out, as evidence of the work been produced isn't seen, only Design Prototypes are made.