You are on page 1of 11

Advantages and disadvantages of RAD (Rapid Application Development)

2011-02-17 11:37 am
Advantages
Flexible and adaptable to changes Can handle large projects without a doubt RAD realizes an overall reduction in project risk RAD realizes an overall reduction in project risk. Generally Rad incorporates short development cycles (According to the wiki.answer.com)

Disadvantages
Cant use for small projects Requires more resources and money to implement RAD All applications are not competible with RAD RAD is not appropriate hen technical risks are high Need both customer and developer commitments to complete a project. Otherwise RAD wil fail

http://sameeradilhan.com/advantages-and-disadvantages-of-rad-rapid-application-development

http://istqbexamcertification.com/what-is-rad-model-advantages-disadvantages-and-when-touse-it/

What is RAD model- advantages, disadvantages and when to use it?


posted on JANUARY 13, 2012
?

RAD model is Rapid Application Development model. It is a type of incremental model. In RAD model the components or functions are developed in parallel as if they were mini projects. The developments are time boxed, delivered and then assembled into a working prototype. This can quickly give the customer something to see and use and to provide feedback regarding the delivery and their requirements.

The phases in the rapid application development (RAD) model are: Business modeling: The information flow is identified between various business functions. Data modeling: Information gathered from business modeling is used to define data objects that are needed for the business. Process modeling: Data objects defined in data modeling are converted to achieve the business information flow to achieve some specific business objective. Description are identified and and created the for CRUD actual of data objects. system. Application generation: Automated tools are used to convert process models into code Testing and turnover: Test new components and all the interfaces. Advantages of the RAD model: Reduced development time.

Increases reusability of components Quick initial reviews occur Encourages customer feedback Integration from very beginning solves a lot of integration issues. Disadvantages of RAD model: Depends on strong team and individual performances for identifying business requirements. Only system that can be modularized can be built using RAD Requires highly skilled developers/designers. High dependency on modeling skills Inapplicable to cheaper projects as cost of modeling and automated codegeneration is very high. When to use RAD model: RAD should be used when there is a need to create a system that can be modularized in 2-3 months of time. It should be used if theres high availability of designers for modeling and the budget is high enough to afford their cost along with the cost of automated code generating tools. RAD SDLC model should be chosen only if resources with high business knowledge are available and there is a need to produce the system in a short span of time (2-3 months).
ISTQB EXAM CERTIFICATION

ISTQB Certification is an internationally recognized software testing certification which is an essential part of QA Trainings in many organizations. ISTQB certification is also important for candidates looking for a job as a Software Tester. This site contains everything you need to know about the ISTQB exam including the study material / study guide you need in order to successfully pass the ISTQB Foundation Level exam. ISTQB has 3 levels of certification Foundation Level, Advanced Level and Expert Level.

What are the Software Development Models?


posted on JANUARY 13, 2012

The development models are the various processes or methodologies that are being selected for the development of the project depending on the projects aims and goals. There are many development life cycle models that have been developed in order to achieve different required objectives. The models specify the various stages of the process and the order in which they are carried out. The selection of model has very high impact on the testing that is carried out. It will define the what, where and when of our planned testing, influence regression testing and largely determines which test techniques to use. There are various Software development models or methodologies. They are as follows: 1. Waterfall model 2. V model 3. Incremental model 4. RAD model 5. Agile model 6. Iterative model 7. Spiral model
http://istqbexamcertification.com/what-are-the-software-development-models/

http://www.buzzle.com/articles/advantages-of-rapid-application-development.html

Advantages of Rapid Application Development Rapid Application Development or RAD is a kind of software development methodology that enables development of software applications in a short period of time. This article lists the advantages of using the RAD methodology, and explains why it one of the most sought-after software development processes around.

We live in times of cut-throat competition, where the delivery time of a product may decide the success or failure of a product or business. In such a scenario, rapid application development has gained a lot of attention and importance, especially in the software development field, where change is said to be the only constant. The term 'rapid application development' was first coined by James Martin in the year 1991. According to him: Rapid Application Development (RAD) is a development life cycle designed to give much faster development and higher-quality results than those achieved with the traditional life cycle. It is designed to take the maximum advantage of powerful development software that has evolved recently. RAD methodology enables quick development of software products by using Computer Aided Software Engineering (CASE) tools, in combination with methods of iterative development and rapid prototyping. It aims at reducing the time involved in the planning phase. It drastically reduces the time required for software development, usually taking somewhere between 30 to 90 days for the complete development life cycle. RAD is a combination of a well-defined methodology, dedicated and trained staff, and proper and efficient management practices. Such a fast-paced approach, may, at times, come with its own set of compromises in terms of product features and scalability. However, the advantages of rapid application development greatly surpass these few drawbacks. Faster Delivery Time The primary advantage of RAD is a faster development life cycle, and a better turnaround time of the software product. This is achieved by rapid prototyping, and by using automated tools like Computer Aided Software Engineering or CASE tools, that enable the developers to re-use previously generated codes, thus saving the time needed for manual coding. The CASE software tools are a major contributing factor in reducing the delivery time in the RAD methodology. Better Quality Although the RAD process may imply some compromise in terms of scalability and the range of features in the product, it still leads to a better overall quality of product being delivered. RAD

enhances the product quality by meeting the requirements of the customers, and by providing a considerable reduction in the errors due to the use of automation tools and prototyping. Errors and omissions are detected in the early stages of development, thereby preventing any extra effort or cost. Lower Cost Customers are willing to pay more for a good quality product delivered in a short time frame. RAD involves the use of existing reusable components, leading to a lower cost of production. Automation results into a lesser number of resources being required for the development of the software. Lower Maintenance According to statistics, 65% of the IT budget in a company is spent on the maintenance of already existing systems. Updating these traditionally developed software is usually a very tedious and timeconsuming process. RAD allows for software solutions to be built in a way that facilitates better maintenance and upgrading of applications. Greater Customer Satisfaction The RAD methodology involves active participation of the customers and end users in all stages of analysis and development of the application. It is especially helpful in scenarios where the user requirements are uncertain, or not fixed. The development team offers a series of functional prototypes to the end users, and integrates customer feedback at every stage of development. This cycle is repeated until a series of such prototypes result into a fully-integrated final product. Time Boxing RAD uses a process called time boxing, which offers a method of controlling the features to be released in the current, as well as the future versions of a software product. This helps in releasing the product version in a shorter frame of time, by including only the essential features in the current version. It aims at dividing the project into sub-modules called time boxes, and allocating fixed deadlines and budgets for each time module. Better Project Management In RAD, there is active participation of the management, the development teams, as well as the business owners and end users. As a result, there is a better collaboration between all stakeholders, and hence, a better understanding of the client requirements and expectations. Also, the project receives better visibility and support from the management. Reduced Risk Due to the iterative approach and prototyping, testing and integration of end user feedback happens at each stage of product development. Hence, the end product has lesser number of changes and

defects, thereby minimizing the risks involved in the project. There is little or no testing effort involved. The advantages listed above clearly indicate why rapid application development is a fast and efficient methodology for software development, delivering great quality in a cost-effective and timely manner. Read more at Buzzle: http://www.buzzle.com/articles/advantages-of-rapid-applicationdevelopment.html

http://www.my-project-management-expert.com/the-advantages-and-disadvantages-of-radsoftware-development.html

The Advantages and Disadvantages of RAD Software Development RAD software development might have fallen out of favour with the advent of agile methodology, but it still has a important place in certain types of software developments. To understand whether it best suits your needs we have compiled a list of advantages and disadvantages regarding RAD to enable you to make your own mind up. Advantages of RAD Software Development 1. The time required to develop the software is drastically reduced due to a reduced requirement analysis business requirements documentation and software requirement specification) and planning stage. 2. All the software prototypes produced can be kept in a repository for future use. The reusability of the components also enhances the speediness of the process of software development. 3. It is much easier for a project manager to be accurate in estimating project costs which of course means that project cost controls are easier to implement and manage as well. 4. It is a big cost saver in terms of project budget as well as project time and cost due to reusability of the prototypes. 5. If a component is being picked for the repository, it is already tested and hence need not be tested again. This helps in saving time required for testing. 6. The project management requirements are collected in a dynamic manner. Every time there is a prototype ready, requirements are studied and matched. If there are any additional requirements, these are then included in the next prototype built.

7. There is a strong and continuous participation of the project sponsor who keeps giving feedback in the whole process. Hence the end user satisfaction level is higher when the end result is produced. 8. It promotes better documentation through written test cases. Disadvantages of RAD Software Development 1. This method may not be useful for large, unique or highly complex projects 2. This method cannot be a success if the team is not sufficiently motivated and nor is unable to work cohesively together. 3. Success depends on the extremely high technical skills of the developers. 4. There are times when the team ignores necessary quality parameters such as consistency, reliability and standardization. Hence this can make project quality management hard to implement during the project management life cycle The Advantages and Disadvantages of RAD Software Development - Tip RAD is best used when you are developing something which is basically being built upon the foundations of an existing prototype. The reason being that a key part of this methodology is the reuse of prototypes which reduces both the process of software development and the testing time required. However it should not be used for new cutting edge functionality which has not been developed before. It is for this reason that RAD methodology is never used in New Media or Web 2.0 development projects. Since these usually consist of completely new functionality requirements RAD simply wouldnt work. And of course once a system has been built using say Agile principles, this will always be the approach used when looking to upgrade the functionality developed further down the line.

http://www.selectbs.com/analysis-and-design/what-is-rapid-application-development

What is Rapid Application Development? (RAD)


Application Development refers to the developing of programming applications and differs from programming itself in that it has a higher level of responsibility, including for requirement capturing and testing. Rapid Application Development was a response to non-agile processes developed in the 1970s, such as the Waterfall model. The problem with previous methodologies was that applications took so long to build that requirements had changed before the system was complete, often resulting in unusable systems. Starting with the ideas of Barry Boehm and Scott Shultz, James Martin developed the Rapid Application Development approach during

the 1980s at IBM and finally formalised it by publishing a book in 1991.

Advantages and disadvantages


Rapid Application Development systems commonly have these advantages: increased speed of development and increased quality. The speed increases can be achieved using a variety of methods including, rapid prototyping, virtualization of system related routines, the use of CASE tools and other techniques. Quality, as defined by RAD, is both the degree to which a delivered application meets the needs of users as well as the degree to which a delivered system has low maintenance costs. RAD increases quality through the involvement of the user in the analysis and design stages. Some systems also deliver advantages of interoperability, extensibility, and portability. Early RAD systems had two primary disadvantages: reduced Scalability, and reduced features. Reduced scalability occurs because a RAD developed application starts as a prototype and evolves into a finished application. Reduced features occur due to time boxing, where features are pushed to later versions in order to finish a release in a short amount of time.

Rapid Application Development (RAD) Model and its Advantages and Disadvantages of RAD Model
WRITTEN BY DINESH THAKUR

The rapid application development model emphasizes on delivering projects in small pieces. If the project is large, it is divided into a series of smaller projects. Each of these smaller projects is planned and delivered individually. Thus, with a series of smaller projects, the final project is delivered quickly and in a less structured manner. The major characteristic of the RAD model is that it focuses on the reuse of code, processes, templates, and tools.

The phases of RAD model are listed below.


1.

Planning: Inthis phase, the tasks and activities are planned. The derivables produced from this phase are project definition, project management procedures, and a work plan. Project definition determines and describes the project to be developed. Project management

procedure describes processes for managing issues, scope, risk, communication, quality, and so on. Work plan describes the activities required for completing the project.
2.

Analysis: The requirements are gathered at a high level instead of at the precise set of detailed requirements level. Incase the user changes the requirements, RAD allows changing these requirements over a period of time. This phase determines plans for testing, training and implementation processes. Generally, the RAD projects are small in size, due to which high-level strategy documents are avoided.

3.

Prototyping: The requirements defined in the analysis phase are used to develop a prototype of the application. A final system is then developed with the help of the prototype. For this, it is essential to make decisions regarding technology and the tools required to develop the final system.

4.

Repeat analysis and prototyping as necessary: When the prototype is developed, it is sent to the user for evaluating its functioning. After the modified requirements are available, the prototype is updated according to the new set of requirements and is again sent to the user for analysis.

5.

Conclusion of prototyping: As a prototype is an iterative process, the project manager and user agree on a fixed number of processes. Ideally, three iterations are considered. After the third iteration, additional tasks for developing the software are performed and then tested. Last of all, the tested software is implemented.

6.

Implementation: The developed software, which is fully functioning, is deployed at the user's end.

Various advantages and disadvantages associated with the RAD model are listed in Table. Table Advantages and Disadvantages of RAD Model Advantages
Deliverables are easier to transfer as highlevel abstractions, scripts, and intermediate codes are used. Provides greater flexibility as redesign is done according to the developer. Results in reduction of manual coding due to code generators and code reuse. Encourages user involvement. Possibility of lesser defects due to prototyping in nature.

Disadvantages
Useful for only larger projects RAD projects fail if there is no commitment by the developers or the users to get software completed on time. Not appropriate when technical risks are high. This occurs when the new application utilizes new technology or when new software requires a high degree of interoperability with existing system. As the interests of users and developers can diverge from single iteration to next, requirements may not converge in RAD model.

http://ecomputernotes.com/software-engineering/rapid-application-development

You might also like