Information Technology Reference
In-Depth Information
(3) The Restriction class, which binds together three elements: a permission
subject (i.e., an
Item
), a permission grantee (i.e., a
Role
)andadenial (i.e.,
“read”
and
“edit”
).
(4) The Presentation class, which holds properties to guide the rendering
of the wiki. Specifically, index requirements are captured through four common
indexing schemas:
toolboxPane
(entries include
“what links here”, “Upload file”,
“printable version”
, etc),
navigationPane
(entries include
“recent changes”, “help”
“main page”
, etc),
indexPane
(where entries are set by the designer through the
Item
's
indexPaneEntry
attribute), and
searchPane
(as a search facility to locate
articles based on content). The logo is also captured here.
Next, this abstract syntax is realized through a concrete syntax. This
implies a mapping between the metamodel concepts and their textual or
visual representation. Preliminary feedback indicates that a visual syntax
would be more suitable. The user profile (i.e., domain experts) as well as the
collaboratively way of obtaining the wiki blueprint, advise to go for a visual
DSL. Rather than developing our own visual language, we decide to capitalize
on an existing one:
FreeMind
. With over 6,000 daily downloads,
FreeMind
is one
of the most popular tools for mindmap drawing. Fig. 3 shows a snapshot of a
FreeMind
map. The main advantage of this tool is the easiness to play around
to capture your mental model (e.g., nodes, and their descendants, can be easily
moved around; branches can be collapsed, etc). This decision not only speeds up
development but, more importantly, it will hopefully facilitate
WSL
adoption
among end users. Next section introduces
WSL
as a visual language on top of
FreeMind
.
4 WSL Realization
WSL
is a visual language on top of
FreeMind
.Thatis,a
WSL
expression is
a compliant
FreeMind
map. However, the opposite does not hold. Some maps
might not deliver a compliant wiki scaffolding, where compliance is determined
by the abstract syntax in fig. 2. Therefore,
WSL
maps are a subset of
FreeMind
maps.
FreeMind
maps are internally represented as
XML
files along an
XML
schema
.
On top of it,
WSL
imposes an additional set of constraints that ensures
that maps account for compliant scaffoldings (i.e., conform to the
WSL
abstract
syntax). Before delving into how
WSL
constructs are mapped into
FreeMind
elements, next subsection introduces an example.
4.1
WSL Example
Consider the use of wikis to support software projects. The scattering of
stakeholders, the need for collaboration and tracking, and the iterative manners
that characterize software projects make wikis an attractive platform [9]. Fig. 3
provides an example for the
Purchase Project
as a
WSL
mindmap.