Information Systems 1
Download
Report
Transcript Information Systems 1
IMS2805 - Systems Design and
Implementation
Lecture 11
CASE tools
11.1
References
Prescribed text:
Avison, D.E. & Fitzgerald, G. (2003). Information
Systems Development: Methodologies, Techniques
and Tools. (3rd ed), McGraw-Hill, London.
Chapters 17, 18,
HOFFER, J.A., GEORGE, J.F. and VALACICH (2002) 3rd
ed., Modern Systems Analysis and Design, PrenticeHall, New Jersey, Chapter 4
11.2
Quality and productivity
“solutions” include:
user participation
JAD (Joint Application Design)
prototyping
automated and other tools
RAD (Rapid Application Development)
reuse
11.3
What are CASE tools?
computer-aided software tools that provide automated
support for some portion of the systems development
process
provide an engineering-type discipline to improve
productivity and increase the quality of information
systems
CASE tools may run on various mini and mainframe
systems, but the PC is the dominant CASE workstation
11.4
CASE tools
CASE (Computer Assisted Software Engineering) tools
Objective of CASE tool usage:
higher quality systems, a less expensive and more
productive system development process
“automated and integrated software development tools,
techniques and methodologies that add significant value
by increasing the productivity of the application
development process and the quality of the applications
that they're used to develop”
Stone (1993) p.8
11.5
CASE tools
Objectives
to improve the quality of the systems developed: e.g.
better and more complete specifications and designs
to improve the productivity of systems development: less
people and faster
to ease and improve consistency of specifications,
conformity of designs, and testing through automated
checking
to improve the integration of development activities via
the use of common methodologies and techniques
to improve the quality and completeness of
documentation
11.6
CASE tools
Objectives
to improve the management and control of projects
to promote consistency across projects within the
organisation
to promote consistency and quality of systems across
the organisation
to promote resuability
to reduce maintenance effort
11.7
CASE tools
core CASE tool functionality:
graphical facilities for diagrams and modelling
data dictionary
automated documentation
additional functionality:
code generation from system specifications and models
automatic audit trail of changes
project management facilities
enforced diagramming and documentation standards
11.8
Components of CASE Tools
diagramming tools
screen and report generators
analysis tools
a central repository
documentation generators
code generators
11.9
Components of CASE Tools
diagramming tools
enable graphical representation of system data,
processes, and control structures
screen and report generators
help to prototype how systems “look” and “feel” to users
help to identify data and process requirements
analysis tools
automatic checking for correctness, completeness, and
consistency of specifications in diagrams, reports, forms
11.10
Components of CASE Tools
a central repository
enables integrated storage of systems specifications
and project management information
documentation generators
help to produce both technical and user documentation
in standard formats
code generators
automatic generation of program and database definition
code directly from the design documents, diagrams,
reports and forms
11.11
CASE tools: the CASE repository
the repository is central to the CASE tool for integration to
allow sharing between tools and SDLC activities
a centralised database containing all form and report
definitions, diagrams, data definitions (data flows, entities
etc), process flows, functions, process logic, other
organisational and system components
common terminology, notations, methods to support
integration
potential benefits:
supports co-ordination of team members and effort
promotes reusability
11.12
Types of CASE tools
Upper CASE
designed to support the earlier lifecycle phases:
IS planning, project identification and planning, systems analysis,
design
Lower CASE
designed to support the implementation and maintenance phases of
systems development
I-CASE (integrated CASE)
“seamless” integration of products and tools across lifecycle phases
via a common repository
(see Avison & Fitzgerald 2003, Chapter 18)
11.13
CASE tool usage
Cross lifecycle CASE
CASE tools used to support activities that occur across
multiple phases of the SDLC
e.g.
project management:
developing estimates of time and resources, scheduling,
monitoring project progress
production of documentation
the repository and document generators are used
across multiple lifecycle phases
11.14
Implementing CASE tools
in organisations
the adoption of CASE is closely related to the use of a
formal, standardized systems development process or
methodology:
many CASE tools force or encourage analysts to follow a specific
methodology
organizations without a widely used methodology or an approach
that is compatible with a CASE tool will have difficulties
CASE adoption has been slower than expected due to
several factors including:
cost, training needs, front end lifecycle effort
11.15
Implementing CASE tools in
organisations
startup costs
I-CASE costs per analyst: $5,000 to $50,000
only large-scale system builders can spend this
smaller organisations use tools with less functionality
training
for every dollar spent on tools, half to double that spent on training
front end lifecycle effort
the big benefits come in later lifecycle phases: construction, testing,
implementation, maintenance
early phases lengthened by up to 40%
(see Hoffer et al 2002, chapter 4)
11.16
Why organisations resist CASE tools
common resisting organisational factors for
CASE adoption:
high cost of purchasing
high cost of training personnel
low organisational confidence in the IT department to
deliver high quality systems on time and within budget
lack of methodology and standards
CASE seen as a threat to job security
lack of confidence in CASE products
11.17
CASE tool implementation
critical success factors:
the right tools
a CASE implementation strategy
a systems development methodology
the methodology must be structured to
the use of CASE tools
facilitate
a CASE-compatible culture
appropriate human resources
appropriate expectations
11.18
Selecting CASE tools
compatible with systems development
methodology/approach
compatible with technology architecture
development and application environment
organisational culture
implementation strategy
vendor support
11.19
Systems development using CASE
tools
changes in work practices:
focus on analysis and design
“automatic” documentation generation
maintain designs
modifications to analysis and design products
project management
project team structures
task structures
differences between CASE-based vs manual versions of
SDMs
11.20
Evolution and future of
automated tools
Visual development tools:
rapidly build interfaces, reports etc using visual tools e.g.
Visual Basic, Powerbuilder and instantly test the look of
the design (development and programming
environments)
Embed AI into development environments
use of intelligent agents (programs) residing in a
computer to carry out developer’s instructions to create
new systems
11.21