Managing Design Complexity
Managing Design Complexity
Free Online Articles Directory
Why Submit Articles?
Top Authors
Top Articles
FAQ
ABAnswers
0 && $.browser.msie ) {
var ie_version = parseInt($.browser.version);
if(ie_version Login
Register
Hello
My Home
Sign Out
Email
Password
Remember me?
Lost Password?
Home Page > Computers > Information Technology > Managing Design Complexity
Managing Design Complexity
Posted: Jun 05, 2006 |Comments: 0
| Views: 497 |
]]>
“100% of your design documentation is contained in
the specifications of your information resources.”
- Bryce’s Law
There are many companies today, most overseas, still tackling major systems projects particularly in the areas of banking and manufacturing. These mammoth application development efforts contrast sharply with American companies who have failed in such undertakings and are now content with chipping away at systems, program-by-program, with the hope that disjointed
software will somehow/someday interface with each other. Whereas foreign competitors talk in terms of enormous systems with hundreds of programs and millions of lines of code; large integrated systems tend to intimidate the most ardent of American developers. But this is not so much a story about competition as it is about understanding design complexity.
People in both the east and the west recognize the design and development of a total system is no small task. A system can consist of many business processes, procedures, programs, inputs, outputs, files, records, data elements, etc. The problem lies in how to best control these information resources and the design decisions associated with them. Two approaches are
typically used: progressively break the problem into smaller, more manageable pieces, or; tackle a minuscule portion of the problem at a time. Whereas the former requires a long term perspective, the latter can show a quick return, which is more appealing to a company with a “fast track” mentality.
Some time ago we conducted a study of customer application development projects. Our research centered on two types of projects: those aimed at building a total system, and; those aimed at building a single program. One obvious conclusion was that the number of information resources used in a major system was considerably more than in a program.
However, the key observation made in the study was that there is a finite number of design decisions associated with each type of information resource. As an example, for an output, decisions have to be made as to its physical media (screen or report), size (number of characters), messages associated with it, etc. For a data element, its logical and physical characteristics must be specified (definition, source, label, size, class, length, etc.). For a program, the language to be used, program logic, required file structures, etc. These design decisions can be simple or complex; regardless, they are all required in order to design a system or a program. When we multiply the number of design decisions by the number of information resources, we get an
idea of the magnitude of a systems design project versus the design of a single program (see Figure 1).
FIGURE 1
NUMBER OF RESOURCES IN AVERAGE SYSTEMS PROJECT: 2,006
NUMBER OF DESIGN DECISIONS TO BE MADE: 49,850
NUMBER OF RESOURCES IN AVERAGE PROGRAM PROJECT: 98
NUMBER OF DESIGN DECISIONS TO BE MADE: 2,070
NOTE: Decisions are design oriented only; they do not include Project Management related decisions (such as those associated with planning, estimating and scheduling).
From this perspective, the average system design project is nearly 25 times larger than the average software design project in terms of complexity. As a footnote, our findings also revealed the “average” system design project is seven times larger than a “complex” software design project.
This discrepancy in system/software complexity provides a clue as to how companies address the problem. Since a software design project is smaller and seemingly more palatable to implement than a total systems project, some companies will focus on software engineering tools and techniques, and
abandon total systems engineering practices. This is one reason why programming tools enjoy popularity today.
Contrast this with the size of Japan’s “Best” project to build the
country’s next generation of on-line banking systems. This was a major application development effort resulting in 72 “average” systems; a considerably larger project than what is typically addressed in the United States.
MANAGING DECISIONS
There are two aspects to handling decisions: how they are formulated, and how they are controlled.
Trying to make nearly 50,000 design decisions in one step is not only an impossible task, it is a highly impractical way of operating. Just like the design of any product, a system must be designed in gradual phases in such a way as it becomes possible to review and refine the design. In other words, the 50,000 design decisions will be made throughout the life of a development project, not all at once.
It is the responsibility of a systems engineering methodology to define the sequence of events for designing a system. As such, the methodology represents the channel for formulating decisions. Breaking a complex system design down into smaller, more manageable pieces, also provides for:
Parallel development and delivery of portions of the system
(concurrent development within a single project).
An environment conducive for building quality into a product (as opposed to inspecting for quality afterwards).
The formulation of Project Management related decisions (such as estimating and scheduling the delivery of systems, in part or in full).
This philosophy of design is no different than any other product
design/development effort, such as shipbuilding, automobile manufacturing, bridge building, etc. All require a specific methodology that breaks the product down to its sub-assemblies and parts; thereby organizing the specification of parts and the design decisions associated with them.
Managing the decision making process for even the smallest of application development projects can be a huge undertaking. We estimate there are approximately 500 design decisions associated in a small software design project (as compared to more than 125,000 decisions in the typical complex system design project). To record and control these decisions requires
something more sophisticated than just paper and pencil; it requires an automated “Information Resource Manager” (IRM), a software tool capable of inventorying and documenting an enterprise’s information resources.
Whether you call it an “IRM”, a “Repository”, a “Data Dictionary” or whatever, the philosophical heart of the product is based on the age-old concept of “Bill of Materials” whereby resources (also referred to as “components” or “parts”) are cataloged and cross-referenced to each other. Consider a parts manifest as included in a major appliance maintenance bookley (or lawn/garden tool), I am sure this type of diagram is familiar to any homeowner who has reviewed product maintenance/warranty booklets.
Every part in the product is identified by number and name (see section to the right in the figure). To the left side in the figure is a schematic showing how each part relates to the other parts and, as such, represents the assembly of the product for maintenance purposes.
The concept of “Bill of Materials” provides the means to inventory resources thus allowing us to share and re-use them. For example, many of the parts shown in Figure 2 are re-used in other lawnmower models offered by the manufacturer. How can we share and re-use resources without such a concept? The answer is simple: we cannot. And this explains why there is considerable redundancy in our information resources and work effort. It also suggests most of our design decisions are maintained “by the seat of our pants.” Most college courses involving computing are unfamiliar with the Bill of Materials
concept. Their focus is on programming and file design, and little else.
The concept of “Bill of Materials” has three objectives:
To uniquely identify each resource by number and name (as well as by aliases). Names are nice, but numbers offer a more precise way to uniquely identify a resource. Identification is critical. After all, we cannot share and re-use something if we do not know it exists.
To record the part’s specifications. Thus providing a way to determine if the part can be re-used in another product (thereby promoting the sharing of parts and eliminating redundancy).
To record where the part is used in a product(s) (aka “Where-used”). This specifies the relationship of parts to each other and, thereby, their assembly. This is also extremely useful for “impact analysis” whereby we can analyze where the part is used in all of our products, not just one, which is vital for making intelligent decisions about modifying a part. For example, if we change the specifications of a part in one product, this will severely impact other products it is also used in.
By controlling parts in this manner, a product’s design is fully
documented.
The “Bill of Material” concept can easily accommodate information resources and offer the same benefits of sharing and re-using components. By doing so, we can easily manage the 50,000 design decisions accompanying a system design project. Our system/software products may be less tangible than an automobile, aircraft or lawnmower, but we can still apply the same concept to their control.
Therefore, an IRM Repository should have the ability to identify, specify, and cross-reference all of the resources mentioned in Figure 1. This can certainly be done manually with paper but this may lead to bureaucratic and access problems for developers. Instead, automation is recommended. There are several such commercial products on the market, but it is also fairly easy to create such software using today’s Data Base Management Systems (DBMS) which are now fairly easy to define and
relate resources (they also provide excellent documentation services).
The IRM should be viewed as the hub of all development efforts and provide the means to interface (import/export) with a myriad of other development tools; e.g., CASE, prototyping aids, program generators, etc. Such tools will use the intelligence of the information resources as contained in the IRM to function accordingly. As an example, a program generator should be able to interpret the program and file specifications in order to produce the necessary code. Such development tools should also have the ability to turn around and import resource
specifications back into the IRM. This is particularly useful for
documenting existing systems/software (aka “Reverse Population”).
For information on how to create an IRM Repository, please see:
http://www.phmainstreet.com/mba/pride/spir.htm
The concept of “Bill of Materials” is an important part of an overall strategy to implement an “Information Factory” environment to design and develop information resources. But this will be the subject of a separate paper.
CONCLUSION
This philosophy to managing design complexity is no different than what is found in the engineering and manufacturing of any product. Engineers break their design projects into smaller stages so that reviews can be performed and revisions implemented. A “bill of materials” processor is used to track
the parts or a product and how they interrelate; which is no different in intent than the IRM tool.
For people imbued in programming, it is difficult to think in terms of “parts” as described herein, but it is a practical solution and can be applied to any development effort, large or small. Standardization and integration of information resources is built by design, not by accident.
Without a formalized methodology for design or an IRM tool to record design decisions, a major system design is incomprehensible; there are just too many variables for the human mind to remember or control using manual techniques. It is not that analysts do not want to take on a major systems
design project, they simply cannot. They lack the organization and proper tools to perform the job effectively. Because of this, they default to the things they know best, programming, and tackle systems in piecemeal.
The difference between east and west here is not one of working harder, but smarter. The Japanese and Europeans are simply better organized and equipped to perform system design than their American counterparts. This can be attributed, in large part, to management’s sensitivity to the role systems play in a company. Because of this, they are not afraid to tackle large endeavors, while American companies view such undertakings as seemingly too massive to undertake. As such, they sidestep large projects in favor of smaller projects that may address only a portion of the overall problem. This is resulting in the unsettling situation where our competitors are rapidly becoming the world’s systems engineers, while Americans become the world’s software engineers.
For more information on our philosophies of Information Resource Management (IRM), please see the “Introduction” section of “PRIDE” at:
http://www.phmainstreet.com/mba/pride/intro.htm#irm
Retrieved from “http://www.articlesbase.com/information-technology-articles/managing-design-complexity-33125.html”
(ArticlesBase SC #33125)
Watch your traffic increase just by submitting articles with us, click here to get started.
Liked this article? Click here to publish it on your website or blog, it’s free and easy!
Tim Bryce -
About the Author:
Tim Bryce is the Managing Director of M. Bryce & Associates (MBA) of Palm Harbor, Florida, a management consulting firm specializing in Information Resource Management (IRM). Mr. Bryce has over 30 years of experience in the field. He is available for training and consulting on an international basis. His corporate web page is at:
http://www.phmainstreet.com/mba/
He can be contacted at: timb001@phmainstreet.com
Copyright © 2006 MBA. All rights reserved.
]]>
Questions and Answers
Ask our experts your Information Technology related questions here…
200 Characters left
What are the ranges of design management ?
We are considering to adapt a software which will allow us to manage the booking of Hotel Cars for Guest duties. Is there any Transport Management software designed for Hotels?
I have done MBA in human resource .What kind of training or course to I further require to get into hotel industry?
Rate this Article
vote(s)
0 vote(s)
Feedback
RSS
Print
Email
Re-Publish
Source: http://www.articlesbase.com/information-technology-articles/managing-design-complexity-33125.html
Article Tags:
mangin, design, complexity, information, resources, irm, tim, bryce, mba
Latest Information Technology Articles
More from Tim Bryce
Dragon Age: Origins Combat System Developer Diary
This video details the design of the combat system in Dragon Age: Origins ? one that allows you to be both the wise Commander setting the strategy, as well as the leader of the battle charge. (06:27)
BMW Cooling System Overview Part 2/2
Tutorials for major to minor car repairs and tweaks. This video focus’ on BMW cooling system overview with common failures for the e36, e46, e34, e39 part 2/2. (05:36)
BMW Cooling System Overview Part 1/2
Tutorials for major to minor car repairs and tweaks. This video focus’ on BMW cooling system overview with common failures for the e36, e46, e34, e39 part 1/2. (08:01)
Sprinkler System Design – Number of Zones & Heads
Designing a sprinkler system properly involves making sure that there is as close to an equal amount of water distributed to all areas as possible. If you put too many heads on a zone and cut down the number of zones you use, your sprinkler system w (01:48)
http://www.AsktheDecorator.com host Meghan Carter visits California Closets to discovers the essential closet system information you need to get your closet in order. From selecting organizers to laying out your closet design, you’ll be ready to tackle your closet. (07:14)
Choose the best wifi network with the small wifi tool
Now there are more and more wifi hot spots around us. There are many free wifi networks for option no matter in the open air, company, school or the coffe shop. But how can we choose a wireless network with the best signal?
By:
Everest Auctionl
Computers>
Information Technologyl
Mar 12, 2011
Learn some basics about Ruby on Rails Programming Language
Ruby on Rails is deemed today as a momentous revolution in the computer programming language. Quite many people are not aware of the cat that ROR is the short form of Ruby on Rails.
By:
Greamel
Computers>
Information Technologyl
Mar 12, 2011
Migrating your Website to a CMS
Content Management Systems…sound complicated, right? Well, they’re actually not. In fact, Content Management Systems (CMS for short) are quite the opposite. If you’re currently struggling with your website, or if you’re in the process of having a website built, consider installing or migrating to a CMS. If you can type a Word document, you can pretty much manage your website’s content with a Content Management System.
By:
Vanessa Pol
Computers>
Information Technologyl
Mar 11, 2011
Ipad app glitches have been an ongoing fact of life
I had just started reading David Pogue’s column in the New York Times about how “The Appeal of iPad 2 is a Matter of Emotions” when a sudden failure of the NYTimes app on my iPad got my blood boiling.
By:
wholesaleeshopsl
Computers>
Information Technologyl
Mar 11, 2011
Iphone 5 will be the dawn of the next world’s finest creations on this Apple rumors come and go, this article is to summarize these rumors about the top ten most popular. If you want to know what the main contents of the legend, or you want to know and you think iphone 5 are all the same, see the article.
By:
supereworldl
Computers>
Information Technologyl
Mar 11, 2011
IPad 2 listed ripple broke out this year or years into the Tablet PC
Beijing’s time , March 3, 2011 morning, Apple iPad 2 released. Apple CEO Steve Jobs attend the conference, and summarizes all the new features iPad 2: If the iPad in your hand like a book, iPad 2 is like a magazine. IPad in the face of strong attack, major manufacturers gearing up to participate have been offering a variety of flat products to the fierce market competition among them.
By:
batterylaptoppowerl
Computers>
Information Technologyl
Mar 11, 2011
Switching to the Online Version of PC Support Services
Computing has made sweeping changes to way business is conducted. We use computers for official and personal purposes. Thus, PC support services have come to gain tremendous weight among the services people use in general.
By:
Nick Johnsonl
Computers>
Information Technologyl
Mar 11, 2011
Variable Web Page Design Prices
The website for the business is one of the today’s important business requirements. The websites/pages are designed for variety of businesses, organizations, educational institutes or even personal.
By:
Julian woodl
Computers>
Information Technologyl
Mar 11, 2011
In fact, it can produce some remarkable results.
By:
Tim Brycel
Home and Family>
Parentingl
Feb 21, 2011
Do we watch the clock or the work product we’re producing?
By:
Tim Brycel
Businessl
Feb 16, 2011
What happens when you turn around and suddenly find yourself in charge.
By:
Tim Brycel
Businessl
Feb 14, 2011
Do we have enough Systems Analysts or too many programmers?
By:
Tim Brycel
Businessl
Feb 08, 2011
High-Speed Rail: Make Work Projects?
It may be good for today, but what about tomorrow?
By:
Tim Brycel
News and Societyl
Feb 07, 2011
Is the Tea Party losing momentum?
Have they gone home or are they plotting their next move?
By:
Tim Brycel
News and Societyl
Feb 01, 2011
The effect of technology on our stress levels.
By:
Tim Brycel
Technology>
Electronicsl
Jan 31, 2011
Why we hate to be called for duty.
By:
Tim Brycel
Law>
National, State, Locall
Jan 27, 2011
Add new Comment
Your Name: *
Your Email:
Comment Body: *
Verification code:*
* Required fields
Submit
Your Articles Here
It’s Free and easy
Sign Up Today
Author Navigation
My Home
Publish Article
View/Edit Articles
View/Edit Q&A
Edit your Account
Manage Authors
Statistics Page
Personal RSS Builder
My Home
Edit your Account
Update Profile
View/Edit Q&A
Publish Article
Author Box
Tim Bryce has 243 articles online
Articles Categories
All Categories
Advertising
Arts & Entertainment
Automotive
Beauty
Business
Careers
Computers
Education
Finance
Food and Beverage
Health
Hobbies
Home and Family
Home Improvement
Internet
Law
Marketing
News and Society
Relationships
Self Improvement
Shopping
Spirituality
Sports and Fitness
Technology
Travel
Writing
Computer Forensics
Computer Games
Data Recovery
Databases
E-Learning
File Types
Hardware
Information Technology
Intra-net
Laptops
Networks
Operating Systems
Programming
Security
Software
]]>
Need Help?
Contact Us
FAQ
Submit Articles
Editorial Guidelines
Blog
Site Links
Recent Articles
Top Authors
Top Articles
Find Articles
Site Map
Mobile Version
Webmasters
RSS Builder
RSS
Link to Us
Business Info
Advertising
Use of this web site constitutes acceptance of the Terms Of Use and Privacy Policy | User published content is licensed under a Creative Commons License.
Copyright © 2005-2011 Free Articles by ArticlesBase.com, All rights reserved.
Tim Bryce is the Managing Director of M. Bryce & Associates (MBA) of Palm Harbor, Florida, a management consulting firm specializing in Information Resource Management (IRM). Mr. Bryce has over 30 years of experience in the field. He is available for training and consulting on an international basis. His corporate web page is at:
http://www.phmainstreet.com/mba/
He can be contacted at: timb001@phmainstreet.com
Copyright © 2006 MBA. All rights reserved.


