Presentation is loading. Please wait.

Presentation is loading. Please wait.

Informatics 121 Software Design I

Similar presentations


Presentation on theme: "Informatics 121 Software Design I"— Presentation transcript:

1 Informatics 121 Software Design I
Lecture 5 André van der Hoek Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited. April 22, 2019 – 19:53:59 (c) 2007 University of California, Irvine – André van der Hoek

2 © 2007 University of California, Irvine – André van der Hoek
Today’s Lecture Using the Product / Process framework April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

3 Product / Process Framework
activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

4 © 2007 University of California, Irvine – André van der Hoek
Product C = conceivable F = feasible D = desirable SP = still possible design space C C C F D outcome space SP D designer project customer A design product is a point in the design space that represents a set of decisions that together delineate a set of possible outcomes in the outcome space April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

5 © 2007 University of California, Irvine – André van der Hoek
Product C = conceivable F = feasible D = desirable SP = still possible design space C C C F F D D outcome space D D designer project customer A successful design product restricts the set of still possible outcomes to those that are both feasible and desirable April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

6 © 2007 University of California, Irvine – André van der Hoek
Process activities goals (languages) knowledge (languages) ideas (languages) representations (languages) tools The design process is defined as the set of information manipulation activities through which a successful design is obtained April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

7 Teams, Stakeholders, and Community
activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) Information exchange among multiple people takes place as communication through shared representations April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

8 Understanding Unique Nature of Software #1
activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools design space C C C F D SP outcomes D designer project customer Large space of feasibility April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

9 Understanding Unique Nature of Software #2
goals (langs) knowledge (langs) design space activities C C C F F D SP tools outcomes D designer project customer ideas (langs) representations (langs) Goal specificity April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

10 Understanding Unique Nature of Software #2’
goals (langs) knowledge (langs) design space activities C C C F F D SP D tools outcomes designer project customer ideas (langs) representations (langs) Goal absence April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

11 Understanding Unique Nature of Software #3
goals (langs) knowledge (langs) design space activities C C C F F D SP tools outcomes D designer project customer ideas (langs) representations (langs) Language gap April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

12 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

13 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

14 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

15 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

16 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

17 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

18 © 2007 University of California, Irvine – André van der Hoek
Let’s Brainstorm Some activities goals (langs) knowledge (langs) ideas (langs) tools goals (langs) representations (langs) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

19 © 2007 University of California, Irvine – André van der Hoek
Roles A goal constrains desirable outcomes A goal guides generation of ideas Knowledge informs outcome feasibility Knowledge informs outcome desirability Knowledge guides generation/evaluation of ideas Knowledge guides creation of representations Ideas constrain still possible outcomes Ideas shift goals Ideas build knowledge Representations record personalized information Representations communicate information Don’t read these, but skip over them selectively to give a taste – they are just all here to give a feel for the breadth of our feelings on this matter April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

20 information manipulation
Roles activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP information manipulation corresponds to April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

21 © 2007 University of California, Irvine – André van der Hoek
Tensions activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

22 © 2007 University of California, Irvine – André van der Hoek
Tensions activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

23 © 2007 University of California, Irvine – André van der Hoek
Tensions activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

24 © 2007 University of California, Irvine – André van der Hoek
Tensions activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

25 © 2007 University of California, Irvine – André van der Hoek
Roles and Tensions activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

26 © 2007 University of California, Irvine – André van der Hoek
Design Theories Pure thought Reflective conversation with materials Divergence, transformation, convergence Team communication Community building Objectives, expectations, and success April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

27 © 2007 University of California, Irvine – André van der Hoek
Pure Thought activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

28 © 2007 University of California, Irvine – André van der Hoek
Pure Thought The mental generation, organization, and manipulation of ideas underlies all other design activities often subconscious Guided by: knowledge of the individual designer goals to be addressed Primarily is about idea generation may involve building knowledge may involve shifting goals April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

29 Reflective Conversation with Materials
activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

30 Reflective Conversation with Materials
“Create a representation, observe it, and gain an understanding” some design decisions have very unpredictable results “try and see” “Flow” – perform this cycle without explicitly taking the steps “in the zone” Tools can be a major help or hindrance Software often gives poor feedback unpredictability of UML opaqueness of code disconnectedness of prototypes April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

31 Divergence, Transformation, Convergence
activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

32 Divergence, Transformation, Convergence
John-Chris Jones says that design is: divergence: problem understanding, creativity, idea generation transformation: organization, understanding, combination convergence: analysis and selection of alternatives Many ways that these steps can be arranged Software lacks divergence: steeped in existing approaches Tools can be a major help or hindrance Software convergence is tough what ways do we have to evaluate a software design? April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

33 © 2007 University of California, Irvine – André van der Hoek
Team Communication activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

34 © 2007 University of California, Irvine – André van der Hoek
Team Communication Team communication involves ensuring that an intended interpretation of a representation is its actual interpretation my ideas as written down become your ideas as read (or not) my goals are written down become your goals as read (or not) my knowledge as written down becomes your knowledge as read (or not) How much context do you and your fellow designers share? Language is a key factor in effective communication This is especially difficult in software high complexity great amount of detail great variation between projects ever-changing landscape of tools, languages, etc. April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

35 © 2007 University of California, Irvine – André van der Hoek
Community Building activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

36 © 2007 University of California, Irvine – André van der Hoek
Community Building The process of gathering and disseminating general wisdom education publications experience Software is somewhat unique disparate projects changing tools hidden design decisions secrecy among developers many advances are in programming languages Hidden design decisions: compared to architecture, products – we can study good examples of good design in other fields, not so much in software. We can’t really appreciate how well designed bittorrent, winamp, whatever is – except on an architectural or UI level April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

37 Objectives, Expectations, and Success
activities goals (langs) knowledge (langs) ideas (langs) representations (langs) tools designer project customer outcomes design space C D F SP C April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

38 Objectives, Expectations, and Success
A successful design product restricts the set of still possible outcomes to those that are both feasible and desirable ideas faithfully capture my knowledge of feasibility and desirability ideas faithfully capture my (and my customer’s) goals of desirability But this design product must be communicated representation must faithfully capture my ideas my representation must be “communicatable” (see slides 33 and 34) April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

39 © 2007 University of California, Irvine – André van der Hoek
To Summarize The Product/Process framework precisely defines and describes design in general (and thus software design too) the product part sets objectives for design the process part describes how to achieve these objectives Different types of information have different roles Different roles may be in tension with one another Design theory helps to bring to light different, higher-level aspects of design Why did we tell you all this? We want you to be an enlightened designer, one who not only knows what they practice, but also knows how to improve their practice! April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek

40 © 2007 University of California, Irvine – André van der Hoek
Fifth Assignment Read “The Reflective Practitioner” by Donald Schön chapter 3 “A Reflective Conversation with the Situation” if you want to read more, of course you can read more available on the class web site Provide a 1 page summary with what you consider are the major lessons to learn from this text and how these lessons relate to the various design exercises we performed in class Thursday April 22, 2019 – 19:53:59 © 2007 University of California, Irvine – André van der Hoek


Download ppt "Informatics 121 Software Design I"

Similar presentations


Ads by Google