Informatics 121 Software Design I
description
Transcript of Informatics 121 Software Design I
![Page 1: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/1.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 1
Informatics 121Software Design I
Lecture 11
Duplication of course material for any commercial purpose without the explicit written permission of the professor is prohibited.
![Page 2: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/2.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 2
Today’s lecture
• Silent sticky notes
![Page 3: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/3.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 3
Software design methods
Applicationdesign
Interactiondesign
Architecturedesign
Implementationdesign
Analysis • competitive testing• contextual inquiry• feature comparison• stakeholder analysis• task analysis
• critical incident technique• interaction logging• personas• scenarios
• framework assessment• model-driven
engineering• quality-function-
deployment• reverse engineering• world modeling
• release planning• summarization• test-driven design• visualization
Synthesis • affinity diagramming• concept mapping• mind mapping• morphological chart
• design/making• participatory design• prototyping• storyboarding
• architectural styles• generative programming• component reuse• decomposition
• pair programming• refactoring• search• software patterns
Evaluation • requirements review• role playing• wizard of oz
• cognitive walkthrough• evaluative research• heuristic evaluation• think-aloud protocol
• formal verification• simulation• weighted objectives
• correctness proofs• inspections/reviews• parallel deployment• testing
![Page 4: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/4.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 4
Applicationdesign
Interactiondesign
Architecturedesign
Implementationdesign
Analysis • competitive testing• contextual inquiry• feature comparison• stakeholder analysis• task analysis
• critical incident technique• interaction logging• personas• scenarios
• framework assessment• model-driven
engineering• quality-function-
deployment• reverse engineering• world modeling
• release planning• summarization• test-driven design• visualization
Synthesis • affinity diagramming• concept mapping• mind mapping• morphological chart
• design/making• participatory design• prototyping• storyboarding
• architectural styles• generative programming• component reuse• decomposition
• pair programming• refactoring• search• software patterns
Evaluation • requirements review• role playing• wizard of oz
• cognitive walkthrough• evaluative research• heuristic evaluation• think-aloud protocol
• formal verification• simulation• weighted objectives
• correctness proofs• inspections/reviews• parallel deployment• testing
Software design methods
![Page 5: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/5.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 5
Mind mapping
• Mind mapping is the process of generating ideas and developing concepts when the underlying relationships are unclear
![Page 6: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/6.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 6
Procedure
• Identify the focus word or question
• Free associate outward from the focus
• Reorganize as needed
• Annotate
![Page 7: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/7.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 7
Example: identify the focus word or question
![Page 8: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/8.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 8
Example: free associate outward from the focus
![Page 9: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/9.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 9
Example: reorganize as needed
![Page 10: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/10.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 10
Example: annotate
![Page 11: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/11.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 11
Typical notation: mind map
![Page 12: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/12.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 12
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
![Page 13: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/13.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 13
Strengths and weaknesses
Strengths• 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
Weaknesses• 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
![Page 14: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/14.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 14
Variants
• Concept mapping
![Page 15: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/15.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 15
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
![Page 16: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/16.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 16
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
![Page 17: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/17.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 17
Today
• Use the mind mapping design method through the use of silent sticky notes
![Page 18: Informatics 121 Software Design I](https://reader035.fdocuments.us/reader035/viewer/2022070503/568156d0550346895dc4697f/html5/thumbnails/18.jpg)
Department of Informatics, UC IrvineSDCL Collaboration LaboratorySoftware Design and
sdcl.ics.uci.edu 18
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