Software Requirements Collecting: Graphical vs. Textual
Download
Report
Transcript Software Requirements Collecting: Graphical vs. Textual
Design Exploration
J. Michael Moore
[email protected]
http://csdl.tamu.edu/~michael/
Overview
• Issues
• Approach
• Analysis
• Tool
• Questions
Issues
The Importance of
Requirements
• Requirements define and measure the
success of a system
• Even when a program does “what” it is
supposed to do it still does not meet
user expectations
• Getting the “real requirements” is hard
Issues
Requirements Approaches
• Interviews
• Face-to-face
• Participatory Design
• Ethnography
Communication Issues
• Communication problems often the
cause of inadequate requirements
• Terminology / jargon mismatch between
end users and software developers
• Communicating via an artifact can help
• Face-to-face communication preferred
but not always possible
Issues
Overview
• Issues
• Approach
• Analysis
• Tool
• Questions
Design Exploration Approach
• Communication through design: Allow
probable
end
users
to
create
mock-ups
Approach
of graphical user interfaces (GUIs) for a
program and augment with textual
descriptions
• Take advantage of the “Language of the
GUI”
• Allow person to choose most
comfortable mode of communication
Approach
Stored
Designs
Analysis
Tool
Processing
GUI Construction
and Textual Argumentation
Approach
Analysis
DE Builder
Approach
DE Builder
Approach
DE Builder Demo
• http://www.csdl.tamu.edu/~kim/DE/
Overview
• Issues
• Approach
• Analysis
• Tool
• Questions
Transformations
• Many components in a user interface
construction have fairly direct
correlations to models used in
requirements and design modeling.
Data to Transform
Figure 2
Figure 1
Figure 3
Patterns
• Attributes deduced from textual
argumentation and radio button options.
• Relationships deduced from references to
lists.
–
–
Explicit Reference
Associated Actions
• Aggregation derived from lists and tables.
• Representations can vary, but in this case am
using UML.
Results - Objects and Classes
Data to Transform
Figure 5
Figure 4
Figure 6
Patterns
• Branching
– Checkboxes show optional parallel
processes
– Radiobuttons show explicit branching.
• Representations can vary, but in this
case using UML.
Results – Activity Diagrams
Log on
Display Courses
[quit]
Verification
[go]
[else]
[else]
[degree selected]
Degree Plan
Register
[help selected]
Check
Availability
Drop
Add
Help
Activity Diagram for
“Register” Activity
Activity Diagram for System.
Dictionary
• Maintain each term used and pointers
to where the term occurs
• A
modified full text index
Analysis
Analysis
Design Components
• Widgets
• Groups of Widgets
• Windows
Analysis
Spatial Parsing
Composite
Vertical List
Vertical List
Composite
Vertical List
Analysis
Composite
Vertical List
Similarity
• Represent design components with
Term Vectors
• Compare design components’ text with
cosine similarity.
Analysis
Overview
• Issues
• Approach
• Analysis
• Tool
• Questions
Right Click Navigation
Tool
Tool
Dictionary
Tool
Search Overlay
Tool
Overview
• Issues
• Approach
• Analysis
• Tool
• Questions
Questions
J. Michael Moore
Questions
[email protected]
http://csdl.tamu.edu/~michael/
Questions