August 1997
SD206: SYSTEMS DESIGN

QUESTION 5

Total Marks: 20 Marks

Click here to access other questions

SUGGESTED SOLUTIONS
Solutions and allocated marks are indicated in green.
Return to Question 5

5. (a) Compare and contrast fourth generation tools and CASE tools. [4]
One mark should be awarded for each valid comparison (up to a maximum of four marks). Examples include the following:
Fourth generation tools are associated with end users, whereas CASE tools are associated with professional developers.
Fourth generation tools are tied to DBMS, whereas CASE tools are tied to structured methodologies.
Fourth generation tools are special purpose tools, whereas CASE tools are general purpose tools.
Fourth generation tools achieved productivity through streamlining, whereas CASE tools achieve productivity through automating the development process.
Fourth generation tools target the implementation, whereas CASE tools target the whole life cycle.
(b) What are the five components of CASE tools? [2]
Two marks if all components are correctly named; one mark should be awarded if four components are correctly named; no marks should be awarded otherwise.
The components are
Diagramming tools.
An information repository.
Interface generators.
Code generators.
Management tools.
(c) Describe four advantages and four disadvantages of using CASE tools. [8]
One mark should be awarded for each correct advantage named (up to a maximum of four marks), and one mark should be awarded for each correct disadvantage named (up to a maximum of four marks).
The advantage of CASE include the following:
CASE eases the revision of applications: Once installed, the central repository provides a basis for modification or revision of applications.
CASE supports system prototyping: By changing the prototypes, source code changes are automatically supported.
CASE has the ability to generate source code and to ensure consistent and standard program structures.
There is an improved ability to meet user requirements: Graphic descriptions and diagrams as well as prototyping reports and screen layouts enhance the interchange of ideas among users and system developers.
CASE supports iterative development by eliminating tedious tasks such as diagramming, cataloging and classifications. Reviews and revisions of system details can be carried out more productively.
The disadvantages of CASE include the following:
There is a reliance on structured method: CASE tools are normally built on structured methods; not all organisations use structured analysis methods.
There is an absence of standardised methodology support: Standards for CASE tools have not been developed; different vendors develop different standards for their CASE products.
Diagrams are not used: Many developers may not use graphical tools for their development - they may prefer narratives or structured English.
Limited functionality: Not all CASE tools support the full system life cycle; some support only specific phases.
Limited scope: CASE products describe, but do not analyse. No rules are available to help resolve potential system problems.
Human tasks remain critical: Understanding the requirements of a system and building a system based on that set of requirements still remain a crucial task for humans.
(d) Although there are many reported successes (in term of reported software productivity) with CASE technology, there are also failures in which the use of CASE did not have a significant benefit on software development and maintenance. Give three causes of such failures. [3]
One mark should be awarded for each acceptable answer (up to a maximum of three marks). Examples include the following:
Confusion about what individual CASE products actually do.
Using CASE tools to address problems for which they were not intended.
Placing too much emphasis on CASE tools as a whole solution.
Ignoring the importance of good management.
No development methodology or standards in place.
Poorly integrated CASE tools.
Not enough functionality present in CASE tools.
Unclear about which software problems need to be solved.
No methods for measuring the impact of CASE on software development and maintenance.
No software development methodology training.
Unwillingness to make a decision about how to use CASE technology.
No plan detailing how CASE technology should be implemented.
CASE is viewed as a high-risk technology.
Unwillingness to change the existing way of developing and maintaining software.
(e) Paying particular attention to your answer to part (d), give three ways in which an organisation might plan its implementation of CASE so as to avoid failures. [3]
One mark should be awarded for each acceptable answer, provided that the answer is related to one or more of the failures provided in the answer to part (d) (up to a maximum of three marks). Examples include the following:
Create a sense of mission.
Treat the implementation of CASE systems like the implementation of other information systems, i.e., consider issues such as training, installation, etc.
Train systems people in the use and application of a set of modelling tools and the use of prototyping.
Start small and build slowly.
Consider using a well-defined systems project for CASE's first pilot project.
Train a highly motivated systems project team to use CASE on a pilot project. This team can then be used to train other systems personnel.
Emphasize improvement in quality.