informatics 121 software design i

21
Department of Informatics, UC Irvine SDCL Collaboration Laboratory Software Design and sdcl.ics.uci.edu 1 Informatics 121 Software Design I Lecture 7 Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited.

Upload: zagiri

Post on 06-Feb-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Informatics 121 Software Design I. Lecture 7 Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited. Today’s lecture. Design essence and tradeoffs Design studio 2 (video analysis). Informatics 121 definition. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 1

Informatics 121Software Design I

Lecture 7

Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited.

Page 2: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 2

Today’s lecture

• Design essence and tradeoffs

• Design studio 2 (video analysis)

Page 3: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 3

Informatics 121 definition

• To decide upon a plan for change in the world that, when realized, satisfies stakeholders

Page 4: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 4

Design

designer plan

maker change in the world

audience experiences

other stakeholders

Page 5: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 5

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

Page 6: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 6

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

desirability

feasibility

Page 7: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 7

Difficulty #1: problem, solution, change

• The understanding of a design problem goes hand-in-hand with the understanding of its design solution

• This understanding may well change, sometimes dramatically so, during the design project

• The challenge is to anticipate this volatility and identify and focus on the essence of the design problem at hand

Page 8: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 8

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

Page 9: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 9

Difficulty #2: success, failure, tradeoffs

• A design’s success is not absolute, but judged relative to other possible designs that could have been made

• A designer must deal with tradeoffs all the time, and cannot make all stakeholders equally satisfied with the change in the world

• The challenge is to identify and address key tradeoffs early

Page 10: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 10

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

Page 11: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 11

Difficulty #3: quality, cost, time

• There is no optimal solution to a design problem, designers must find a solution that is good enough

• The challenge is to find key quality and cost considerations early

Page 12: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 12

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

Page 13: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 13

Difficulty #4: longevity

• A change in the world may last for a very long time…

• …and may well need to accommodate future changes in the world

• The challenge is to identify and balance present needs with future possibilities

Page 14: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 14

Four types of design

satisfactory experience

plan for realization

change in the world

what is it to accomplish?

how does one interact with it?

what is its conceptual core?

what are its implementation details?

Page 15: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 15

Focus on essence and tradeoffs

• Thou shall focus on the difficult parts first

• Thou shall focus on the difficult parts second

• Thou shall focus on the difficult parts third

• …

Page 16: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 16

Focus on essence and tradeoffs

• Thou shall focus on the difficult parts first

• Thou shall focus on the difficult parts second

• Thou shall focus on the difficult parts third

• …

• What are the most important decision points, what are your options, and how do the options relate?

Page 17: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 17

Essence and tradeoffs

• Virtual campus visit

• Disney electronic queue management system

• Electronic health records system

• Mars planetary rover software

• Google Mail

• Google Docs

Page 18: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 18

Design studio 2

• Design an educational traffic flow simulation program

• A 2-page briefing is provided, listing the main requirements for the system

• You will produce the design over a number of weeks, through a variety of structured exercises and arguments

• This will be an individual assignment, with group exercises worked in

Page 19: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 19

Design studio 2

• This exact same design prompt was given to professional software designers– 1 hour and 50 minutes at the regular whiteboard

Page 20: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 20

Design studio 2

• Watch the video, carefully

• Identify…– …five decision points that the designers encountered– …the options they considered– …any relationships among the options– …mark the time(s) when these decisions points are discussed

• Focus on essence and tradeoffs

Page 21: Informatics 121 Software Design I

Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and

sdcl.ics.uci.edu 21

Design studio 2

• Hand in a document, at the beginning of class, Monday

• Bring two copies