Informatics 121 Software Design I Lecture 2 Duplication

  • Slides: 20
Download presentation
Informatics 121 Software Design I Lecture 2 Duplication of course material for any commercial

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

Announcements • No discussion Friday • TA office hours have been set • Design

Announcements • No discussion Friday • TA office hours have been set • Design studio 1 comes out on Tuesday SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 2

Today • Defining design • Defining software design • Two fundamental challenges SDCL Software

Today • Defining design • Defining software design • Two fundamental challenges SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 3

Defining design • Decision making, in the face of uncertainty, with high penalties for

Defining design • Decision making, in the face of uncertainty, with high penalties for error • To choose things we use shall look as they do • A creative activity—it involves bringing into being something new and useful that has not existed previously • Relating product with situation to give satisfaction • The imaginative jump from present facts to future possibilities • To form a plan or scheme of, to arrange or conceive in the mind, … for later execution SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 4

Defining design • To initiate change in man-made things • To plan or intend

Defining design • To initiate change in man-made things • To plan or intend for a purpose • To work out a solution in one’s mind • The transition from possible solutions to a specific one • … SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 5

Three themes 1. Design focuses on identifying a novel envisioned future 2. Design involves

Three themes 1. Design focuses on identifying a novel envisioned future 2. Design involves deliberate decision making and planning; it is not simply acting out of impulse 3. Design decisions are consequential: there are stakeholders who must be satisfied with the result SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 6

Our definition To decide upon a plan for a novel change in the world

Our definition To decide upon a plan for a novel change in the world that, when realized, satisfies stakeholders SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 7

Design designer plan maker change in the world audience experiences other stakeholders [stakeholders =

Design designer plan maker change in the world audience experiences other stakeholders [stakeholders = audience + other stakeholders] SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 8

Design a luxury airplane SDCL designer plan maker change in the world audience experiences

Design a luxury airplane SDCL designer plan maker change in the world audience experiences Software Design and Collaboration Laboratory Department of Informatics, UC Irvine other stakeholders sdcl. ics. uci. edu 9

Design a library SDCL designer plan maker change in the world audience experiences Software

Design a library SDCL designer plan maker change in the world audience experiences Software Design and Collaboration Laboratory Department of Informatics, UC Irvine other stakeholders sdcl. ics. uci. edu 10

Design an award SDCL designer plan maker change in the world audience experiences Software

Design an award SDCL designer plan maker change in the world audience experiences Software Design and Collaboration Laboratory Department of Informatics, UC Irvine other stakeholders sdcl. ics. uci. edu 11

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design Chip design Car design Urban design Product design Interior design … Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 12

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design Chip design Car design Urban design Product design Interior design … Software Design and Collaboration Laboratory • • • Writing Painting Sculpting Music composition … Department of Informatics, UC Irvine sdcl. ics. uci. edu 13

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design

Design fields • • • SDCL Architecture design Graphic design Fashion design Game design Chip design Car design Urban design Product design Interior design … Software Design and Collaboration Laboratory • • • Writing Painting Sculpting Music composition … • Software design Department of Informatics, UC Irvine sdcl. ics. uci. edu 14

Design SDCL designer plan maker change in the world audience experiences Software Design and

Design SDCL designer plan maker change in the world audience experiences Software Design and Collaboration Laboratory Department of Informatics, UC Irvine other stakeholders sdcl. ics. uci. edu 15

Software design SDCL designer plan maker change in the world audience experiences Software Design

Software design SDCL designer plan maker change in the world audience experiences Software Design and Collaboration Laboratory Department of Informatics, UC Irvine other stakeholders sdcl. ics. uci. edu 16

Software design software designer source code compiler* runnable program users experiences other stakeholders [*

Software design software designer source code compiler* runnable program users experiences other stakeholders [* or, at times, the person who installs and configures the software instead of the compiler] SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 17

Two fundamental challenges • The nature of software • The nature of people SDCL

Two fundamental challenges • The nature of software • The nature of people SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 18

Nature of software (Brooks) • Complexity – software is among the most complex people-made

Nature of software (Brooks) • Complexity – software is among the most complex people-made artifacts • Conformity – software has no laws of nature that simplify its existence; rather, it lives in a world of designed artifacts to which it must conform • Changeability – software is subject to continuous pressure to change • Invisibility – because the reality of software is not embedded into space, it is inherently unvisualizable SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 19

Nature of people • Diversity – people differ in how they experience the world

Nature of people • Diversity – people differ in how they experience the world • Indiscernibility – experiences are distinctly mental in nature, with tangible reactions and signs not always matching the actual experience • Familiarity – people tend to be risk averse, sticking to role, organizational, and societal norms and values • Volatility – with every new exposure, people reinterpret and modify their opinions and expectations SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 20