Review Question Set II
-
Define the structured approach. List and describe the key features of
the structured approach.
The structured approach is a disciplined, engineered approach that
employs discrete phases as defined by the Software Development Life Cycle
(SDLC). The key features are :
- Modeling tools
- Modularisation
- Top-down decomposition
- Iteration
- Parallel activities
- Systems development automation.
- What is the goal of the structured approach ?
The goal of the structured approach is to have at the end of the
systems project an information systems that meets user requirements, is on
time and within budget, and is easy to work with, understand and maintain.
- List and briefly describe major features that support the structured
approach.
- Modeling tools are used to model and describe various
systems,
subsystems and software designs on paper or on screen for review and
evaluation by both systems professionals and users.
- Modularization is a process that divides a systems into
independently operable modules.
- Top-down decomposition entails identifying major high-level
user requirements and systems functions and breaking them down more and
more until function-specific modules can be designed.
- Iteration supported by SDLC and prototyping, helps systems
professionals to go back to earlier phases and tasks to make small
improvements and respond to better definitions of user requirements.
- Parallel activities enable some overlapping of systems
analysis, design, and implementation tasks.
- Systems development automation is the application of computer
hardware and software to systems development.
- List and briefly describe the 3 roles played by modeling tools.
The roles are :
- Communication
Modeling tools help to systematize the often abstract
concepts and
difficult-to-define user requirements to facilitate communication with the
user.
- Experimentation
An inherent aspect of systems development is trial and
error
through iteration. These models allow users to understand and evaluate the
system early in the development process. It is not uncommon for a model to
undergo 3 or more iterations before partic ipants are finally satisfied.
- Prediction
Models foretell how a system will work.
- What is the purpose of the data flow diagram (DFD)? Describe the steps
required to develop a DFD.
Steps in developing a DFD :
- Draw a context-level diagram
The context-level diagram shows the main sources, sinks, processes
and the scope of the system under development. The purpose of the
context-level diagram is to conceptualize the general sources and sinks of
data.
- Decompose the context-level diagram
The context-level diagram is exploded or decomposed into a
second-level DFD.
- Decompose to an elementary level
This level of diagram explains in even greater detail the actual
processes that are occurring Leveling occurs until enough detail is
described for the systems analyst and users to understand the system
fully.
- What is a leveled set ?
A leveled set is one where a context-level
diagram has been decomposed to a level where the system is defined at its
most elementary level.
- What is the purpose of a context-level DFD ?
DFDs are used for portraying the overview of the entire system
under development to depicting the detailed processing of a single
transaction. The context-level DFDs show the main sinks, sources,
processes and scope of the system under development using DFD symbols.
- What is detailed-level DFD ?
A detailed-level DFD is one where the context-level DFD have been
decomposed to a level where the system is defined at its most elementary
level using DFD symbols.
- What is a data dictionary and what is it used for ?
A data dictionary is like any other dictionary, in that it defines
each data element name. The data dictionary contains definitions for all
data elements in the system being modeled, no more and no less.
- What is the purpose of an entity-relationship diagram (ERD)? Describe
the steps necessary to create an ERD.
An ERD depicts data at rest. It is used to model data stores in a
DFD, independent of processing performed with those data stores. Steps in
preparing ERDs :
- Identify entities
Involves identifying and labeling those entities that comprise the
system under development.
- Indicate relationships between entities
They are connected by lines.
- Define keys for each entity
Keys are data elements that uniquely identify each entity.
- Define and map data elements for each entity
Data element, also called data attributes, represent the data that
defines the entities.
- Normalize the data model
Normalization creates a data model that is flexible and stable,
with limited data redundancy.
- For what purpose are entities, relationships and data elements
(attributes) used in ERDs?
An entity is used to represent a set of persons, places, or things
all of which have a common name, a common definition and a common set of
properties or attributes. A relationship shows how entities interact and
work together. A data attribute helps define entities.
- What is a state transition diagram? What is its purpose?
A state transition diagram (STD) is a modeling tool that
represents the time-dependent aspects of a system. A STD is a tool used to
model the sequencing of many real-time systems.
- Structure charts normally work in conjunction with what other
modeling tool?
Structure charts are typically used in conjunction DFDs. The DFDs
model the system, and the structure chart models the software, coded and
tested to support the system.
- What is the purpose of a structure chart? Describe the steps required
to develop a structure chart.
A structure chart represents a hierarchy of software program
modules, including documentation of interfaces between the modules. It
acts as the design blue print for software coding, guides the coding of
modules, the order in which the modules will be built and tested, the
assignment of coders to specific modules and also serves as an external
documentation of software maintenance.
Steps in preparing structure charts :
- Identify the central transform
The central transform is the portion of the DFD that contains the
essential functions of the system.
- Produce a First-cut structure chart
Identify the executive or root module, then add other modules.
- Add modules and show data flows
- Write module details
Details of the modules are specified in an algorithmic language
such as pseudocode or structured English.
- Conduct a software walkthrough, that is to review and evaluate
the software.
- What is structured program flowchart used for?
A structured program flowchart is an excellent tool to describe
the software logic. Structured program flowchart are designed on the basis
of 3 standard control constructs (also called control structures):
- A sequence of instructions
- A selection of instructions based on some decision criteria in
the form of an if-then-else construct
- A repetition of instructions based on Do While or Do Until.
- Why are structured English, decision tables, decision trees and
equations called process specification tools?
Process Specification Tools are used to provide complete
description of the processes found in the elementary data flow diagrams.
Structured English is a collection of simple keywords that convey the 3
standard control constructs. Decision tables show co mplex, logical
relationships based on numerous conditions and actions. Decision trees are
similar, except that they show more clearly simple logic structures with
few required actions. Equations succinctly convey processes which involve
mathematical computation.
- How is structured English used in conjunction with structure charts
or structured program flowcharts?
Structured English consists of a few small groups of words that
clearly describe the 3 standard control constructs of sequence, selection
and repetition based in the structured program flowcharts.
- What are decision tables used for?
Decision tables are used where many actions are required for any
given decision.
- What are decision trees used for?
The decision trees are used for decisions that result in only one
or two actions.