26
Normal

Normal - University of Waterloo

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Normal - University of Waterloo

Normal

Page 2: Normal - University of Waterloo

Normal Radical

A Spectrum of Engineering Design

Page 3: Normal - University of Waterloo

Normal Radical

A Spectrum of Engineering Design

Page 4: Normal - University of Waterloo

Characterizing the Spectrum

Normal

• ?

Radical

• ?

Page 5: Normal - University of Waterloo

Characterizing the Spectrum

Normal

• expect to work in a wide variety of well-understood cases

Radical

• hope it works in 3 cases

Page 6: Normal - University of Waterloo

Characterizing the Spectrum

Normal

• reduced risk

• reduced cost

• easier communication

• easier maintenance

• shorter development time

Radical

• innovation is expensive and time consuming

• harder requirements elicitation

• harder verification

Page 7: Normal - University of Waterloo

Sez who?

• Michael A. JacksonThe Name & Nature of Software Engineering

• Walter G. VincentiWhat Engineers Know and How They Know It

• Edward W. ConstantThe Origins of The TurboJet Revolution

Page 8: Normal - University of Waterloo

A Space of Engineering Design

Normal

Radical

composition

com

pone

nts

Page 9: Normal - University of Waterloo

SE2 is about normal modes of composition.

Most of the other courses that you’ve taken so farhave been about normal components: e.g.,

databases, compilers, operating systems, etc.(or basic skills, e.g. math)

Page 10: Normal - University of Waterloo

There are two ways of constructing a software design.

• One way is to make it so simple that there are obviously no deficiencies.

• And the other way is to make it so complicated that there are no obvious deficiencies.

C.A.R. HoareTuring Award Speech, 1980

Page 11: Normal - University of Waterloo

Design DisciplinesPart II

Page 12: Normal - University of Waterloo

Is there something common amongst the design disciplines?

Page 13: Normal - University of Waterloo

IDEO

Page 14: Normal - University of Waterloo

Conceptual

PhysicalH

um

an

Tech

nica

l

Page 15: Normal - University of Waterloo

Conceptual

PhysicalH

um

an

Tech

nica

l

Industrial

Graphic

Web

Interaction

H.C.I.

Ergo. Process E.

Mech. E.

Physics

CSHardware E.

Software E.

Page 16: Normal - University of Waterloo

Definitions

• The fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution.

• A plan for arranging elements in such a way as to best accomplish a particular purpose.

Page 17: Normal - University of Waterloo

Design ProcessPart III

Page 18: Normal - University of Waterloo

The Design Process

1. Ideation

2. Analysis

3. Selection

4. Elaboration

Iterate

Page 19: Normal - University of Waterloo

How to get new ideas?

• try a different architectural style

• relax a constraint

• change the technology

• re-imagine the problem

• draw inspiration from another problem/soln

• try a different point on the Pareto-front

Page 20: Normal - University of Waterloo

Criteria for Analysis

• Fitness for Purpose

• Fitness for Future

• Production Cost

• Operating Cost

Page 21: Normal - University of Waterloo

Characterizing Fitness for Purpose

• Absence of deadlocks

• ACID

• Book checked out by at most one patron

• Linked-list is acyclic

• etc.

Page 22: Normal - University of Waterloo

Analyzing Fitness for Purpose

• Other engineering disciplines use math.

• We can use it too!

• Model-checking

• Queuing theory

• etc.

Page 23: Normal - University of Waterloo

Comparative Analysis

Page 24: Normal - University of Waterloo

Comparative Analysis

Spee

d

Cost

dominatedsolutions

Page 25: Normal - University of Waterloo

The Pareto Front

• The set of non-dominated solutions/designs.

• aka Pareto-Optimal, Pareto-Efficient designs

• N.B.:

• the design space is partially ordered

• not totally ordered!

Page 26: Normal - University of Waterloo

Summary

• Normal vs Radical Design

• Commonalities amongst Design Disciplines

• The Design Process

• Ideation

• Single Design Analysis: Fitness for Purpose

• Comparative Design Analysis: Pareto Front

math!

math!

crea

tivity