Anda di halaman 1dari 47

Rational Suite Tools

A Presentation By: PANKAJ SHARMA

Issues In Range
Hurdles faced during development process. Detailed Look at Rationals Solutions. Understanding RUP. Phases and their relative importance in development process. Rational Solutions For: Analysts Developers Testers

Hurdles In Software Development Process


Was it delivered on time? Was it released within its budget?

Was communication among team members clear and timely?


Did your team maintain consistency throughout the project as it defined requirements, developed designs, and wrote code?

Hurdles In Software Development Process (Contd.)


Did your software meet requirements, satisfy users, and perform reliably? How many bugs did you realize after its release?

And many more.

Solutions to Issues
Rational Software Corporation, in a bid to accelerate development process while improving quality suggests a combination of: Software engineering best practices.
Integrated tools that automate these best practices. Professional services that accelerate the adoption and implementation of these best practices and tools.

Best practices (1) Iterative Development


Means analyzing, designing and implementing incremental subsets of the system. Project team plans, develops, and tests one subset of system functionality per iteration. Integrates it with the previous prototype system. Feedback after each iteration, continuous testing. Helps making project predictable, identify and eliminate risks early.

Best practices (2) Manage Requirements


Understanding requirements is vital for projects success. Critical to know how changing requirements affect project. Need to effectively communicate requirements to all team members. This ensures that the product meets its stated goals.

Best practices (3) Use Component Based Architectures


It is the fundamental framework on which project is constructed. Structural elements of a system and their behavior are defined. Component is a independent and replaceable part of a system that combines data and functions to fulfill a purpose. Components can be re-used also It helps making product more reliable, maintainable, and extensible.

Best practices (4) Visual Modeling


Means graphical blueprint of systems architecture. Rational recommends using the Unified Modeling Language (UML) It is the industry-standard language for visualizing and documenting software systems, to create visual models. UML provides a powerful and unambiguous communication mechanism for whole team. Helps in quickly detecting lack of modularity, detect inconsistencies between requirements, designs, and implementations. Helps in evaluating your systems architecture, ensuring sound design.

Best practices (4) Continuous Testing


It includes verifying the system for:
Required functionality. Reliability. Ability to perform under load.

In Iterative development it can begin early. Testing every iteration lets you discover problems early.

Best practices (5) Manage Change


It is vital to manage change in a traceable, repeatable and predictable way. It includes facilitating parallel development, handling enhancement & change requests. Managing changes to your project facilitates clear communication. helps in propagating change throughout team.

Suite Comes to Rescue..


Rational Suite packages integrates into it tools which:
Unify your team by enhancing communication and providing common tools. Optimize individual productivity with development tools that are customized for the major roles.

Simplify adoption by providing a comprehensive tools that deliver simplified installation, licensing, and user support plans.

After looking at Best Practices, Let us look forward to Tools with reference to adv. Of Rational Suite.

Classification Of Tools
The Rational tools can be classified on 2 bases:
Objective Of tool (3 Objectives prev. slide) Like for productivity or unification of team etc. Practitioner, who uses it Analyst or Implementer, designer etc Lets take up the first one now

Suites Tools
To Optimize Productivity
A) Rational Suite Team Unifying Platform
It is designed for project members who need access to common project artifacts. Though it is available for Windows only, most of the tools included in the Team Unifying Platform are also included in Rational Suite editions for UNIX.

Suites Tools
To Optimize Productivity
B) Rational Suite Analyst Studio
Is for gathering and managing project requirements. Is available for Windows only.

C) Rational Suite Development Studio


Is for software architects, designers & developers to Design, implement, and test software architecture and applications. Is available for Windows and UNIX.

Suites Tools
To Optimize Productivity
D) Rational Suite Test Studio
Is for verifications of software quality & performance Is available for Windows only.

E) Rational Suite Enterprise


Comprehensive tool set as all of the above three tools there. Is available for Windows only.

F) And more like Real Time Development Studio etc.

Suites Tools
To Unify Team
A) Rational Suite Team Unifying Platform
Already discussed

B) Rational Unified Process


An online collection of software best practices that guide your team through the software development process. RUP provides guidelines, templates, and Tool Mentors (instructions for applying the guidelines to specific Rational tools) for each phase of the lifecycle. It is available for Windows and UNIX.

Suites Tools
To Unify Team
C) Rational RequisitePro
Helps you organize, prioritize, track, and control changing project requirements. RequisiteWeb interface is there to support RequisitePro is available for Windows only. RequisiteWeb is available for Windows and UNIX.

Suites Tools
To Unify Team
D) Rational ClearQuest
Manages change activity enhancement requests, defect reports, and documentation modifications. Has the ClearQuest Web interface. ClearQuest MultiSite lets you to share information across a geographically distributed team. ClearQuest is available for Windows and UNIX.

Suites Tools
To Unify Team
E) Rational SoDA Automatically generates project documents by extracting information from files you produce during project development, including source code and files produced by Rational tools. SoDA uses templates, either predefined or ones that you customize, to format the information. SoDA is integrated with Microsoft Word for Windows Adobe FrameMaker for UNIX to support easy customizing of templates.

Suites Tools
To Unify Team
E) Rational TestManager
Helps create real-world functional & multiuser tests., It: Determines the performance and reliability of Web, multitier, and database applications. Tracks the number of tests that have been planned, scripted & run; Which requirements have been covered; Number of tests that have passed and failed. It is available for Windows, and UNIX Suite editions.

Suites Tools
To Unify Team
F) Rational ProjectConsole
Helps you track project metrics by automatically generating charts and gauges from data produced during software development. ProjectConsole ProjectConsole helps you organize project artifacts on a central Web site so all team Members can view them. ProjectConsole is available for Windows only.

After looking at Best Practices & Tools.Let us look forward to Services now.

Services
Rational Software offers the Interactive Rational Developer Network, an online community. Provides useful information as well as an exchange of ideas and best practices for software development teams. The network delivers content, training and artifacts for development professionals. Helps members expand their professional skills & stay ahead of the technology curve..

Simplified Solution for Teams Development Needs


Rational Suite offers one comprehensive solution for your teams development needs: One installation program that lets your team install and setup the integration of the tools at once, or one tool at a time. One integrated tool set that is tested and updated so you dont have to integrate the tools yourself. One location for Help, Rational Suite documentation, and Rational Customer Support.

What Is RUP?
The Rational Unified Process (RUP): serves as a personal and team-centered guide for controlled, iterative software development. It is implemented as Web based guide and knowledge base. It provides links between process guidelines and the tools contained in Rational Suite. Process can be customized to meet exact needs. RUP can also be used without Rational Suite.

Explanation Of Graph
Each iteration focuses on one of these development phases: Inception Define scope of project. Elaboration Plan project, specify features, baseline architecture. Construction Build and test product. Transition Deliver product to the end-user community.

The RUP & Rational Suite


RUP provides the following links between Process guidelines and the tools in Rational Suite: Tool Mentors Provide step-by-step instructions for performing activities using Rational tools. Extended Help Is available in all Rational tools, Tool Mentors. You can add your own content to Extended Help to customize it to your teams work. Is available for Windows only.

Now, We Will Discuss The Rational Suite Package as a help to various Roles in development processStarting with the Analysts

Defining The Right System: Analyst


To define the system you need to: Define the boundaries of the system. Provide a basis for planning the technical contents of each iteration. Provide a basis for estimating cost and time to develop the system. Define a user interface for the system, focusing on the needs and goals of the users.

Rational Suite For Analysts


Rational RequisitePro helps in capturing & articulating requirements.
It is a database that prioritize, organize requirements. Rational RequisitePro is the web based interface

More Tools for Analysts


Rational ClearCase Used to manage changes to project requirements.
Rational ClearQuest Used to evaluate requests, determine their impact and validate the changes.

More Tools for Analysts


Rational Rose Used to give visual overview of the system using the UML, the industry standard for visualizing & documenting software systems. Rational ProjectConsole generates pre-formatted or customized graphs and charts depicting metrics on the basis of data in RequisitePro etc like how many requirements have been implemented.

More Tools for Analysts


Rational SoDA Generates reports from the data in tools like RequisitePro etc. They are in MS-Word for Windows & Adobe FrameMaker for UNIX. Increases team communication. Rational TestManager Helps in development of test plans, test cases etc from the use cases and performs manual & automated testing and results are stored in database.

VITAL FACT

All Of These are available for the entire team, so the communication level within the team is good, hence efficiency is increased to a large extent. Automated reporting system being in place, It really helps..

Managing Complexity :The Developer


System should be : Flexible to support future changes. Scalable i.e. performance should increase with the resources. Modifiable. Defining structural components and interfaces. (This helps as team members can also define components and can reuse, customize the existing ones.)

Tools Used
Rational Development Studio helps to develop and design the right product the first time. Immediate testing possible. Rational Suite Development Studio- Real Time Edition This is for embedded real time software.

Accelerating Code Implementation (Developer)


By generating code frameworks from models, process is called Forward Engg. This can be done in many languages such as VB,VC++, C++, Java etc. Reverse Engineering is also used to improve design starting from code.

Testing In Prospect

Testing Tools
Testing, debugging automated with the help of such tools: Rational Quality Architect Test code generated from visual models automatically. Is a part of enterprise edition. Rational Purify Finds for run time errors or memory leaks in a every active Java and C++ programs. These are errors that are very tough to detect.

Testing Tools (Contd.)


Rational PureCoverage Provides a report for every line of the program that has been run. Rational Quantify Pinpoints where the application is inefficient. This is really important for improvement of system performance

Thank You
From:

PANKAJ SHARMA