Software Design I Lecture 3 Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited Discussion There will be discussion ID: 262494
Download Presentation The PPT/PDF document "Informatics 121" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Informatics 121Software Design I
Lecture
3
Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited.Slide2
Discussion
There
will
be discussion
next Monday
and
Wednesday
Please join your designated discussionSlide3
Today
Defining design
Feasibility and desirability
Four types of
design
Design cycleSlide4
Our definition
To decide upon a plan for a novel change in the world
that,
when
realized, satisfies
stakeholdersSlide5
Design
designer
plan
maker
change in the world
audience
experiences
other stakeholdersSlide6
Software design
software designer
s
ource code
c
ompiler
*
runnable program
users
experiences
other stakeholders
[
*
or, at times, the person who installs and configures the software instead of the compiler]Slide7
Feasibility and desirability
designer
plan
maker
audience
experiences
other stakeholders
feasibility
change in the worldSlide8
Feasibility and desirability
designer
plan
maker
change in the world
audience
other stakeholders
desirability
experiences
feasibilitySlide9
Four types of design
desirability
feasibility
what is it to accomplish?
how does one interact with it?
what is its conceptual core?
what are its implementation details?Slide10
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?Slide11
Four types of software 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?
a
pplication design
interaction design
architecture design
i
mplementation designSlide12
Design an instant message system
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?
a
pplication design
interaction design
architecture design
i
mplementation designSlide13
Design a word processor
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?
a
pplication design
interaction design
architecture design
i
mplementation designSlide14
Design problem and solution
design problem
design solutionSlide15
Design project
design problem
design solution
design projectSlide16
Design cycle
analyze
evaluate
synthesizeSlide17
Design cycle
analyze
evaluate
synthesize
goals
constraints
assumptions
decisions
ideasSlide18
Goals
A goal represents an explicit acknowledgment of a desired result that the eventual design solution must achieve
Goals may be suggested by any of the stakeholders
c
lient
o
ther stakeholders
audience
designer
Goals change over time, and may or may not be (partially) addressed by the current state of the design solutionSlide19
Example goals
The luxury airplane must be 10% more fuel-efficient than its predecessor
The library must be able to hold 250,000 books
The award must be representative of the professional society that is commissioning itSlide20
Constraints
A constraint represents an explicit acknowledgment of a condition that restricts the design project
Constraints may be suggested by any of the stakeholders
client
other stakeholders
audience
designer
Constraints change over time, and may or may not be (partially) met by the current state of the design projectSlide21
Example constraints
The luxury airplane must weigh less than 50,000 pounds
The library must not violate federal disability laws
The award must cost less than $1000 to produceSlide22
Assumptions
An assumption represents a fact that is taken for granted, may or may not be true, and influences the design project
Assumptions may be made by any of
the stakeholders
client
other stakeholders
audience
designer
Assumptions change
over time, and may or may not be (partially)
fulfilled by the current state of the design projectSlide23
Example assumptions
The average person weighs 85 kilograms
The library needs to serve the community with an area stocked with personal computers
The professional society’s logo is red and white, which therefore must be its preferred colors for the awardSlide24
Decisions
A decision represents a specific choice of how to further the design solution, typically after some amount of consideration
Decisions are the sole responsibility of the designer, though they can be (heavily) influenced by other stakeholders
Decisions change
over time, and
new decisions may
or may not
(
partially) align with the current state of the design
projectSlide25
Example decisions
The fuselage and wings of the luxury airplane shall be made out of carbon composites
The library shall have bookshelves that are not movable
The award shall be made out of colored glassSlide26
Idea
An idea represents a thought or opinion, ranging from highly unformed to fully formed, that potentially shapes the design solution
Ideas typically are the sole responsibility of the designer
, though they
may be inspired by many different sources
Ideas change over time, and new ideas may or may not (partially) align with the current state of the design projectSlide27
Example ideas
What if the luxury airplane had a shower on board?
Perhaps the library membership cards should have RFID tags, so a visitor can simply grab the books they want, walk by an automated scanner, and have their books be on loan
I am thinking that the award should be a variant of last year’s awardSlide28
Design an instant message system
analyze
evaluate
synthesize
goals
constraints
assumptions
decisions
ideasSlide29
Design a word processor
analyze
evaluate
synthesize
goals
constraints
assumptions
decisions
ideasSlide30
Design the software to fly a drone
analyze
evaluate
synthesize
goals
constraints
assumptions
decisions
ideasSlide31
Design studio 1
Your client is
massbroadcast.com
, a new
company
that
seeks to enable organizations to reach out to a broad audience with a pre-determined message – via phone, text, instant message, Hangouts, Skype, and other media. The company plans to make money from clients who seek to advertise their products. Being altruistic, however, the company also wants to offer support for emergency alerts. The company
has sought you out, because you are an excellent
designer. All
of the software design is in your
hands.Slide32
Design studio 1
Identify the
audience and
other stakeholders
Identify possible goals, constraints, and assumptions
Bring
two
printed copies to discussion,
Monday or Wednesday
one for the TAs
one for your groupYour group will be announced at the start of
your discussion