Title: Homework 5 Story Cards Extreme Programming
1Homework 5 Story Cards Extreme Programming
2General
This is an architectural drawing tool. It
reads/saves information in xml, gml or ACME
format. It renders an architecture as a 2D graph
and uses one of several algorithms to perform
automatic layout. Each node or edge may have an
underlying representation which itself is a
graph. Each node or edge in the graph may also
have text properties associated with it. It
should be possible to view these properties from
within the program. Properties have the format
name-type-value.
3Story 0
I want to start the application and see a splash
screen with the program name, and GT logo. After
the application loads, I should be able to either
load in an architecture or begin creating one.
TASKS Initialize Graphics Screen (Menubars,
Panes..) Create Splashscreen.
ESTIMATE 2 Gummis
4Story 1
I want to draw a node on the screen and assign
the desired properties to it. Nodes are drawn as
rectangles with the component name inside the
node. Connections for edges are made at ports
which are shown as circles on the perimeter.
TASKS Selection Mechanism Create
and Draw Nodes Edit properties.
ESTIMATE 10 Gummis
5Story 2
I want to draw an edge between any two nodes and
assign properties to that edge. Edges connect to
nodes via ports. Once an edge is connected, any
movement of the node moves the corresponding
edges (they stay connected).
TASKS Selection Mechanism Draw
edge Edit Properties
ESTIMATE 8 Gummis
6Story 3
I want to select any node or edge and view their
associated properties.
TASKS Select Mechanism Display
Properties
ESTIMATE 2 Gummis
7Story 4
I want to select any node or edge and view the
detailed representation in another window. (Also
known as drill-down).
TASKS Selection Mechanism Create
New Surface Draw on Surface
Associate with parent
ESTIMATE 4 Gummis
8Story 5
ESTIMATE 12 Gummis
I want to import architectures defined in XML
(xADL) and correctly draw them and their
corresponding properties. See http//www.isr.uci.
edu/edashofy/papers/wicsa2001.pdf and
http//www.isr.uci.edu/projects/xarchuci/
TASKS Interface with XML Library
Read components and create nodes
Associate properties Read
connectors and create edges
Associate properties Create
sub-graphs as necessary
9Story 6
I want to save an architecture I have created
into xADL format. See story 5 for links.
TASKS Interaface with XML Library
Save Model Save layout info as
properties.
ESTIMATE 2 Gummis
10Story 7
I want to have the graph auto-layout using one of
several algorithms such as spring-embedder,
dag, tree, layered, hierarchical. See
http//www.absint.com/aisee/gdl/layout.htm.
TASKS Research Layout algorithm
Implement algorithms
ESTIMATE 50 Gummis