csci 4931 - tool overview 1 rational suite of tools overview michel izygon - jim helm

23
CSCI 4931 - Tool Overview 1 Rational Suite of Tools Overview Michel Izygon - Jim Helm

Upload: valerie-malone

Post on 18-Dec-2015

215 views

Category:

Documents


3 download

TRANSCRIPT

CSCI 4931 - Tool Overview 1

Rational Suite of Tools OverviewMichel Izygon - Jim Helm

CSCI 4931 - Tool Overview 2

Software Development Process Root Problems

• Ad hoc requirements management

• Ambigous and imprecise communication

• Brittle Architecture

• Undetected inconsistencies in requirements, design and implementation

• Insufficient Testing

• Subjective Project Status Assessment

• Failure to attack risks

• Uncontrolled change propagation

• Insufficient automation

CSCI 4931 - Tool Overview 3

Rational Unified Process

• Software Engineering Process covering entire life cycle

• Provides disciplined approach to assigning tasks and responsibilities within team

• Process Product developed and maintained by Rational

• Process Framework which can be adapted to project specific needs

• Unified Process is a framework based mostly on Objectory

• Captures current Best Practices

• Tools Support• Use-Case Driven, Architecture-Centric, Iterative,

Incremental

CSCI 4931 - Tool Overview 4

Tools: What & Why • Any computer-based tools which attempt to support some

aspect(s) of the software life-cycle• Becomes more necessary as projects become more complex• Help team members work together

central repository of artifacts produced

coordinate workers activities

implement process

give visibility to project status• Automate some developers tasks

initially compilers and linkers, then editors, then debuggers, ...

computer better than human for certain tedious tasks

CSCI 4931 - Tool Overview 5

Tools Integration• Cooperation of tools to support (some aspect of)

software development process. • Set of integrated tools forms an integrated software

engineering environment (ISEE). • Implies that tools can:

communicate

share data

present information to the user in a coherent fashion

CSCI 4931 - Tool Overview 6

Tools Overview• Multiple Categories covering different Workflows

Project Management: ClearQuest, SoDA

Business Modeling: Requisite Pro, Rose

Requirements: Requisite Pro

Analysis and Design: Rose

Implementation: Rose, Purify, Quantify

Testing: Test Factory, PureCoverage, Robot

Configuration Management: ClearCase

Deployment:

Environment:

Iteration:

CSCI 4931 - Tool Overview 7

Requisite Pro

• Tool covering Requirements Management• Used for Requirement Workflow• Common Problems with Requirements

Management

can’t track changes

difficult to write

feature creep

not well organized• Document Centric and Database Centric

CSCI 4931 - Tool Overview 8

Requisite Pro Key Concepts• Organizes Requirements in Repository• Project is a requirements database and its related documents• Documents can be product requirements, system requirements

software and hardware specifications, user requirements, quality assurance

• Version Control lets you trace change by archiving projects• User personal catalog, includes all projects relevant to a given

user• Multiple workspaces where distinct but interrelated work is done• Multiple Views present information such as Status or Priority

about Project, Document, or Requirements in graphics/ tables/outline tree

• Searching Capability • Archiving through CM Tool• Integrated with MS Word and MS Project• Complete Requirements Traceability

CSCI 4931 - Tool Overview 9

ClearQuest

• Tool covering Change Request Management• Used for Project Management and over entire

lifecycle • Addresses the single largest cost factor in

software development: CHANGE• Help an Organization manage change and track

product defects over the entire life cycle• Change Requests on any artifact created during

the software development effort.• CR tracked from input to disposition through the

different states (submitted, assigned, opened, resolved, verified, postponed)

CSCI 4931 - Tool Overview 10

ClearQuest Key Features

• Workflow completely customizable• Enable integration with existing source control and

testing software • Comprehensive Reporting capability gives entire

visibility on project quality status with trends, aging and distribtion plots

• Web interface enables easy input of Change Request from remote team members

• Workers receive email notification of CRs states• Associate Change Requests with evolving software

development artifacts, across multiple products, versions, platforms and releases

• Scale up for Large Scale Development effort

CSCI 4931 - Tool Overview 11

Rose• Tool supporting Visual Modeling• Used mainly during Business Modeling,

Requirements, Analysis and Design• Implements the Unified Modeling Language (UML)

notation• Help an Organization communicate architectural

decisions by cpaturing graphically the structure and interrelationships of the system

• Models are developed and managed over the entire lifecycle

• Main market share of UML tools

CSCI 4931 - Tool Overview 12

Rose Key Features

• Covers (almost) the entire set of UML notation (Use Cases, Class, Subsystems, Interfaces, Deployment Model, Collaboration Diagrams, Sequence Diagrams) using subtools

• Team support through private/public workspaces • Round trip engineering: Forward/Reverse

engineering• Multi language (C++, Java, VB, PB, Ada, …)• Integrated with MS Visual Studio, ClearCase

CSCI 4931 - Tool Overview 13

Rational TestFactory

• Tool covering Testing• Used for Testing Workflow• Automates software test script generation and

execution• Apply to VB• For PB other tool named Robot can be used

CSCI 4931 - Tool Overview 14

Rational Test Factory Key Features

• Automatically creates scripts with extensive coverage

• Tracks executed ans unexecuted code• Generates Regression Test Suites• Simplifies maintenance of tests assets• Enables test suites to run in batch mode• Simulate user action sequences to increase test

validity

CSCI 4931 - Tool Overview 15

Purify

• Tool supporting Testing/Reliability Diagnostics• Locate hard to find run-time errors• Start using as soon as code is written• Languages: C, C++,

CSCI 4931 - Tool Overview 16

Purify Key Features

• Detect following types of errors:

array bounds errrors

accesses through dangling pointer

uninitialized memory read

memory allocation errors

memory leaks• Provide filtering and detail level customization• GUI and command line interface• Integrated with ClearQuest

CSCI 4931 - Tool Overview 17

Visual Quantify

• Tool supporting Testing/Performance Profiling• Help developer/quality engineer fine tune the

application performance• Enable developer to make program run faster• Should be used as soon as code is written• Tight integration with MS Studio, ClearQuest

CSCI 4931 - Tool Overview 18

Quantify Key Features• Measures performance for following type of

components:

C, C++ code, exes, dll, OLE/ActiveX controls, COM objects, VB, Java, …

• Represents graphically the Call Graph of the application• Identify the most expensive functions in a program• Enable developer to explore program structure at any

level of detail• Provide quantitative data on:

number of time function called

time spent in each function executed• Let the user play what-if scenarios• Monitors threads

CSCI 4931 - Tool Overview 19

Pure Coverage

• Tool covering Testing• Used for Testing Workflow to perform code

coverage analysis during application execution• Identify unexercised lines of code in a test run• Target code: C++, VB, Java, dll, exes, OLE,

ActiveX controls, COM, Excel, Word• Instruments the code (inserts additional code)

CSCI 4931 - Tool Overview 20

Pure Coverage Key Features

• Displays which Function, Procedure, Method not called, which one called once

• Reports number of lines of code missed and hit• Modify Test run to cover missed lines• Integrated with MS Studio, VB, ClearQuest• Tests are rerun after modification

CSCI 4931 - Tool Overview 21

SoDA

• Tool supporting Automatic Documentation Generation

• Used during the entire Lfecycle • Helps keep documentation up-to-date• Tight Integration with Requisite Pro, ClearQuest,

Rose

CSCI 4931 - Tool Overview 22

SoDA Key Features

• Extract Information from different sources/application databases (Rose, Requisite Pro, ClearQuest, Rational TestFactory)

• Customization of Templates• Enables addition of free text• Intelligent Document Merging: update document

according to sources changes

CSCI 4931 - Tool Overview 23

ClearCase / Key Features• Used for Configuration Managment • Comprehensive software version control and

configuration management system• Access to files through Views• Data Repository is made of Versioned Object Bases

(VOB)• Files and Directories are Elements contained in VOBs• Files are associated with Views though configuration

specs or rules• Allow developer to easily compare or merge versions of

elements • Complete traceability of who did what to which

element, when, where and why• Integrated with MS Visual Studio