Please don’t make me draw!
Lesson learned during the development of a software
to support early analysis of object-oriented systems.
This paper describes the development of a software tool to support rich pictures creation for Object Oriented Analysis (OOA). This software should be useful both as an e-learning tool for bachelor-level students, as well as for practitioners working with agile methodologies. Since the transposition of manual rich picture practise into software proved difficult, we decided to follow a user-centered approach, design and implement a prototype with basic functionalities, then run a usability test with a few students and professionals. The feedback collected in the test validated the design of our prototype, and forced us to re-consider the relationship between concrete examples and abstract concepts in rich pictures and in our tool. This unexpectedly helped us realize how to implement support for behavioral description (i.e. events), an elusive feature before the test. Moreover we gained a deeper insight on programmers’ perspective on their practise.
At a more general level we realized how modern object-oriented development methodologies, such as agile methods, are informed by design, and sometimes assume design skills that programmers do not have or do not value. An important lesson to consider carefully to keep our tool usable.
1. Please don’t make me draw!
Lesson learned during the development of a software
to support early analysis of object-oriented systems.
Andrea Valente
Department of Electronic Systems, Automation & Control,
Aalborg University - Esbjerg Institute of Technology
Esbjerg, Denmark
av@aaue.dk
Emanuela Marchetti
Mads Clausen Institute of Product Innovation,
University of Southern Denmark
Sønderborg, Denmark
e.manum@gmail.com
2. Rich pictures
Rich pictures represent knowledge about a domain
Knowledge acquisition during OOA
Help in construction of the system’s early prototypes
A rich picture provides ”a broad,
high-grained view of the problem situation”:
structures
processes
concerns
Usually:
rich pictures are created with low-tech
support (whiteboards, pen and paper)
students use non-specific diagram-
drawing tools
need for acquiring knowledge
incrementally
FROM: A. Monk and S. Howard, Methods & tools: the
rich picture: a tool for reasoning about work context.
3. Concept Maps and Text Graphs
Rich pictures are related to Concept Maps (Novak)
How can concept maps be made more visual ?
What happens when text is replaced with pictures, in a text graphs?
How to represent: structures (static aspects) and events (dynamic aspects)
- A Text Graph - - A Concept Map -
4. The (prototype) tool
The new tool is called Free Sketch for Software Engineering (FSSE)
minimalistic prototype FrameName : List of Tags
supports rich pictures construction
knowledge acquisition during the OOA phase name : TagList
incremental definition of both instances and types
multiple hierarchy
(provides code generation)
6. The Test
Problem:
transposing the manual rich picture practice into a software tool was difcult
Solution:
follow a user-centered approach -> involve students (EARLY) in a usability test
Aim of test:
evaluate how users may perceive a tool for rich pictures
easy to use
if it adequately supports work-ow (for individuals and groups)
collect suggestions for new features (to expand minimalistic prototype)
Icons provided for the test
7. (testing methods and ... ) Results
Findings:
don't make me draw!
especially on paper
provide pre-made icons
support for arrows
keep focus on knowledge modelling
works like "think aloud" -> nice for team work
software tool is good -> given iterative nature of OOA, paper requires (re)drawing
tags VS types (?)
tags VS frame names (?)
emergent usage pattern: prototypes and prototype clustering -> EVENTS!
Standard qualitative methodologies from the Design field
Questions:
method of situated interviews (interview users in their context of practice)
start with open questions, then gradually focus on details of users’ statements. Ask for examples.
Interviews VS questionnaires:
give more possibility to express freely
show them that we cared for their contribution -> more direct feedback
leverage on reection in action (a process of critical thinking while performing a skilled practice)
9. EVENTS = arrows between prototypes
Main window Palette window
Frames Tags
Arrows between frames Prototypes = typical frames
Events = arrows between
prototypes
new features! :Tree
growInto
seed stem
growInto
seed1:Tree
10. Conclusion / future work
No tools to support rich pictures creation, for object-oriented analysis
How to validate and complete the initial prototype of the tool?
involve users (i.e. students) -> usability test
small group is not a problem -> we got meaningful feedback for new iteration
Emergent patterns of use suggested new/better features: e.g. events
Discovery: programmers' values/skills do not include drawing!
Long term plan:
improve FSSE and test it further
propose FSSE as the main tool for the OOA&D course
Future work:
Free external painter VS internal painting capabilities: provide a more uniform
environment for drawing rich pictures
Events will be used to validate one’s understanding of a system
Plug-in mechanism: users will dene their own mapping from rich pictures to external
formats/code
multiple (remote) users -> CSCW