Review Question Set II

  1. 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 :
    1. Modeling tools
    2. Modularisation
    3. Top-down decomposition
    4. Iteration
    5. Parallel activities
    6. Systems development automation.

  2. 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.

  3. List and briefly describe major features that support the structured approach.

    1. 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.
    2. Modularization is a process that divides a systems into independently operable modules.
    3. 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.
    4. 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.
    5. Parallel activities enable some overlapping of systems analysis, design, and implementation tasks.
    6. Systems development automation is the application of computer hardware and software to systems development.

  4. List and briefly describe the 3 roles played by modeling tools.

    The roles are :
    1. Communication
      Modeling tools help to systematize the often abstract concepts and difficult-to-define user requirements to facilitate communication with the user.
    2. 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.
    3. Prediction
      Models foretell how a system will work.

  5. What is the purpose of the data flow diagram (DFD)? Describe the steps required to develop a DFD.

    Steps in developing a DFD :
    1. 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.
    2. Decompose the context-level diagram
      The context-level diagram is exploded or decomposed into a second-level DFD.
    3. 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.

  6. 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.

  7. 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.

  8. 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.

  9. 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.

  10. 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 :
    1. Identify entities
      Involves identifying and labeling those entities that comprise the system under development.
    2. Indicate relationships between entities
      They are connected by lines.
    3. Define keys for each entity
      Keys are data elements that uniquely identify each entity.
    4. Define and map data elements for each entity
      Data element, also called data attributes, represent the data that defines the entities.
    5. Normalize the data model
      Normalization creates a data model that is flexible and stable, with limited data redundancy.


  11. 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.

  12. 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.

  13. 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.

  14. 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 :
    1. Identify the central transform
      The central transform is the portion of the DFD that contains the essential functions of the system.
    2. Produce a First-cut structure chart
      Identify the executive or root module, then add other modules.
    3. Add modules and show data flows
    4. Write module details
      Details of the modules are specified in an algorithmic language such as pseudocode or structured English.
    5. Conduct a software walkthrough, that is to review and evaluate the software.


  15. 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):

    1. A sequence of instructions
    2. A selection of instructions based on some decision criteria in the form of an if-then-else construct
    3. A repetition of instructions based on Do While or Do Until.


  16. 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.

  17. 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.

  18. What are decision tables used for?

    Decision tables are used where many actions are required for any given decision.

  19. What are decision trees used for?

    The decision trees are used for decisions that result in only one or two actions.