What’s this? A new content concept? Yes! You are right. From now on we will enlighten you with a monthly FAQ about a particular topic. The topics can vary from a new/cool technology we work with to a new trend in the consultancy world.
The first FAQ is about Rapid application development(RAD): Rapid application development is widely used in the development world nowadays. It might not be that hard to understand, but there are still a lot of questions asked about this topic. We are here to answer your questions about this topic to make it more clear for you.
Rapid application development is a form of software development that focuses on making a working prototype and gathering feedback from users instead of strict planning and the recording of requirements. Rapid application development is described as a form of agile software development in which you deliver the preferred piece of software in small iterations.
The model has six steps you’ll need to go through:
Figuring out the requirements: Start to figure out what your project needs to succeed;
Build a prototype: Start building right away, it has rapid in the name for a reason;
Get feedback from you users: Make sure it matches the user expectations. RAD is an ongoing collaboration between developers and users;
Repeat steps 2 and 3: Repeat until you are sure that the program works and met user expectations;
Test ….. A lot: Developers and users need to test different scenarios in order to make sure it actually works properly under different circumstances.
Present your system: The final step is of course to present your final product.
This way of developing software has a few advantages. The first and most obvious advantage is that it saves time. Using this method of development of an application will take significantly less time than it normally would.
The second advantage is that a lot of components can be reused.
The third advantage is that the method encourages customers to give their feedback.
The fourth and final advantage is that by integrating the program from the beginning, you will avoid a lot of integration problems.
No method has only advantages, just like this one there are disadvantages to using a certain method. The disadvantages of using rapid application development are: High costs, the need for skilled developers (which contributes to the high costs) and only programs that can be modularized can be built by using RAD.
One thing is time, time is not only an advantage but also kind of a requirement if you want to use rapid application development. Projects from which you know they are going to cost you more than 2-3 months are not really projects you will normally do by using rapid application development.
A second thing is that you’ll need to have the right resources. Rapid application development requires a highly skilled development team. Highly skilled developers come at a price, so make sure you have enough resources (money) to get a good team together.
The last thing is the amount of time you ask of your test users. Because of the small iterations you won’t have to ask user for loads of time, but you will still have to make sure if they have any time at all to test your iterations.
One of the most used and popular programming languages around is Python. Python is especially efficient when you are building & integrating multiple systems. Another great framework we also like to use for RAD is the Ruby on Rails framework. This framework is based around the “don’t repeat yourself” philosophy. The biggest advantage of Ruby on Rails is the speed that it provides and since time is the biggest factor in RAD, Ruby on Rails is a good option for RAD.