By Mackenzie B.
Rapid Application Development (RAD) is an agile software development framework that acts as an alternative to the waterfall model. In essence RAD is “achieved by implementing a series of techniques that are focused on speed, adaptability to requirements changes, and evolution” (Castro, Jain, Chandrasekaran). RAD is a continuously adapting framework that allows the developer to create prototypes and adapt to their customers needs throughout the entirety of the project.
For using the RAD the International Journal of Management & Information Systems produced a document called Identifying Suitable Projects For Rapid Development: Some Proposed Selection Criteria by Rashim Jain, Anithashree Chandrasekaran, and Lymari Castro, where the authors present the suitable projects to use this development framework on. Within the document they identify 10 criterions that are crucial to having a functional RAD project completed. They are: unstable requirements, multi-skilled teams, modularity, continuous customer collaboration, frequent deliveries or iteration prototypes, adaptive planning, continuous testing and integration, continuous risk management, continuous verification and validation and finally, low external dependencies. The project is more to be developed and produced as the project itself develops. Most likely, they’re ventures that have not been done quite yet before by the team however the project as a whole is deemed necessary for the company to continue to grow. This can be an advantageous developmental program as long as the venture follows the previously listed criterion to some extent.
The advantages from RAD come from its ability to adapt strongly to the customer’s needs and develop with the client as the program itself develops. It’s a win-win once the project gets moving as the development team can have more refined goals to complete with each prototype as there is significantly less up in the air for the client to rebuttal. The projects should be completed quickly and efficiently as long as the client is comfortable with where the project is developing from the development team.
The disadvantages of RAD stem from things similar to its advantages, while it is a continuous prototype developmental process, if the client doesn’t like any of the initial prototypes, it can take a long time to get the ball rolling for the development team. It can also be hindered by poor customer investment as they are a primary key in helping the project develop at a steady pace. RAD is a fast moving framework as it leaves hardly any time for the team to work on adapting; you either do or you don’t and if you don’t you’re left in the dust of your own project.
A lot of examples of RAD in use seem to stem from web portals or some sort of java scripting environment where adaptations are to be continuously made. In Scott Stiner’s article, Rapid Application Development (RAD): A Smart, Quick And Valuable Process For Software Developers, he talks about how him and his team work with an RAD framework to “contrast and maintain the client’s first-ever customer dashboard and analytical portal for energy management.” Stiner goes through the steps his team use to develop said portal which are separated into four phases. Requirements planning where the team develops and lays out what the client and the development team both want any issues that may present themselves and come to an agreement. From there they move to user design where the client works next to the developers to view the prototypes and offer input. Third is construction where they improve and slowly finalise the project and finally cutover where the project is implemented and everything is moved to the new system.
Another real world example of RAD in use is in Iosif Ziman’s paper titled RAD Applied in the Context of Investment Banking Trading Systems Development where Ziman talks about how the ever developing field of investment banking is the perfect fit for a development framework such as RAD. Things such as, “trade events, market information events, cancel and replace bids” are changing ever so frequently so you need a software that can adapt and develop as the environment around it changes. As the field develops and grows and as new tasks, needs and interfaces are needed to present to clients of investment banking, the RAD developmental framework allows the bank to have their software development team continuously develop and advance with them.
Rapid Application Development is a framework that grows both with the client but also with the development team. They both work in unison to create well produced software for the client’s needs and desires and are able to adapt to fit the requirements set forth at any point within the project. This fast paced framework is best used in the hands of a well skilled and ready to work team of developers.
1. Rashmi Jain, Anithashree Chandrasekaran, Lymari Castro (2015). Identifying Suitable Projects For Rapid Development: Some Proposed Selection Criteria
2. Iosif Ziman (2011). RAD Applied in the Context of Investment Banking Trading Systems Development
3. Scott Stiner (2016). Rapid Application Development (RAD): A Smart, Quick And Valuable Process For Software Developers Accessed from: https://www.forbes.com/sites/forbestechcouncil/2016/08/24/rapid-application-development-rad-a-smart-quick-and-valuable-process-for-software-developers/#2d0fce9e19e8