21
CASE/Tools Technical Module E

Technical Module E - CASE-Tools

Embed Size (px)

Citation preview

Page 1: Technical Module E - CASE-Tools

CASE/Tools

Technical Module E

Page 2: Technical Module E - CASE-Tools

Computer-Aided Software Engineering

Computer-aided software engineering is a philosophy for using the computer to model a firm, its activities, and its development of information systems. CASE originated in 1980Offshoot of Computer Aided Design (CAD)

Page 3: Technical Module E - CASE-Tools

RepositoryA repository is an electronic storage of all of the system documentation such as

Data elementsData structuresData flowsProcess logicObject classes

It is also called central encyclopedia

Page 4: Technical Module E - CASE-Tools

CASE Repository

Page 5: Technical Module E - CASE-Tools

CASE Fundamentals

The CASE Documentation

Fig E.2: Some System Documentation Prepared by CASE

Page 6: Technical Module E - CASE-Tools

Categories of CASE/Tools

Client ServerWeb-based Personal Computers

Page 7: Technical Module E - CASE-Tools

Categories of CASE ToolsUpper CASE Tools

During strategic planning for information resources, enterprise modeling

Middle CASE ToolsIs one that is used during the analysis and design stages to document the existing and new systems.

Lower CASE ToolsIs used during the construction and installation stages

Integrated CASE ToolsCombination of all the above

Page 8: Technical Module E - CASE-Tools

Middle CASE/Tools

Data ModelsProcess Models

Object Models

Page 9: Technical Module E - CASE-Tools

Integrated CASE/ToolsSupport phased system developmentProvide project management capabilityProject Characteristics

They are unique within an organization and have defined start and end points.They have a work scope that can be decomposed into definite tasksThey have a budgetThey require the use of resourcesThey often cross organizational boundaries

Page 10: Technical Module E - CASE-Tools

CASE Documentation Examples

A data modelFig E.3: A Data Architect Entity-Relationship Diagram

Page 11: Technical Module E - CASE-Tools

CASE Documentation Examples

A process modelFig E.4: A COOL: Gen Dependency Diagram

Page 12: Technical Module E - CASE-Tools

CASE Documentation Examples

Another process modelFig E.5: A COOL: Gen Hierarchy Chart

Page 13: Technical Module E - CASE-Tools

CASE Documentation Examples

And another process modelFig E.6: A COOL: Gen Action Diagram

Page 14: Technical Module E - CASE-Tools

CASE Documentation Examples

An object modelFig E.7: A Rational Rose Class Diagram

Page 15: Technical Module E - CASE-Tools

CASE Documentation Examples

Another object modelFig E.8: A Rational Rose Sequence Diagram

Page 16: Technical Module E - CASE-Tools

CASE Documentation Examples

And another object modelFig E.9: A Rational Rose Statechart Diagram

Page 17: Technical Module E - CASE-Tools

Using CASE for Project Management

Budgeting Forecasting, analysis, corrective actionsWork breakdown structureGantt charts and network diagramsPerformance tracking graphics

Page 18: Technical Module E - CASE-Tools

How CASE affects the SDLCCan lengthen early phasesCan reduce the time required for coding, testing, and user educationShould drastically reduce maintenance time and costConsistency checking detects errors earlier in the SDLC, when they are easiest and least expensive to correct.

Page 19: Technical Module E - CASE-Tools

Consistency Checking

Consistency checking ensures that the diagrams and data repository entries are complete, do not violate any methodological rules, and are consistent within and among diagrams.

Page 20: Technical Module E - CASE-Tools

Consistency checking can detect

Unnamed or unnumbered modulesDangling modulesIncorrectly placed control structuresLack of balanceLack of appropriate keys on data structuresLack of data normalizationLack of data repository entry for a data store that appears on a DFD or vice versa.

Page 21: Technical Module E - CASE-Tools

Evolving support of CASE

Modeling tools – from ERDs and DFDs to object diagramsHardware platforms – from mainframes to client/server to Web-based systems