Informatics 121 Software Design I Lecture 11 Duplication

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

Informatics 121 Software Design I Lecture 11 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

Today’s lecture • Silent sticky notes SDCL Software Design and Collaboration Laboratory Department of

Today’s lecture • Silent sticky notes SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 2

Software design methods Application design Interaction design Architecture design Analysis • • • competitive

Software design methods Application design Interaction design Architecture design Analysis • • • competitive testing contextual inquiry feature comparison stakeholder analysis task analysis • • critical incident technique interaction logging personas scenarios • framework assessment • model-driven engineering • quality-functiondeployment • reverse engineering • world modeling Synthesis • • affinity diagramming concept mapping mind mapping morphological chart • • design/making participatory design prototyping storyboarding • • Evaluation • requirements review • role playing • wizard of oz • • cognitive walkthrough evaluative research heuristic evaluation think-aloud protocol • formal verification • simulation • weighted objectives SDCL Software Design and Collaboration Laboratory architectural styles generative programming component reuse decomposition Department of Informatics, UC Irvine Implementation design • • release planning summarization test-driven design visualization • • pair programming refactoring search software patterns • • correctness proofs inspections/reviews parallel deployment testing sdcl. ics. uci. edu 3

Software design methods Application design Interaction design Architecture design Analysis • • • competitive

Software design methods Application design Interaction design Architecture design Analysis • • • competitive testing contextual inquiry feature comparison stakeholder analysis task analysis • • critical incident technique interaction logging personas scenarios • framework assessment • model-driven engineering • quality-functiondeployment • reverse engineering • world modeling Synthesis • • affinity diagramming concept mapping mind mapping morphological chart • • design/making participatory design prototyping storyboarding • • Evaluation • requirements review • role playing • wizard of oz • • cognitive walkthrough evaluative research heuristic evaluation think-aloud protocol • formal verification • simulation • weighted objectives SDCL Software Design and Collaboration Laboratory architectural styles generative programming component reuse decomposition Department of Informatics, UC Irvine Implementation design • • release planning summarization test-driven design visualization • • pair programming refactoring search software patterns • • correctness proofs inspections/reviews parallel deployment testing sdcl. ics. uci. edu 4

Mind mapping • Mind mapping is the process of generating ideas and developing concepts

Mind mapping • Mind mapping is the process of generating ideas and developing concepts when the underlying relationships are unclear SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 5

Procedure • Identify the focus word or question • Free associate outward from the

Procedure • Identify the focus word or question • Free associate outward from the focus • Reorganize as needed • Annotate SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 6

Example: identify the focus word or question SDCL Software Design and Collaboration Laboratory Department

Example: identify the focus word or question SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 7

Example: free associate outward from the focus SDCL Software Design and Collaboration Laboratory Department

Example: free associate outward from the focus SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 8

Example: reorganize as needed SDCL Software Design and Collaboration Laboratory Department of Informatics, UC

Example: reorganize as needed SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 9

Example: annotate SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl.

Example: annotate SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 10

Typical notation: mind map SDCL Software Design and Collaboration Laboratory Department of Informatics, UC

Typical notation: mind map SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 11

Criteria for successful use • The designer must possess, or have access to people

Criteria for successful use • The designer must possess, or have access to people with, strong domain knowledge • Relies on early insight into the design problem, and what dimensions might matter • One should not dismiss ideas (generate first, consolidate later) • Collaborate SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 12

Strengths and weaknesses Strengths Weaknesses • Can be used for many different purposes •

Strengths and weaknesses Strengths Weaknesses • Can be used for many different purposes • Fluid representation suitable for tool use • Builds common understanding and language • Encourages idea generation • Can uncover ‘hidden’ relationships • Lightweight • May become too disconnected from reality • May become too unwieldy in size and complexity • Generation of ideas is restricted by the hierarchical form of representation • Requires a well-trained moderator SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 13

Variants • Concept mapping SDCL Software Design and Collaboration Laboratory Department of Informatics, UC

Variants • Concept mapping SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 14

Design studio 3 • Venture capitalist V has come to UC Irvine, seeking to

Design studio 3 • Venture capitalist V has come to UC Irvine, seeking to upstage the online note taking world • The venture capitalist knows that, rather than through her proposing the kind of app she wants, she is better served by running this as a competition and getting a broad range of ideas from which she then can choose • V is particularly interested in forward thinking apps; apps that will really make a difference 2 -5 years from now SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 15

Design studio 3 • Your team is tasked with designing a novel note taking,

Design studio 3 • Your team is tasked with designing a novel note taking, sharing, and organizing app that explicitly aims to upstage existing apps in this space SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 16

Today • Use the mind mapping design method through the use of silent sticky

Today • Use the mind mapping design method through the use of silent sticky notes SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 17

Design studio 3 continued • Hand in a document, at the beginning of class,

Design studio 3 continued • Hand in a document, at the beginning of class, December 3, containing your final design for the new note taking application • Team assignment • Bring one copy SDCL Software Design and Collaboration Laboratory Department of Informatics, UC Irvine sdcl. ics. uci. edu 18