INFO2005 Requirements Analysis Title

Download Report

Transcript INFO2005 Requirements Analysis Title

INFO2005
Requirements Analysis
CASE
Computer Aided Software
Engineering
Department of Information Systems
Requirements Analysis 5. 1
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Learning Objectives
Understand the use of various types of CASE
in systems development
 Describe the components of CASE tools and
understand the relationships between them
 Understand the use of CASE in Organisations
 Understand the advantages and
disadvantages of the use of CASE tools

Requirements Analysis 5. 2
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Documentation Standards

We need to record facts about the organisation
we are studying and its requirements.
– Records of interviews and observations.
– Details of problems.
– Existing documents and where they are used.
– Details of requirements.
– Details of users.
– Minutes of meetings.

Visual modeling helps represent
requirements
Requirements Analysis 5. 3
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Visual Modeling

‘Visual modeling is the process of graphically
depicting the system to be developed. Visual
modeling allows you to present essential
details of a complex problem and filter out
the nonessential details. It also provides a
mechanism for viewing the system to be
developed from different perspectives.’
– Rational Rose 2000
Requirements Analysis 5. 4
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Visual Modeling
identify requirements and communicate
information
 focus on how system components interact,
without getting bogged down in specific
details
 allow you to see relationships among design
components
 improve communication across your team
through the use of a common, graphical
language

Requirements Analysis 5. 5
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
What is CASE?
“Computer Aided Software Engineering
(CASE) are the software tools that provide
automated support for some portion of the
systems development process”
(Hoffer,1999)
 Includes:
 Cross
lifecycle CASE & I-CASE
 Upper CASE & Lower CASE
Requirements Analysis 5. 6
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Categories of CASE Tools
 Cross
Lifecycle CASE
 I-CASE (Integrated CASE)
 Upper CASE
 Lower CASE
 Distinction much less with modern
CASE
Requirements Analysis 5. 7
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Organisational use of CASE
 Depending
on the CASE tool, the
following system development
activities may be covered:
Requirements Analysis 5. 8
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Organisational use of CASE

Objectives of CASE
improve quality of developed systems
 increase speed of systems development
 improve testing process through automatic checking
 integrate development activities (common methods)
 improve documentation (quality and completeness)
 standardise the development process
 simplify program maintenance
 promote reusability of modules & documentation
 improve software portability across environments

Requirements Analysis 5. 9
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Tool Components

Vary depending on which CASE tool is
considered but in general will include:
 diagramming
facilities
 means of describing/defining functional and
data objects
 means of identifying relationships between
system components
 central repository of system information
 error checking facilities (syntax errors)
Requirements Analysis 5. 10
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Tool Components
 consistency
and completeness checks
 user interface generators
 database specification
 code generators
 project management aids
 documentation generators

May also provide features for group
working, version control, interfacing
facilities and security features
Requirements Analysis 5. 11
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Diagramming Tools

Diagramming facilities include:
 checks
for syntactic correctness
 consistency & completeness checks
 navigation to linked diagrams
 data dictionary support
 layering of system components
 traceability of requirements
 report generation
 system simulation/performance analysis (models)
Requirements Analysis 5. 12
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Rational Suite Development
Studio
Rational Unified Process - development framework
Rational Rose 2000 Enterprise - graphical component
modeling and development tool
Rational ClearQuest - defect tracking/change request
management system.
Rational Pure Coverage - pinpoints areas of code that
have not been exercised during testing
Requirements Analysis 5. 13
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Rational Suite Development
Studio




Rational Purify - pinpoints hard-to-find run-time
errors in your applications
Rational Visual Quantify - advanced performance
profiling tool
Rational RequisitePro - organize, prioritize, track
and control changing requirements of a system or
application.
Rational SoDA - automatic generation of software
documentation
Requirements Analysis 5. 14
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Rational Rose
 Rational
–
–
–
–
–
–
–
Rose provides
Use Case
Class Diagrams
Activity Diagrams
Interaction Diagram (Both forms)
State Machine Diagram
Component Diagram
Deployment Diagram
Requirements Analysis 5. 15
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Diagramming Tools
Assigned to
Invoice
Add New
Resource
datePaid
dateSent
invoiceNumber
produceInvoice
1..*
Training & Consultancy
Resource Database
Remove Resource
address
fax
name
phoneNumber
finalPayment
payDeposit
1
Contract
1..*
Customer
Remove Training
Course
datesAssigned
members
teamNumber
addContractDates
checkSchedule
*
Is For
Places
*
Fitter Team
1
contractNimber
costToDate
estimatedDuration
quotePrice
startDate
status
allocateFitterTeam
calculateContractCost
checkFitterSchedule
confirmContract
produceRequirementsList
Appliances
Kitchen Design
1 Includes *
designNumber
fittingCharge
addAppliances
calculateCost
transferDesign
*
make
model
price
printPriceList
*
*
*
*
Supplier
Training Manager
Edit Resource
Details
Edit Training
Course Details
Add New
Training Course
Schedule Public
Course
address
name
negotiatedDiscount
Training Manager
Private
creditCheck
paymentMethod
checkCredit
Company
*
contactName
creditRating
discountRate
Component
description
itemName
addComponent
*
*
Range
rangeName
saleDiscount
Component Use
componentCost
Creative_Staff
Staff_No
Name
Start_Date
Qualification
BookOn-site Activity
On-site Course Run
ConsultancySchedule
Company
Course
Case ActivityType Of
On Site Course:
Schedule On-site Course
Select The Company
Staff_Campaign
Schedule
Bookings
Select The Course Type
manages
Select
Title
Staff_No
Select
Consultancy:
Schedule Consultancy
Client
ConsultancySchedule
Select The Company
Campaign
Select
Endcase
ConfirmBooking
Confirm
On-site
Activity
On-site Course Run
Requirements Analysis 5. 16
CASE - 2005b505.ppt
ConsultancySchedule
Company
Course
Title
Start_Date
Finish_Date
Estimated_Cost
Actual_Cost
Completion_Date
Date_Paid
Name
Staff_No
commissions
Name
Address
Tel.
Fax
Email
Contact_Name
Contact_Tel.
Contact_Fax
Contact_Email
© Copyright De Montfort University 2000
All Rights Reserved
Rational Rose
 Rose
uses these diagrams in 4 views of
the system
– Use Case View
– Logical View
Requirements Analysis 5. 17
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Rational Rose
– Component View
– Deployment View
Requirements Analysis 5. 18
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Repository
A repository is a centralised database
containing all models (diagrams), data
dictionary entries, form & report
definitions and system & organisational
information
 Holds complete information to develop a
system from initiation to maintenance
 It is the nucleus of an I-CASE environment

Requirements Analysis 5. 19
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
CASE Repository
Diagrams
Forms and
Reports
Documentation
Project
Information
Source and
Object Code
Requirements Analysis 5. 20
CASE - 2005b505.ppt
Analysis
& Testing
Results
CASE
Repository
Standard
Libraries
© Copyright De Montfort University 2000
All Rights Reserved
CASE Repository
Use Case Specifications
Requirements Analysis 5. 21
CASE - 2005b505.ppt
Specifying an Actor
© Copyright De Montfort University 2000
All Rights Reserved
CASE Form/Report Generators
 Automated
generation of
 data
entry screens
 reports
 program code (eg Java, C++)
– also reverse engineering of code
 database
Requirements Analysis 5. 22
CASE - 2005b505.ppt
schema
© Copyright De Montfort University 2000
All Rights Reserved
Benefits of using CASE Tools
Automation of tedious tasks
 Syntax/completeness checks ensure
consistency
 Amending/updating achieved far more
easily


More rapid development
Requirements Analysis 5. 23
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Benefits of using CASE Tools

Capture of system data for reuse







particularly important for OO development
May guide the use of a methodology
Clearer communication with users
Continuity of development with changing staff
Standardised quality assurance/test procedures
Improvements in system quality
Reduction in defects increases morale
Requirements Analysis 5. 24
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Role of CASE in QA

CASE can help with:
–
–
–
–
–
–
–
–

adherence to standards,
integrity of documentation,
centrally held data dictionary,
fast capture of requirements,
quick modification to designs,
trace requirements from model to code,
guide the development process,
easy, consistent code-generation.
All important in maintaining quality
Requirements Analysis 5. 25
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Limitations of CASE

Limited flexibility in documentation

Development approach limited to fit capabilities of
the CASE tool

Training and experience required

CASE prepared models may be more convincing but
not reflect requirements
Requirements Analysis 5. 26
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Limitations of CASE

Front loaded cost of installation of CASE tool &
training

Incomplete coverage of syntax/ consistency checks
Limited intelligence - no checks on overall quality or
correctness

Requirements Analysis 5. 27
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
Summary
Understand the use of various types of CASE
in systems development
 Describe the components of CASE tools and
understand the relationships between them
 Consider Rational Rose as an exemplar CASE
tool
 Understand the use of CASE in Organisations
 Understand the advantages and
disadvantages of the use of CASE tools

Requirements Analysis 5. 28
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved
References





Hoffer, J.A. et.al. “Modern Systems Analysis &
Design” 2nd Ed. Addison-Wesley 1999 Ch4 pp107136
Bennett, S. et. al. “Object-Oriented Systems Analysis
& Design using UML” McGraw-Hill 1999 Ch3 pp5560
Rational Rose Tutorial (In folder RoseTutorial)
Rational Rose Enterprise Edition
Rational Unified Process 2000
Requirements Analysis 5. 29
CASE - 2005b505.ppt
© Copyright De Montfort University 2000
All Rights Reserved