Rational Suite and CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl ...

Post on 26-Dec-2015

213 views 0 download

Tags:

Transcript of Rational Suite and CMM Level 2 Copyright, 2000 © Jerzy R. Nawrocki Jerzy.Nawrocki@put.poznan.pl ...

Rational Suite and CMM Level 2Rational Suite and CMM Level 2

Copyright, 2000 © Jerzy R. Nawrocki

Jerzy.Nawrocki@put.poznan.pl

www.cs.put.poznan.pl/jnawrocki/mse/quality/

Requirements Engineering Requirements Engineering

Lecture 10Lecture 10

Requirements Engineering Requirements Engineering

Lecture 10Lecture 10

J. Nawrocki, Requirements Eng., Lecture 10

Plan of the lecturePlan of the lecturePlan of the lecturePlan of the lecture

Good practicesProject lifecycleProgramming rolesRequirements engineeringDesign and codingSystem testingProject management

J. Nawrocki, Requirements Eng., Lecture 10

IntroductionIntroductionIntroductionIntroduction

CMMCMM

• Requirements management• Software project planning• Software project tracking

and oversight• Software subcontract

management• Software quality assurance• Software configuration

management

CMM Level 2 - Repeatable

J. Nawrocki, Requirements Eng., Lecture 10

Practices supported by Rational Suite

Good PracticesGood PracticesGood PracticesGood Practices

• Develop software iteratively• Manage requirements• Use component-based

architectures• Visually model software• Continuously verify quality• Manage change.

What should I do?

J. Nawrocki, Requirements Eng., Lecture 10

Project lifecycleProject lifecycleProject lifecycleProject lifecycleP

roject lifetim

e

Inception phaseInception phase

Elaboration phaseElaboration phase

Construction phaseConstruction phase

Transition phaseTransition phase

Phases

J. Nawrocki, Requirements Eng., Lecture 10

Inception phaseInception phase

Elaboration phaseElaboration phase

Construction phaseConstruction phase

Transition phaseTransition phase

Project lifecycleProject lifecycleProject lifecycleProject lifecycleP

roject lifetim

e

Inception iteration 1Inception iteration 1Elaboration iteration 1Elaboration iteration 1Elaboration iteration 2Elaboration iteration 2

Construction iteration 1Construction iteration 1Construction iteration 2Construction iteration 2Construction iteration 3Construction iteration 3

Transition iteration 1Transition iteration 1Transition iteration 2Transition iteration 2

Iterations

J. Nawrocki, Requirements Eng., Lecture 10

Elaboration iteration 2Elaboration iteration 2

Iteration

Project lifecycleProject lifecycleProject lifecycleProject lifecycle

Iteration structure

Requirements Analysis

Design

Coding, Unit Testing

Subsystem & System Test

J. Nawrocki, Requirements Eng., Lecture 10

Programming rolesProgramming rolesProgramming rolesProgramming roles

Roles supported by Rational Suite

Analyst Architect/Developer

Tester Project Leader

J. Nawrocki, Requirements Eng., Lecture 10

Programming rolesProgramming rolesProgramming rolesProgramming roles

Supporting tools

AnalystStudio DevelopmentStudio

TestStudio Team Unifying Platform

J. Nawrocki, Requirements Eng., Lecture 10

AnalystStudio (I)

Requirements engineeringRequirements engineeringRequirements engineeringRequirements engineering

• Rational RequisitePro requirements mangmt (traceability)

relational database + MS Word + Web• Rational ClearCase LT configuration management for code, web

content, visual models & requirements• Rational ClearQuest tracking change requests, linking requests

to requirements, ClearQuest Web.

J. Nawrocki, Requirements Eng., Lecture 10

AnalystStudio (II)

Requirements engineeringRequirements engineeringRequirements engineeringRequirements engineering

• Rational Rose UML (Professional Data Modeler Edition)• Rational SoDA generator of project reports; co-operates

with RequisitePro, ClearQuest, .. MS Word templates

• Rational Synchronizer automatically creates items (e.g. a use

case diagram in Rose) from other items.

J. Nawrocki, Requirements Eng., Lecture 10

DevelopmentStudio (I)

Design and codingDesign and codingDesign and codingDesign and coding

• Rational Rose UML (Enterprise Edition), forward eng.

(generating code from models to VB, VC++, ANSI C++, Java, IBM Visual Age for Java), reverse eng. (code models)

• Rational Requisite Web a Web interface to RequisitePro database• Rational Synchronizer interactions modelled in Rose diagrams

RequisitePro requirements database.

J. Nawrocki, Requirements Eng., Lecture 10

DevelopmentStudio (II)

Design and codingDesign and codingDesign and codingDesign and coding

• Rational ClearQuest• Rational ClearCase LT source code, binaries, documentation,

test suites, libraries, user-defined objects; can be used from MS Visual Studio, MS Word, Visual Age for Java, ..

• Rational SoDA• Rational Purify checks C++ and Java components for

runtime errors and memory leaks.

J. Nawrocki, Requirements Eng., Lecture 10

DevelopmentStudio (III)

Design and codingDesign and codingDesign and codingDesign and coding

• Rational PureCoverage Has that line of code been executed?• Rational Quantify detects performance bottlenecks; where

the application is spending its time• Rational TestManager How many tests have been planned,

implemented, and run? How many passed/failed? Which requirements or Rose diagrams have been covered?

J. Nawrocki, Requirements Eng., Lecture 10

TestStudio (I)

System testingSystem testingSystem testingSystem testing

• Rational RequisiteWeb• Rational SoDA• Rational PureCoverage• Rational Quantify• Rational Purify• Rational TestManager (artefact, test asset) When artefact changes, you will

automatically be prompted to re-evaluate the related test asset.

J. Nawrocki, Requirements Eng., Lecture 10

TestStudio (II)

System testingSystem testingSystem testingSystem testing

• Rational Robot recording a test and playing it back;

reporting a failure: test ID, type of failure, place of occurrence, input.

• Rational TestFactory Generates test scripts that exercise the

maximum amount of code using the least number of steps. TestRobot can rerun TestFactory scripts.

• Rational ClearQuest / ClearQuest Web

J. Nawrocki, Requirements Eng., Lecture 10

TestStudio (III)

System testingSystem testingSystem testingSystem testing

• Rational LoadTest runs multi-user performance tests

for e-business, multi-tier, and database applications; simulates conditions when there are thousands of users.

J. Nawrocki, Requirements Eng., Lecture 10

Team Unifying Platform

Project managementProject managementProject managementProject management

• Rational RequisitePro• Rational ClearQuest• Rational ClearCase LT• Rational SoDA• Rational TestManager• Rational Unified Process• Unified Change Management

J. Nawrocki, Requirements Eng., Lecture 10

Unified Change Management

Project managementProject managementProject managementProject management

• Request Management ClearQuest generates charts and reports

e.g. on the number of unassigned defects, the defect workload of each team member; the number of bugs fixed per month, ..

• Configuration Management ClearCase LT: version & release mangmnt• Project status and measurement SoDA generates project reports.

J. Nawrocki, Requirements Eng., Lecture 10

SummarySummarySummarySummary

Rational Suite strongly supports CMM level 2 Key Process Areas.

Reviews are left behind Rational Suite.

Rational Suite does not have any support for Statistical Process Control (CMM level 4).

J. Nawrocki, Requirements Eng., Lecture 10

Further readingsFurther readingsFurther readingsFurther readings

• Introducing Rational Suite (60)

• Getting Started with Rational Suite (80)

• Introducing Rational ClearCase LT

• Introducing Rational ClearQuest

• UML Tutorial

• Rational Unified Process: An Introduction

• Using Change Management with Rational Suite

• Using Rational RequisitePro

• Using Rational SoDA for Word

Documentation roadmap

J. Nawrocki, Requirements Eng., Lecture 10

Quality assessmentQuality assessmentQuality assessmentQuality assessment

1. What is your general impression? (1 - 6)

2. Was it too slow or too fast?

3. What important did you learn during the lecture?

4. What to improve and how?