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 13 André van der Hoek & Alex Baker Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited. November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

2 © 2009 University of California, Irvine – André van der Hoek
Today’s Lecture Design rationale Design histories In-class design exercise No assignment Don’t mind the guy in the back with the video camera  November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

3 © 2009 University of California, Irvine – André van der Hoek
A Simple Question Why is a given design as it is? November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

4 © 2009 University of California, Irvine – André van der Hoek
A Difficult Answer Any design involves 100s if not 1000s of decisions that are tough to all remember Worse yet, any design involves 100s if not 1000s of discussions, considerations of alternatives, and reasons why certain choices are made, which are even tougher to all remember November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

5 Knowing Why Is A Crucial Need
Helps explain particular features to the customer Helps assist with coding Helps build a shared understanding of the design among a team of designers Helps guide maintenance and other design changes evolution roadblocks Helps reflect on one’s own design practices Evolution – keep going, need to know what I am building on Roadblocks – it didn’t work out as I envisioned, need to go back Just imagine me asking you going back to the Electronic Info Portal… November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

6 © 2009 University of California, Irvine – André van der Hoek
Sketchbooks Note: lots of alternatives, though not much rationale here… Not surprising, given one designer, small objective, physical nature, etc. Can remember, easily. And customer, in some sense, picks. November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

7 © 2009 University of California, Irvine – André van der Hoek
Sketchbooks Now look at this: LOTS of annotations. Clearly, the project is more complex, more considerations, larger scale, have to do more than just externalize the visions that I have, I have to also commit to paper the things I need to remember for later as to why things are as they are. This is called design rationale. Given how little we sketch in software, however, much of this tends to disappear. Designers in other disciplines hang on to their design sketchbooks for dear life. We throw stuff away. November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

8 © 2009 University of California, Irvine – André van der Hoek
Sketchbooks And note now we have sequences (returning us back to SW) – not all with notes, but look on left! So not just individual states, but also entire sequences of design decisions that we need to motivate. Things play out over time. November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

9 © 2009 University of California, Irvine – André van der Hoek
Software Sketchbooks If they exist, they tend to be text, text, text, text, text, … Maybe an architecture diagram but with more text! Maybe UML November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

10 © 2009 University of California, Irvine – André van der Hoek
Design Rationale “Design rationale is focused on capturing a historical record of the analysis that led to the choice of a particular artifact or feature in question, and in the most general sense is an explanation of why something is designed the way it is” “Design rationale involves explicit capture of the design decisions that shaped a particular software system, or ‘know-why’ knowledge” November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

11 © 2009 University of California, Irvine – André van der Hoek
Design Rationale Descriptive retroactive aims to communicate a design’s intent Prescriptive in-the-moment aims to improve the design process November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

12 © 2009 University of California, Irvine – André van der Hoek
IBIS November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

13 © 2009 University of California, Irvine – André van der Hoek
gIBIS November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

14 © 2009 University of California, Irvine – André van der Hoek
Modern Variant November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

15 © 2009 University of California, Irvine – André van der Hoek
SAAMPlayer November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

16 © 2009 University of California, Irvine – André van der Hoek
Design Histories Expand on design rationale by capturing design processes as they occur over time, as most design does not take place in a single meeting More focused on description than prescription to date November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

17 © 2009 University of California, Irvine – André van der Hoek
ADDSS November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

18 © 2009 University of California, Irvine – André van der Hoek
Alex’ Homegrown November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

19 © 2009 University of California, Irvine – André van der Hoek
Automation? November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

20 © 2009 University of California, Irvine – André van der Hoek
Automation? November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek

21 In-Class Design Exercise
Collectively, using the tablets and Calico, design a history representation that you will use for the next assignment André will lead the discussion using his tablet, as projected on the other screens Use your tablets to support your verbal contributions, annotate our design in progress, develop another idea in parallel, etc. November 29, 2018 – 06:52:47 © 2009 University of California, Irvine – André van der Hoek


Download ppt "Informatics 121 Software Design I"

Similar presentations


Ads by Google