- Modularity is important because (1) it allows assignment of different
programmers and analysts to separate tasks; (2) small sections can be
developed independently; and (3) maintenance causes minimal disruption.
- Cohesion is how well activities within a single module are related
to one another.
- Optimizing is the process of seeking the
perfect solution.
Satisficing
is the process of seeking a better, but not necessarily perfect, solution.
- There are no perfect systems. And, there are always constraints.
So, satisficing, not optimizing, is the goal of system design.
- Four categories of system flaws:
- Major anticipated flaws are system functions that were not included
in the design because of constraints such as time or cost.
- Major unanticipated flaws are the most serious type of system
shortcoming which indicate major design and testing deficiencies.
- Minor unanticipated flaws are the most prevalent of system
shortcomings and are handled by maintenance.
- Minor anticipated flaws should not exist.
- Three tactics to use for giving a system design a future orientation:
- Build redundancy into the current system.
- Maintain a future file on every system.
- Develop documentation.
- Logical design
- produces a system blueprint
- general rather than technical format
- Physical design
- converts the blueprint into the specific detail required to
construct the code
- includes specifying complete descriptions of files, input,
and output.
- The systems blueprint may include charts, graphs, and data layouts
that describe output documents and reports, input documents that the system
will process, computer records required to store processed data, and the
sequence and method by which output, input, and storage are linked.
- Output is the primary purpose of any system.
- A senior systems analyst is usually in charge of project scheduling for
systems design in the case of small projects; a project leader for larger
projects.
- Users should always participate in the design phase because it
fosters ownership.
- Clerical users should be involved in the design of business information
systems. At periodic intervals managers and supervisors should give their
stamp of approval.
- The advantage of design teams is that design can be completed in modules.
- Structured walkthroughs are valuable because
- they force the analyst to explain
step-by-step logic of design;
- design colleagues provide new ideas or spot flaws
that the analyst has overlooked/not noticed;
- provides an opportunity for analyst
to practice explaining the system.
- Joint Application Design (JAD) is the design of systems by groups of
people meeting together in multiple sessions. Design teams are
cross-functional and include both
users and designers. Designs are completed more quickly with JAD than
through traditional sequential methods. JAD involves a significant amount
of planning and coordination.
- CASE design aids include: graphics (data flow diagrams, structure charts,
etc.), screen and document design, file design, rapid prototyping, and code
generation.
- Standard information systems are applicable across a wide range of
industries. Tailored information systems must match the specific
characteristics of a firm or individual decision makers within the firm.
- In the top-down approach the designer begins with the total concept and
decomposes to further levels of detail.
A module is a bounded contiguous group of statements having a
single name and that can
be treated as a unit. In other words, a single block in a pile of blocks.
Cohesion: how well the activities within a single module relate to one another.
Separate modules should be relatively independent (loosely coupled).
This facilitates
development, maintenance by teams; reduces chance of
unintended ripple effects on other modules
when changes made to a module.
Guidelines for Modularity
- Make sure modules perform a single task,
have a single entry point, have a single exit point.
- Isolate input-output (I-O) routines into a small number
of standard modules that can be shared system-wide.
- Isolate system-dependent functions (e.g., getting date or time)
in the application to
ease possible future conversions to other computer platforms or
to accomodate future operating
system revisions.
Any system always represents some kind of tradeoff between
functionality (meeting the business
needs) and the resources available (constraints). The goal of design
is an improved system, one
that better meets the needs of the organization.
|