Approach to Management Information System Design
Joseph George Caldwell, PhD
March, 1993
© 1993, 2006 Joseph George Caldwell. All Rights Reserved.
Posted at http://www.foundationwebsite.org and http://www.foundation.bw
Contents
Overview
of Approach to Management Information System (MIS) Design
A classical systems and software engineering approach is recommended to assure the development of a management information system that is fully responsive to a client's performance objectives and resource constraints. This approach includes the following major components:
o Systems analysis, which includes information needs assessment, requirements analysis, and requirements specification
o Systems design, which includes synthesis of alternatives, cost-effectiveness analysis of alternatives, specification of criteria for selecting a preferred alternative, selection of a preferred alternative, top-level design, and detailed design
o Systems implementation, which includes forms development, specification of data collection and entry procedures, development of editing and quality control procedures, software coding and testing, development of training materials and training, integration of the software components with other system components (e.g., personnel, communications, data transfer and assembly, report preparation and distribution, feedback), and system-level testing
o Systems operation and support, which includes not only routine operating procedures but also provision for on-going system financing and management, quality control, software maintenance and updating, personnel training, and system maintenance and improvement (including periodic review of system performance and diagnosis and correction of problems)
While the preceding system development phases are completed in sequence, there is some time overlap between them. The following paragraphs discuss aspects of each of the above major components. Our approach to management information system design is based on the modern software/system engineering discipline, which consists of structured analysis and structured design (top-down design). (See the list of references for several books on the modern systems and software engineering discipline.)
The first step in an MIS development task is the development of an MIS management plan, which describes the major tasks and schedule of work for the MIS activity.
Systems analysis includes a review of the present information system to assess its capabilities and shortcomings; specification of system goals, objectives, and constraints; a survey of potential system users to assess their information needs; identification and analysis of alternative system concepts; specification a system concept; and system requirements analysis and specification. This phase includes an analysis of major system functions and the development of a system architecture (identification of the major system components and their interrelationships).
Heavy emphasis is placed on end-user requirements. It is essential to involve the end-user in the system requirements activity, to insure the development of a system that is fully responsive the user's needs. The review of the current system and survey of potential users can be done by a variety of means, including review of documentation, site visits, questionnaire surveys, interviews, and focus-group discussions.
The systems design phase is generally broken into two subphases, top-level design and detailed design. Top-level design consists of the identification of the major system components and their functions. In order to specify the top-level design, a number of alternative system design concepts are synthesized and evaluated in terms of a variety of selection criteria, which include cost (implementation, operation and maintenance), performance, satisfaction of requirements, development risk, flexibility for expansion/upgrading, and political acceptability. The important aspect of top-level design is to present several feasible solutions to the system managers and users, to describe their advantages and disadvantages, and to obtain a consensus on a preferred design concept. An example of a design decision is the decision concerning which functions should be implemented using computers and which should be manual (e.g., should data collected at a regional level and needed at a central level be transmitted by modem or hand-carried on diskette).
Detailed design consists of specifying all of the system components and functions in detail. In the detailed design phase, decisions are made concerning what data elements are to be collected, how they are to be coded, how frequently they are to be collected, and at what levels of detail they are to be aggregated. A critical design decision concerns the "units of analysis" -- the item on which the data are to be measured, such as an individual, a household, a school, a clinic, a farm, a village, or a region. The decision on the unit of analysis has a significant impact on both the cost of the system operation (especially the data collection burden) and on the flexibility of ad-hoc reporting. This design decision is particularly important. While it is an easy matter to revise a data entry screen or report format, it is not possible to produce a desired report about a particular type of unit if data on that unit are not included in the data base. For example, if it is desired to produce a report about the frequency distribution of villages by some characteristic, village-level data must be included in the data base. If it is desired to produce a frequency distribution of facilities by size, facility data must be included. If it is desired to produce distributions of families with particular characteristics, data on families must be included in the data base.
It may not be practical to include data in the database on all of the members of a population. If a population is very large (e.g., families, households), consideration should be given to the use of sampling procedures for data collection and reporting.
For a software subsystem, the structured analysis / structured design approach involves the use of techniques such as data flow diagrams, functional decompositions, and structure charts. Since we recommend making heavy use of fourth-generation database management software, the amount of detail depicted in the detailed software design is generally minimal.
The detailed design phase also identifies the initial reports to be produced by the system (reporting levels, frequency, content, and format). With fourth-generation database software it is an easy matter to change reports or develop new reports, so the specification of the output reports is not critical.
The amount of effort expended in detailed software design for management information systems is often not very great, for two reasons. First, through the use of fourth-generation software it is relatively easy to implement modifications of report content and format (as long as the necessary data are available). Second, it is recommended to adopt a rapid-prototyping approach to the software development. Fourth-generation languages are ideally suited to this approach, which consists of developing an initial version of the software, testing it, modifying it, and then producing a second, improved, version. This iterative process is repeated one or more times until a desired version is obtained. With the rapid-prototyping approach, the "design" is continually evolving, and a minimum amount of effort is expended in documenting each of the prototypes.
The system design phase specifies what computer equipment is to be used. Because of the very high computing power (fast speed, large memory) of current-day microcomputers, the large capacity of hard drives, the tremendous variety and capabilities of available application software, and the reasonable cost of hardware and software, current microcomputer-based systems will be able to accomplish many of the desired system requirements at acceptable cost and level of complexity. Because of the large diversity of choice, however, and because the acquisition and training costs are not negligible, it is necessary to carefully consider the alternatives and make a good selection. Experience with a wide variety of software and hardware is a valuable asset in guiding the hardware/software selection process.
The significant processing capabilities of microcomputers makes them appropriate candidates for many practical MIS applications. Major categories of software involved in a microcomputer-based MIS system are database software, spreadsheet / presentation graphics, and statistical analysis packages. Depending on the system size and number of users, networking may be a useful option.
Larger applications may exceed the processing capabilities of microcomputer-based systems, in which case larger (e.g., minicomputer-based) systems may be appropriate.
Systems implementation consists of developing all of the system components -- data collection forms; data collection, transfer and processing procedures; data entry procedures and screens (including on-line edit checking); software; report forms; report distribution; quality control procedures. As mentioned, we recommend the use of an iterative, rapid-prototyping approach to the software implementation. It is highly recommended to field-test major systems in a single geographic area before going full scale. This field testing involves not only software, but all aspects of the system (e.g., data collection procedures, training, quality control).
The importance of allowing for prototyping and field testing cannot be minimized. A key problem faced in developing countries is data integrity. From previous experience, we know that users become much more interested in data integrity after seeing the data they reported in a printout. The system procedures will allow for regular feedback of data to the source levels, for review and correction.
In a developing country, a considerable amount of time must
be allowed for implementation. Data that
are taken for granted in a highly developed country often do not exist in a
developing country. For example, in a
recent MIS development effort in
Because of the many uses to which an MIS may be applied, all of the collected data may not be included in a single file. Instead, there may be a variety of data files, involving a variety of units of analysis. For example, there may be national-level, regional-level, and local-level files; facility files, personnel files, program files and client files. Data from these files may be aggregated and combined as desired, as long as there is a "key" (identifier) linking the file records. An essential element in linking geographically-oriented data files is a the availability of a geographic code, or "geocode." With a suitably defined geocode (containing subparts referring to the political subdivisions), it is possible to perform a wide variety of geographic-oriented analyses. Many useful analyses can be readily performed with a standard data base management. Many more can be efficiently conducted if a microcomputer-based geographic information system (GIS) is available. The decision to require the use of geocodes is an example of a system design decision that has a profound effect on the kind of questions that can be answered (i.e., the type of ad-hoc reports that can be generated) after the system implementation effort is completed.
System support includes all of the resources required to operate, maintain, and improve the system. A crucial aspect of the system operation phase is the fact that the MIS design team will, at some point, be ending its involvement in the MIS. At that point, it is important that the client have the personnel know-how and resources to continue operation of the system, maintain it, and improve it, without further assistance from the contractor. Because of the known eventual departure of the system development contractor, it is necessary to develop a system that is easy to use and improve, and that will not collapse with the departure of a key government person. To accomplish this goal, training materials and procedures will be developed that can be used to assure the continued operation of the system in the future.
1. Whitten, Jeffrey L, Lonnie D. Bentley, and Victor M. Barlow, Systems Analysis and Design Methods, 2nd ed., Irwin, 1989
2. DeMarco, Tom., Structured Analysis and System Specification, Yourdon Press (Prentice-Hall), 1979
3. Pressman, Roger S., Software Engineering: A Practitioner's Approach, McGraw Hill, 1982
4. Martin, James and Carma McClure, Software Maintenance: The Problem and Its Solution, Prentice-Hall, 1983
5. Martin, James and Joe Leben, Fourth-Generation Languages, Prentice-Hall, 1986
6. Martin, James and Carma McLure, Structured Techniques for Computing, Prentice-Hall, 1985
7. Martin, James and Carma McLure, Diagramming Techniques for Analysts and Programmers, Prentice-Hall, 1985
8. Boehm, Barry W., Software Engineering Economics, Prentice-Hall, 1981
9. Ullman, Jeffrey D., Principles of Database Systems, Computer Science Press, 1980
10. Davis, Alan M., Software Requirements: Analysis and Specification, Prentice-Hall, 1990
11. Kruglinski, David, Data Base Management Systems: MS-DOS: Evaluating MS-DOS Data Base Software, McGraw-Hill, 1986
12. Dumas, Joseph S., Designing User Interfaces for Software, Prentice-Hall, 1988
13. Kernighan, Brian W. and P. J. Plauger, Software Tools, Addison-Wesley, 1976
14. Martin, James, System Design from Provably Correct Constructs, Prentice-Hall, 1986