RAD and ARAD - PowerPoint PPT Presentation

About This Presentation
Title:

RAD and ARAD

Description:

Use of an integrated CASE toolset to generate bug-free code from a fully validated design ... are designed and preliminary layouts of screens are developed ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 37
Provided by: Barb402
Category:
Tags: arad | rad | free | jad | layouts | planning | training

less

Transcript and Presenter's Notes

Title: RAD and ARAD


1
RAD and ARAD
  • Barbara Tacchino

2
Summary
  • RAD (Rapid Application Development)
  • Definition and features
  • Development cycle
  • Team, tools, documentation, problems
  • ARAD (Architected Rapid Application Development)
  • Definition and features
  • The IBM ARAD solution IBM Rational Rapid
    Developer
  • A business application scenario

3
What is RAD?
  • Is a software development process model that has
    been developed to respond to the need to deliver
    systems very fast
  • Actually it allows usable systems to be built in
    as little as 3-6 months
  • It has been developed in the early 1990s
  • It takes inspiration from spiral model
  • Its goals are faster, better, cheaper

4
Spiral model (Barry Boehm, 1988)
  • Planning determination of goals and alternatives
  • Risk analysis analysis of alternatives and
    identification/resolution of risks
  • Engineering development of the product of the
    next level
  • Customer evaluation evaluation of results of
    engineering from the point of view of the
    customer

5
Problems addressed by RAD
  • With conventional methods, there is a long delay
    before the customer gets to see any results
  • With conventional methods, there is nothing until
    100 of the process is finished, then 100 of the
    software is delivered
  • With conventional methods, software development
    can take so long that the customers business has
    fundamentally changed by the time the system is
    ready for use
  • Satisfying the customer at the time of delivery

6
When use RAD?
  • Project scope focused, where the business
    objectives are well defined and narrow
  • Project data already exist
  • Project decisions can be made by a small number
    of people who are available and co-located
  • Project team very small (six people)
  • Project technical architecture defined and clear
    and the key technology components are well known
  • Project technical requirements are reasonable
    and well within the capability of the technology
    being used
  • Intensive involvement of the end user in the
    design of the system (JAD, Joint Application
    Development)

7
Features of RAD
  • Use of prototyping, which helps users visualize
    and make adjustments to the system
  • Use of a CASE repository to facilitate the re-use
    of templates, components and systems
  • Use of an integrated CASE toolset to generate
    bug-free code from a fully validated design
  • Development of a task structure that encourages
    parallel project activities

8
JAD
  • Is a management process which helps developers
    teams work effectively with users to develop
    information technology solutions
  • Purpose define the project, design the solution
    and monitor the project until it reaches
    completion

9
Prototyping
  • In general creation of a small-scale prototype
    of the system used to test out certain key
    features
  • less functions
  • less efficient
  • With RAD the prototype becomes a part of the
    delivered system

10
RAD development cycle
11
RAD uses iterative prototyping
  • JRP (Joint Requirement Planning) meeting
    high-level end-users and developers meet in a
    session to generate a list of initial
    requirements
  • Iteration
  • Designers review the prototype
  • Developers build/evolve the prototype based on
    current requirements
  • Customers try out the prototype and evolve their
    requirements
  • Focus Group Meeting (JAD) customers and
    developers meet to review product together and
    refine requirements
  • Requirements and change requests are timeboxed

12
Stages of RAD Requirements Planning
  • takes one to four weeks to complete
  • is defined during a JRP meeting
  • consists of a review of the areas immediately
    associated with the proposed system
  • produces a broad definition of the system
    requirements in terms of the functions the system
    will support
  • deliverables from this stage include
  • an outline system area model (entity and process
    model)
  • a definition of the systems scope
  • a cost justification for the new system

13
Stages of RAD User Design
  • is defined during JAD meetings
  • consists of a detailed analysis of the business
    activities related to the proposed system to
    outline the design
  • The team defines entity types and creates action
    diagrams defining the interactions between
    processes and data
  • System procedures are designed and preliminary
    layouts of screens are developed
  • Prototypes of critical procedures are built
  • A plan for implementing the system is prepared
  • Together with the next stage, User Design
    consists of a series of iterations

14
Stages of RAD Construction
  • Developers, working directly with users, finalize
    the design, build and test the prototype
  • The deliverables include documentation and
    instructions necessary to operate the new
    application and procedures needed to put the
    system into operation
  • Timebox and parallel development involves
    monitoring progresses to complete each task
    quickly
  • The prototype is reviewed by users
  • Requirements document can be modified, so another
    iteration starts

15
Stages of RAD Transition
  • the period during which the newly developed
    system gradually replaces existing systems
  • User acceptance end of iterations
  • Developers train users to operate the new
    application
  • objectives
  • Install the system in production operation with
    minimal disruption of normal business activity
  • Maximize the effectiveness of the system in
    supporting the intended business activities
  • Identify potential future enhancements

16
RAD team
  • should include both developers and users of the
    system and each person can play several roles
  • User Coordinator appointed by the Sponsor to
    oversee the project from the user perspective
  • Requirements Planning Team high-level users
    participating in the requirements planning
  • User Design Team participates in the design
    meetings
  • User Review Board review the system after the
    construction and decide if modifications are
    needed
  • Training Manager responsible for training users
    to work with the new system
  • Project Manager oversees the development effort
  • Construction (SWAT) Team two to six developers
    highly trained to work together at high speed.
    SWAT stands for Skilled Workers with Advanced
    Tools. This team builds the system and also
    participate in the design meetings
  • Meeting Leader organizes and conducts the
    meetings

17
RAD tools
  • RAD depends entirely on automated tools
  • CASE software provides planning, analysis and
    design workbenches that are fully integrated so
    that one tool directly employs the information
    from another
  • repository stores the knowledge from the multiple
    tools in an integrated manner
  • code generator is fully integrated with the
    design toolset and allows the developer to
    design, modify, generate code and test as quickly
    as possible

18
RAD documentation
  • Customers, developers and management must accept
    informal deliverables
  • Notes from user meetings rather than formal
    requirements documents
  • Notes from designers meetings rather than formal
    design documents
  • Principle create the minimum documentation
    necessary to facilitate future development and
    maintenance

19
Problems of RAD
  • criticized because it lacks a methodology and a
    designed architecture
  • flexibility of RAD systems decreases as
    applications grow
  • RAD tends to fail when
  • Application must interoperate with existing
    programs
  • Performance and reliability are critical
  • The system cannot be modularized
  • New technologies are used

20
Introduction to ARAD
  • IBM acquired Rational Software
  • Starting point RUP (Rational Unified Process)
  • It is a software development process model which
    includes a lot of features of the spiral model
    (iteration, prototyping, phased development)
  • Each phase is supported by visual tools
  • It establishes four phases of development, each
    consisting of one ore more executable iterations

21
Phases of RUP
22
What is Architected RAD?
  • an evolution of RAD which supports the creation
    of enterprise applications and has a formal
    process
  • a version of the Rational Unified Process (RUP)
    that has been optimized for RAD
  • the team is made up of eleven people a project
    leader, one analyst, eight developers and one
    technology architect
  • is characterized by
  • a unified process
  • business modeling with UML
  • rapid application development

23
Unified ARAD process
  • One problem of RAD is that it lacks a formal
    process
  • Unified ARAD process unifies the team by
    providing roadmaps for application development
    that include defining flows, stakeholders and
    explaining how they interrelate

24
Business modeling with UML
  • RAD lacks a focus on the business processes that
    drive software requirements
  • ARAD focuses on business modeling
  • analysts can use UML to analyze business
    requirements, define business use cases, define
    the information model for the application and the
    business processes and business rules

25
Business modeling
  • Specify the knowledge about the domain of the
    problem using UML techniques before analyzing
    requirements

26
The IBM ARAD solution IBM Rational Rapid
Developer
  • is the new Rational software solution for ARAD
    (2003)
  • provides an integrated application development
    environment and process that unifies team skills
  • supports rapid application development,
    integration and architected code construction
  • helps team rapidly deliver n-tier business
    applications without encountering the complexity
    of the underlying technology platforms
  • enables late binding of construction patterns and
    deployment platforms
  • integrates with the IBM Rational lifecycle
    toolset
  • covers the complete lifecycle, from requirements
    to deployment
  • supports parallel development, version management
    and change management

27
Patterns
  • are a recent software engineering problem-solving
    discipline that emerged from the object-oriented
    community

28
IBM Rational Rapid Developer workflow
  • Rational Rapid Developer follows a model-driven
    approach to application development
  • Nine out of ten members of the development team
    are focused on business process
  • Development team begins by capturing requirements
    and assessing existing assets (or requiring new
    ones) to support the process

29
Model Driven Approach (MDA)
  • A way of writing specification based on a
    platform-independent model
  • a MDA specification consists of a
    platform-independent base UML model, plus one or
    more platform-specific models and interface
    definition sets, each describing how the base
    model is implemented on a different middleware
    platform

30
IBM Rational Rapid Developer workflow (2)
  • The next step focuses on visual modeling the
    application and designing Web, wireless, XML,
    messaging and Web services transactions
  • Rational Rapid Developer provides essential UML
    models

31
IBM Rational Rapid Developer workflow (3)
  • The application, completely visually modeled,
    resides in the application repository before it
    is cast into a chosen technology platform

32
IBM Rational Rapid Developer workflow (4)
  • Now the technology expert decides how the
    application will be constructed and deployed
    choosing the platform and determining patterns

33
IBM Rational Rapid Developer workflow (5)
  • Based on choices by the team's technical expert,
    Rational Rapid Developer automatically constructs
    the final application in a matter of minutes, and
    even automatically compiles, test and deploys it
  • Each stage can be iterated
  • Users involvement

34
A business application scenario
  • Lets use the ARAD process to design this
    marketplace application

35
Business requirements with UML
  • Use cases that describe the Web, wireless and
    integration functions of the application
  • IBM Rational Rapid Developer provides a project
    estimator that can estimate the work effort
    required to develop the application, based on
    these use cases
  • Model visually the application use some of the
    UML models such as UML Class Model

36
Class Model
37
Business requirements with UML (2)
  • Import legacy database models the database
    schema is automatically converted into an XML
    file and imported into Rational Rapid Developer
    as a class model
  • Rational Rapid Developer can perform
    object-to-relational mapping and create database
    schema for relational databases
  • Define business rules using a Java business rule
    editor. Rule examples are inventory check, order
    pricing, customer credit check
  • Define business processes as state chart/activity
    diagrams
  • They are purely analytical and do not lead to any
    direct code construction

38
Develop user interfaces rapidly
  • Define site flow models for each actor of the
    application these models reflect the user
    interface use cases
  • Define the look and feel of the application with
    styles and themes
  • Design Web pages it is visual and rapid and
    facilitated by the Page Architect feature

39
Layout pages visually
40
Develop user interfaces rapidly (2)
  • Design page logic it is written in Java using
    the Logic Architect
  • IBM Rational Rapid Developer provides nearly 100
    code templates, so developers need only fill in
    parameters to write code
  • IBM Rational Rapid Developer automatically
    construct, compiles and deploys the application
  • Internationalization of pages a translation file
    is created and imported

41
Business Logic
42
Rapid integration development
  • Enterprise integration with XML
  • Integration with Web Services IBM Rational Rapid
    Developer discovers the services published in a
    public repository, than the developer clicks on a
    service and a service call is inserted in the
    code like a Java method call
  • The developer specifies only the method call
    parameters
  • IBM Rational Rapid Developer will automatically
    handle all the mechanics of invoking the service,
    using SOAP request/ response mechanism

43
Integration with Web Services
44
N-tier architected deployment
  • The technology architect can deploy the same
    application in varying environments.
  • Chosen a particular environment, the architect
    select appropriate technologies and fine tunes
    the construction patterns
  • The desired degree of performance, scalability
    and security can be specified
  • IBM Rational Rapid Developer creates an optimized
    code for each deployment model
  • IBM Rational Rapid Developer can now be used for
    functional and performance testing
  • Each stage can be iterated

45
Deployment models
46
Rational toolset
  • In addition to IBM Rational Rapid Developer
    (6,595)
  • IBM Rational RequisitePro (2,034)
  • IBM Rational XDE (1,595)
  • IBM Rational Rose
  • IBM Rational ClearCase (65,950 for a 10-user
    license)
  • IBM Rational ClearQuest
  • IBM Rational TeamTest

47
References
  • RAD
  • www.gantthead.com/process/processMain.cfm?ID2-195
    16-2
  • sysdev.ucdavis.edu/WEBADM/document/rad_toc.htm
  • ARAD
  • www.ibm.com
  • www-106.ibm.com/developerworks/rational/library/44
    1.htmlN10269
Write a Comment
User Comments (0)
About PowerShow.com