| "100% of your design documentation is contained in | | | | each other. Consider a parts manifest as included in a |
| the specifications of your information resources." | | | | major appliance maintenance bookley (or lawn/garden |
| - Bryce's LawThere are many companies today, | | | | tool), I am sure this type of diagram is familiar to any |
| most overseas, still tackling major systems projects | | | | homeowner who has reviewed product maintenance |
| particularly in the areas of banking and manufacturing. | | | | warranty booklets.Every part in the product is identified |
| These mammoth application development efforts | | | | by number and name (see section to the right in the |
| contrast sharply with American companies who have | | | | figure). To the left side in the figure is a schematic |
| failed in such undertakings and are now content with | | | | showing how each part relates to the other parts and, |
| chipping away at systems, program-by-program, with | | | | as such, represents the assembly of the product for |
| the hope that disjointed software will somehow | | | | maintenance purposes.The concept of "Bill of |
| someday interface with each other. Whereas foreign | | | | Materials" provides the means to inventory resources |
| competitors talk in terms of enormous systems with | | | | thus allowing us to share and re-use them. For |
| hundreds of programs and millions of lines of code; | | | | example, many of the parts shown in Figure 2 are |
| large integrated systems tend to intimidate the most | | | | re-used in other lawnmower models offered by the |
| ardent of American developers. But this is not so much | | | | manufacturer. How can we share and re-use |
| a story about competition as it is about understanding | | | | resources without such a concept? The answer is |
| design complexity.People in both the east and the | | | | simple: we cannot. And this explains why there is |
| west recognize the design and development of a total | | | | considerable redundancy in our information resources |
| system is no small task. A system can consist of | | | | and work effort. It also suggests most of our design |
| many business processes, procedures, programs, | | | | decisions are maintained "by the seat of our pants." |
| inputs, outputs, files, records, data elements, etc. The | | | | Most college courses involving computing are unfamiliar |
| problem lies in how to best control these information | | | | with the Bill of Materials concept. Their focus is on |
| resources and the design decisions associated with | | | | programming and file design, and little else.The concept |
| them. Two approaches are typically used: | | | | of "Bill of Materials" has three objectives: |
| progressively break the problem into smaller, more | | | | To uniquely identify each resource by number and |
| manageable pieces, or; tackle a minuscule portion of | | | | name (as well as by aliases). Names are nice, but |
| the problem at a time. Whereas the former requires a | | | | numbers offer a more precise way to uniquely identify |
| long term perspective, the latter can show a quick | | | | a resource. Identification is critical. After all, we cannot |
| return, which is more appealing to a company with a | | | | share and re-use something if we do not know it |
| "fast track" mentality.Some time ago we conducted a | | | | exists.To record the part's specifications. Thus |
| study of customer application development projects. | | | | providing a way to determine if the part can be |
| Our research centered on two types of projects: | | | | re-used in another product (thereby promoting the |
| those aimed at building a total system, and; those | | | | sharing of parts and eliminating redundancy).To record |
| aimed at building a single program. One obvious | | | | where the part is used in a product(s) (aka |
| conclusion was that the number of information | | | | "Where-used"). This specifies the relationship of parts |
| resources used in a major system was considerably | | | | to each other and, thereby, their assembly. This is also |
| more than in a program.However, the key observation | | | | extremely useful for "impact analysis" whereby we |
| made in the study was that there is a finite number of | | | | can analyze where the part is used in all of our |
| design decisions associated with each type of | | | | products, not just one, which is vital for making |
| information resource. As an example, for an output, | | | | intelligent decisions about modifying a part. For |
| decisions have to be made as to its physical media | | | | example, if we change the specifications of a part in |
| (screen or report), size (number of characters), | | | | one product, this will severely impact other products it |
| messages associated with it, etc. For a data element, | | | | is also used in. |
| its logical and physical characteristics must be specified | | | | By controlling parts in this manner, a product's design is |
| (definition, source, label, size, class, length, etc.). For a | | | | fully |
| program, the language to be used, program logic, | | | | documented.The "Bill of Material" concept can easily |
| required file structures, etc. These design decisions can | | | | accommodate information resources and offer the |
| be simple or complex; regardless, they are all required | | | | same benefits of sharing and re-using components. By |
| in order to design a system or a program. When we | | | | doing so, we can easily manage the 50,000 design |
| multiply the number of design decisions by the number | | | | decisions accompanying a system design project. Our |
| of information resources, we get an | | | | system/software products may be less tangible than |
| idea of the magnitude of a systems design project | | | | an automobile, aircraft or lawnmower, but we can still |
| versus the design of a single program (see Figure | | | | apply the same concept to their control.Therefore, an |
| 1).FIGURE 1NUMBER OF RESOURCES IN AVERAGE | | | | IRM Repository should have the ability to identify, |
| SYSTEMS PROJECT: 2,006 | | | | specify, and cross-reference all of the resources |
| NUMBER OF DESIGN DECISIONS TO BE MADE: | | | | mentioned in Figure 1. This can certainly be done |
| 49,850NUMBER OF RESOURCES IN AVERAGE | | | | manually with paper but this may lead to bureaucratic |
| PROGRAM PROJECT: 98 | | | | and access problems for developers. Instead, |
| NUMBER OF DESIGN DECISIONS TO BE MADE: | | | | automation is recommended. There are several such |
| 2,070NOTE: Decisions are design oriented only; they | | | | commercial products on the market, but it is also fairly |
| do not include Project Management related decisions | | | | easy to create such software using today's Data |
| (such as those associated with planning, estimating and | | | | Base Management Systems (DBMS) which are now |
| scheduling).From this perspective, the average system | | | | fairly easy to define and relate resources (they also |
| design project is nearly 25 times larger than the | | | | provide excellent documentation services).The IRM |
| average software design project in terms of | | | | should be viewed as the hub of all development |
| complexity. As a footnote, our findings also revealed | | | | efforts and provide the means to interface (import |
| the "average" system design project is seven times | | | | export) with a myriad of other development tools; e.g., |
| larger than a "complex" software design project.This | | | | CASE, prototyping aids, program generators, etc. Such |
| discrepancy in system/software complexity provides | | | | tools will use the intelligence of the information |
| a clue as to how companies address the problem. | | | | resources as contained in the IRM to function |
| Since a software design project is smaller and | | | | accordingly. As an example, a program generator |
| seemingly more palatable to implement than a total | | | | should be able to interpret the program and file |
| systems project, some companies will focus on | | | | specifications in order to produce the necessary code. |
| software engineering tools and techniques, and | | | | Such development tools should also have the ability to |
| abandon total systems engineering practices. This is | | | | turn around and import resource specifications back |
| one reason why programming tools enjoy popularity | | | | into the IRM. This is particularly useful for documenting |
| today.Contrast this with the size of Japan's "Best" | | | | existing systems/software (aka "Reverse |
| project to build the country's next generation of on-line | | | | Population").For information on how to create an IRM |
| banking systems. This was a major application | | | | Repository, please see => concept of "Bill of Materials" |
| development effort resulting in 72 "average" systems; | | | | is an important part of an overall strategy to implement |
| a considerably larger project than what is typically | | | | an "Information Factory" environment to design and |
| addressed in the United States.MANAGING | | | | develop information resources. But this will be the |
| DECISIONSThere are two aspects to handling | | | | subject of a separate paper.CONCLUSIONThis |
| decisions: how they are formulated, and how they are | | | | philosophy to managing design complexity is no |
| controlled.Trying to make nearly 50,000 design | | | | different than what is found in the engineering and |
| decisions in one step is not only an impossible task, it is | | | | manufacturing of any product. Engineers break their |
| a highly impractical way of operating. Just like the | | | | design projects into smaller stages so that reviews |
| design of any product, a system must be designed in | | | | can be performed and revisions implemented. A "bill of |
| gradual phases in such a way as it becomes possible | | | | materials" processor is used to track |
| to review and refine the design. In other words, the | | | | the parts or a product and how they interrelate; which |
| 50,000 design decisions will be made throughout the life | | | | is no different in intent than the IRM tool.For people |
| of a development project, not all at once.It is the | | | | imbued in programming, it is difficult to think in terms of |
| responsibility of a systems engineering methodology to | | | | "parts" as described herein, but it is a practical solution |
| define the sequence of events for designing a system. | | | | and can be applied to any development effort, large or |
| As such, the methodology represents the channel for | | | | small. Standardization and integration of information |
| formulating decisions. Breaking a complex system | | | | resources is built by design, not by accident.Without a |
| design down into smaller, more manageable pieces, | | | | formalized methodology for design or an IRM tool to |
| also provides for: | | | | record design decisions, a major system design is |
| Parallel development and delivery of portions of the | | | | incomprehensible; there are just too many variables for |
| system | | | | the human mind to remember or control using manual |
| (concurrent development within a single project).An | | | | techniques. It is not that analysts do not want to take |
| environment conducive for building quality into a | | | | on a major systems design project, they simply |
| product (as opposed to inspecting for quality | | | | cannot. They lack the organization and proper tools to |
| afterwards).The formulation of Project Management | | | | perform the job effectively. Because of this, they |
| related decisions (such as estimating and scheduling | | | | default to the things they know best, programming, and |
| the delivery of systems, in part or in full). | | | | tackle systems in piecemeal.The difference between |
| This philosophy of design is no different than any | | | | east and west here is not one of working harder, but |
| other product | | | | smarter. The Japanese and Europeans are simply |
| design/development effort, such as shipbuilding, | | | | better organized and equipped to perform system |
| automobile manufacturing, bridge building, etc. All require | | | | design than their American counterparts. This can be |
| a specific methodology that breaks the product down | | | | attributed, in large part, to management's sensitivity to |
| to its sub-assemblies and parts; thereby organizing the | | | | the role systems play in a company. Because of this, |
| specification of parts and the design decisions | | | | they are not afraid to tackle large endeavors, while |
| associated with them.Managing the decision making | | | | American companies view such undertakings as |
| process for even the smallest of application | | | | seemingly too massive to undertake. As such, they |
| development projects can be a huge undertaking. We | | | | sidestep large projects in favor of smaller projects that |
| estimate there are approximately 500 design decisions | | | | may address only a portion of the overall problem. This |
| associated in a small software design project (as | | | | is resulting in the unsettling situation where our |
| compared to more than 125,000 decisions in the typical | | | | competitors are rapidly becoming the world's systems |
| complex system design project). To record and control | | | | engineers, while Americans become the world's |
| these decisions requires something more sophisticated | | | | software engineers.For more information on our |
| than just paper and pencil; it requires an automated | | | | philosophies of Information Resource Management |
| "Information Resource Manager" (IRM), a software tool | | | | (IRM), please see the "Introduction" section of "PRIDE" |
| capable of inventorying and documenting an | | | | at => Bryce is the Managing Director of M. Bryce & |
| enterprise's information resources.Whether you call it | | | | Associates (MBA) of Palm Harbor, Florida, a |
| an "IRM", a "Repository", a "Data Dictionary" or | | | | management consulting firm specializing in Information |
| whatever, the philosophical heart of the product is | | | | Resource Management (IRM). Mr. Bryce has over 30 |
| based on the age-old concept of "Bill of Materials" | | | | years of experience in the field. He is available for |
| whereby resources (also referred to as "components" | | | | training and consulting on an international basis. |
| or "parts") are cataloged and cross-referenced to | | | | |