To Previous Chapter To Table of Contents To Bottom of Page To Next Chapter

Chapter 10 - Developing a Simple Program

  1. Programming Knowledge for Users
    knowledge of programming is useful:
    1. as a useful background for understanding information technology
    2. for writing programs, either by programming a macro within a software package or for programming a separate application
    3. as a background in working with information systems specialists

  2. Program Architectures
    A well-formed program:
    • has a clear and understandable structure
    • performs its intended tasks with no unanticipated side effects
    • does not contain errors
    • can be modified when task needs change
    • Structured Design(1970s) - developed to organize programs into well-formed modules that respond to well-defined sequences of events
      • structure charts; data flow diagrams; form / report layouts; data dictionaries
      • pseudocode
    • Event-driven Design(1980s) - developed to deal with unsequenced events triggered by screen objects on graphical user interface
      • Rapid Application Development (using prototyping)
    • Object-oriented Design(1990s) - developed to promote efficiency and quality through reuse of tested program units
      • encapsulation
      • inheritance

    StructuredEvent-Driven Object-Oriented
    Dominent View of the problem Sequence of transactions Random stimuli Independent repsonses to messages
    Organizing structure Hierarchical processes and data in the background Interface objectsAll communicating objects
    System components Procedures and data Interface objects and database Objects containing data and methods
    Design principle DecompositionPrototypeInheritance and specialization
    Design process SDLC Database design and user prototype(RAD) Object design and incremental build

  3. Program Modules
    • involves a single function
    • appropriately sized
    • requires a single entry/single exit
    • contains its own data definitions
    • communicates by passing parameters

  4. Program Operations and Variables
    • Arithmetic, Comparison, and String Operators
      • arithmetic: +, -, *, /, ^
      • comparison (relational): <, >, <=, >=, <>, =
      • string operations (concatentation [+, &], Len)
    • Logic or Boolean Operations: AND, OR, NOT, XOR
    • Variable Types: Char, Boolean, Integer, LONG, Single, Double, Currency, String, Date
    • Variable Names
    • Procedure Names
    • Object, Property, and Method Names

  5. Dialog and Data Input for a Macro Program: explicit, clear, and concise.

  6. Program Control Structures
    • Sequence Control Structure
    • Alternation (Conditional) Control Structure: if-then-else-end if; select/case
    • Repetition (Looping) Control Structure: do while; repeat-until; for
    • Nesting of Control Structures
    • Other Control Statements: call; exit

  7. Adding Control Structures and Dialog to Recorded Macros
    • Adding Alternation Structures
    • Adding Repetition Structures
    • Adding Dialog and User Input
    • Achieving Modularity in Designing Macros
      1. Organize functions into modules
      2. Define the control structures for each module
      3. Separately record the sequence of operations to be included with each of the control structures and edit in the appropriate control structures and modules [ex. "envelope" macro consists of 17 modules and is 25 pages long]
    • Macro Programs Without Recorded Macros

To Previous Chapter To Table of Contents To top of page To Next Chapter