george blank university lecturer. good design still an art practiced by craftsmen, not an...

Post on 23-Dec-2015

228 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Good Design

Still an art practiced by craftsmen, not an engineering discipline

Some Designs are Classics

Question:

• How do you recognize a great design?

Answer:

• All your competitors file for bankruptcy because you took away all of their customers.

So what?

• How do you design great software? Very few software designers even think about driving competitors out of business when they design software.

A really stupid idea

• When I first studied systems analysis about 1980, many “authorities” recommended that you begin by modeling the existing system.

• That is almost the worst possible way to design a system, especially in those days when computers were essentially automating existing manual systems.

Why is that stupid?

• Modeling the existing system almost guarantees that you will reproduce the existing system with some automation.

• For example, you will probably keep some activities that are unnecessary in an automated system just because they were necessary in a manual system. Your system will be inefficient and overstaffed.

• You will tend to keep all the problems of the old system and introduce new problems as well!

Example of saving the oldThe mechanism that opens a car window was designed to be operated by a hand crank at a comfortable position for a person seated in the car. It is unnecessarily complex due to its off center location and the need to obtain leverage.

Power windows

• Most car manufacturers just put a motor where the crank was. But that required extra power, extra weight, and a stronger lever that was prone to failure.

A Better Design?

• With a straight toothed lever, you could use a smaller motor, save weight, save money, use less leverage, and have more reliability and better gas mileage. By saving 10 pounds per car, you could save the equivalent of one car for every 350 cars made.

Actual Power Window Types

Examples from Italian Manufacturer ElectricLife Windows

Scissors type Cable type Bowden type

Optimization

• In a competitive economy, over time inefficient practices tend to be eliminated as business finds better (more profitable) ways to do the same things. Businesses that use the older ways tend to go broke.

• But all systems can only be optimized around present resources. A good new resource, such as a computer, always changes the optimal strategy.

Disintermediation

• Most of the productivity gains from computers have come from disintermediation. That is a fancy term that basically means “cutting out the middleman.”

• A computer is primarily a communications tool. Efficient communication allows us to avoid unnecessary tasks and costs.

Example

• Most large companies have flattened their hierarchies since automation, getting rid of middle managers.

• The two primary tasks of middle management were to gather information from subordinates to pass on to upper management and to communicate the policies of upper management to the workers. If communication is automated, fewer people need to do it.

• That is disintermediation.

Another example

• Small merchants are not as efficient as (good) large merchants. They can not get big discounts by ordering in truckload quantities. They survive on convenience and lack of price competition.

• Around 1970, large malls started to be built all around the United States. Whenever a new mall was built, many small merchants were driven out of business.

• In smaller towns, Wal-Mart had the same effect.

Knowledge is power• Merchants survive by charging more for goods

than they pay for them. It is to their advantage to reduce your ability to know their costs and to shop around and see what their competitors are charging.

• The Internet has changed the nature of an auto dealership. Now most new car customers know what they want and how much it will cost the dealer before they buy the car. Now car dealers have to make their money where the customer lacks knowledge, on trade-in values, used cars, and the service and parts departments.

Brokers are hurting

• A broker is in the business of bringing buyers and sellers together. Where there are efficient communications that allow buyers and sellers to find each other without brokers, brokers have to become much more efficient to survive.

• Travel agencies are in trouble, because most airline tickets are now sold direct. Since the airlines no longer need the agencies, they have reduced or eliminated commissions.

And your point is?

• Newspapers are threatened by the Internet. Craig’s List alone probably reduces newspaper classified ad revenues by $50 million a year.

• All of these are examples of disintermediation. If disintermediation is a large part of the benefit of automation, shouldn’t designers think about it every time they design a system?

Goal driven systems

• A best practice in software development is to focus on stakeholder goals instead of the functions or activities to be performed by a system.

• In essence, focusing on goals allows us to avoid reproducing functions that are not necessary to reach those goals. (More disintermediation!)

What goals?

• There are three basic types of customers in the economy.

• Business• Consumers• Government• Each type has different goals.

Business Goals

• Business has the following goals:– More Profit– Lower Costs– Growth (in size, value, market share,

pricing power)– Reduction in competition (buy them or

drive them out of business)

Consumer Goals

• Consumers want– Economy (lower prices)– Convenience (less time)– Reliability (no hassles)– Status (style and perceived quality)– Pleasure (sex, drugs, and music?)

Government goals

• People in power tend to have the primary goal of remaining in power.

• While they are happy to pass laws that benefit special interests and grant monopolies in return for campaign contributions, they are aware that the customers of government are business and consumers, so they have to meet some business and consumer goals if voters hold them accountable.

Government example• My water and sewer bill is an example of the

difference in government. It is the only bill I get that does not have a return envelope. The town doesn’t have to worry about customer convenience. If your payment is late, they add a fine to your next bill.

• I had a septic system. When the town put in sewers, I had to pay a sewer assessment, pay for a plumber to hook me up, and then pay every month for service. Each of those items cost thousands of dollars, and I had no choice unless I wanted to sell my house and move to another town.

Fitness for a purpose

• Software development process is about controlling the three basic risks of time (late delivery), cost (over budget) and quality (not meeting requirements).

• One of the most appropriate definitions of quality comes from Philip Crosby— “quality is fitness for a purpose.” In other words, quality is defined by your goals.

Case Study - Automobiles

• We have had many great cars in the past. They include the Stutz Bearcat, the Austin Boat-tail Speedster, the Packard Limousine, the Duisenberg Model J, and the Studebaker Golden Hawk. I deliberately chose examples from companies that are no longer in business. Unfortunately, a great company needs more than an occasional great product to survive.

What makes a great car?

• Most of those car models had good styling and good technology for their period. But consider these examples of quality from the standpoint of fitness for a purpose.– Tata Nano– The Ford Taurus and Buick Century– Mercedes and Rolls Royce

• I imagine most people would only think of the last group as representing quality.

Tata Nano

• How can the world’s cheapest car serve as an example of quality? If we look at quality as fitness for a purpose, this car was designed very well and with a great deal of innovation to be purchased by someone who otherwise could not afford a car.

• If your choice is between trying to carry your family on a motorbike and being able to ride in a car, that is a big difference in quality!

Taurus and Century

• These cars have embarrassed more teenage boys than any others, as they borrowed the family car to go on a date. They are average, very ordinary, family cars, with nothing exciting about their styling. But precisely because they tended to fit the needs of many families, they are two of the best selling car models in Detroit’s history.

• That is fitness for a purpose.

Rolls Royce and Mercedes

• These cars were built to burn money, not gas.• Mercedes has a high reliability record because

dealers are trained to replace parts before they fail. This results in very high service costs.

• But if your objective is to impress the neighbors (or your girlfriend) and demonstrate that you are financially well off, these cars were designed to be fit for your purpose.

And your point is?

• If quality is fitness for a purpose, we must design systems to meet the goals of the stakeholders.

• That is one of the primary reasons why designing around functions instead of goals can lead to disaster.

Example of a quality design

Inventory Case Study

Case study: Inventory

• Inventory is expensive. If your store has merchandise that will not be sold today, you need to pay rent on a bigger store, you may need to maintain an expensive warehouse, you need to tie up working capital to finance the goods, and the goods deteriorate, get damaged or stolen, and become obsolete or go out of style.

Inventory goals

• Why do stores have inventory?• They want to make sales, and they have

found that most customers will go elsewhere rather than special ordering merchandise.

• They also want to buy cheap and sell at a profit. To do that, they need discounts for buying in quantity.

Traditional Inventory

• Traditional inventory is based on economic order quantity (EOQ). That is an approach that minimizes financing costs, storage costs, shipping costs, reordering costs and lost sales from being out of stock while maximizing manufacturer discounts.

• In traditional inventory, customers and suppliers have opposite goals. Customers want small orders and big discounts. Manufacturers want big orders and small discounts.

Fundamental Problems

• In addition to the contention between opposing goals of customer and supplier, there are three fundamental inventory problems:

• Out of stock. If you don’t have what the customer wants, they go elsewhere.

• Overstock. If you order things that don’t sell, you may have to sell them at a loss.

• Carrying costs. The costs of owning inventory.

Goal congruence• These three problems are actually problems for

both customer and supplier.• If you are out of stock, the sale might go not only

to your competitor, but also to the competitor of your supplier.

• If you are overstocked, you are less likely to purchase from that supplier in the future.

• If you are carrying inventory, your supplier needs to keep an inventory to resupply you.

• In these items, customer and supplier have the same goals.

Effect on system design

• Wal-Mart designed their inventory system around giving suppliers daily information on what was selling, and gave the suppliers the responsibility for restocking. Manufacturers no longer had to wait for orders, and could reduce their own inventories.

• K-Mart automated the traditional inventory based on EOQ.

• The result? K-Mart went bankrupt, and the children of Sam Walton became five of the ten richest people in the world.

Review Question

• How does Wal-Mart’s inventory process involve disintermediation?

Answer

• Obviously, automated reordering reduces work for buyers who would otherwise have to place orders and salespeople who would take them.

• But there are ripple effects throughout all the companies involved. For example, with daily sales by store, marketing departments can track the effects of advertising, promotions and repackaging without hiring analysts to gather the data.

More Best Practices

(besides disintermediation and focusing on goals)

Study the problem first

• Another best practice in design is to understand the problem before you attempt to design a solution.

• By focusing on the problem instead of a solution, you are more likely to come up with an elegant and innovative solution, and less likely to duplicate what already exists. After all, why duplicate the existing system—you already have it! Don’t pay for it a second time!

Defer decisions

• A best practice derived from understanding the problem is to defer decision making as late as possible in the design process.

• The later you make a decision that will affect the subsequent direction of the product, the more information you will have about the problem before you make the decision. That should result in a better solution.

Design Patterns

• When you find classic solutions to common problems, use them as templates to reduce errors and increase reliability.

Art, Science, and Engineering

• Art (Craftsmanship) is developing elegant and innovative solutions to problems.

• Science is a disciplined approach to discovering new information.

• Engineering is applying proven methods to a well structured problem.

• Systems analysis is a science. Software development is engineering. But system design is an art.

Not “Paint by numbers”• There was a time when it was popular to sell

“paintings” that consisted of line drawings with numbers inside each space, and corresponding paint sets where the colors matched the numbers. You painted the drawing and you had an “original artwork.” Naturally, the results were awful. It was embarrassing to see someone display their painting in the living room.

• Museums pay millions for art works by Da Vinci, Rembrandt, Van Gogh, and Renoir. They don’t display paint-by-number paintings.

And your point is…?

• You will not become a good designer by learning methods, UML drawings, and cookbook recipes for software development.

• Understanding disintermediation, focusing on goals, studying the problem before thinking about solutions, deferring decisions and seeking competitive advantage can help you avoid the pitfalls of bad design, but they cannot make you a good designer.

• Great design is a combination of creativity, inspiration, genius, hard work, and experience.

Review• Don’t model the current system• Remember Disintermediation• Focus on Goals• Fitness for a Purpose• Study the Problem before you think about a

solution• Defer decisions• Use good Design Patterns• Design as an artist, not a mechanic

top related