J. Software Engineering & Applications, 2010, 3, 882-889
doi:10.4236/jsea.2010.39103 Published Online September 2010 (http://www.SciRP.org/journal/jsea)
Copyright © 2010 SciRes. JSEA
Towards Lightweight Requirements
Documentation
Zheyin g Zha n g 1, Mike Arvela2, Eleni Berki1, Matias Muhonen3, Jyrki Nummenmaa1, Timo Poranen1
1Department of Computer Sciences, University of Tampere, Tampere, Finland; 2Futurice GmbH, Taubenstraße, Berlin, Germany;
3Nomovok Ltd., Keilasatama, Espoo, Finland
Email: {zheying.zhang, eleni.berki, jyrki.nummenmaa, timo.poranen} @ c s . u t a . f i , mi k e @ a r v e l a .net, matias.muhonen@nomovok.com
ABSTRACT
Most requirements management processes and associated tools are designed for document-driven software develop-
ment and are unlikely to be adopted for the needs of an agile softwa re develo pment team. We d iscuss how and what can
make the traditional requirements documentation a lightweight process, and suitable for user requirements elicitation
and analysis. We propose a reference model for requirements analysis and documentation and suggest what kind of
requirements management tools are needed to support an agile software process. The approach and the reference
model are demonstrated in Vixtory, a tool for requirements lightweight documentation in agile web application devel-
opment.
Keywords: Lightweight, Requirements Documentation, Requirements Management Tool, Agile Software Development
1. Introduction
Many agile methods emphasize working code [1,2] and
working documentation (e.g. in the case of SCRUM), too.
Agile methods concentrate on adding value to business
and agile software development is an intensive commu-
nication process with users. The requirements analysis
and documentation activities, however, are often carried
out intuitively. Instead of a full requirements document,
the most common form of user requirements includes a
user story or a use case, which tells a story on how the
user completes a meaningful task in interaction with the
system to be built. Working on the increments based on
user stories involves interaction w ith the end-us er, where
more information comes in the form of feedback from
the user. This feedback contains changes, additions and
refinements on requirements.
Well-defined requirements have traditionally been
seen as a critical factor behind software project success
[3-6]. Agile methods also emphasize the user require-
ments, but they are less documentation-centric. It is,
however, important to consider how and to whom the
requirements are presented and used. We want to develop
a user-centric reference model to capture the require-
ments analysis and documentation environment; this can
improve user participation and requirements representa-
tion, while supporting agile ways-of-working and values.
The paper presents a lightweight requirements documen-
tation environment by proceed ing as follows. Initially we
present the rationale of having a requirements documen-
tation phase and comment on the three dimensions of
requirements engineering (RE). The latter grounds the
discussion of how and what might make the requirements
documentation a lightweight process and, thus, more
agile. Based on this discussion, we propose a reference
model for requirements analysis and documentation, and
further discuss what the requirements management tools
should be like for agile projects. We finally propose
Vixtory [7], a prototype tool for agile web application
development, as an example to demonstrate the light-
weight requirements documentation environment sup-
ported by our refere nce model.
2. The Three Dimensions of Requirements
Engineering
Pohl [8] describes the RE activities and their goals along
three orthogonal dimensions: specification, representa-
tion, and agreement. The framework assumes that there
are three major facets of the RE process, namely docu-
menting the requirements in a more complete manner,
with more formality, and more consensus among stake-
holders [8,9]. The specification dimension deals with the
degree of requirements understanding at a given time [8].
Completeness and understandability of knowledge form
the main concerns in this dimension. The representation
Towards Lightweight Requirements Documenta tion
Copyright © 2010 SciRes. JSEA
883
dimension copes with the degree of formality of knowl-
edge expression [8]. In general, requirements can be
documented in three types of representation: informal
representation (e.g. natural language), semi-formal rep-
resentation (e.g. ER diagram, state diagram, etc.), and
formal representation (e.g. mathematics expression).
From the informal presentation to the formal one, re-
quirements documents are shifting from the user-oriented
ones to the system-oriented ones. The agreement dimen-
sion deals with the degree of agreement reached on a
specification. It focuses on a variety of views of the same
system from heterogeneous groups of stakeholders, and
emphasizes the common agreement.
3. The Meaning of ‘Lightweight’
Requirements Documentation
Requirements documentation provides a means of com-
municating between diverse stakeholders and achieving
common agreement on the future software artifacts de-
scription [3]. Requirements elicitation is perceived as an
essence for a software development project, but the re-
quirements analysis, documentation, validation and
maintenance are very tedious processes. Many research-
ers claim that most requirements specifications found in
industry nowadays still include many poor-quality re-
quirements [6,7], even though there are so many different
techniques to ensure the requirements’ quality. Poor re-
quirements form an important reason that causes the fail-
ure of many IT projects [5,10].
An ideal requirements document shall be correct, com-
plete, consistent, precise, testable, and traceable [4]. In
practice, however, it is hard to address all requirements
up front, and to maintain a correct and consistent docu-
ment throughout the project in an ever-changing envi-
ronment. In agile software projects, in particular, the tra-
ditional requirements process is replaced with iterations
and increments, and the documentation is replaced with
user stories, working software, and changing requests.
We shall ensure that stakeholders express, understand,
document, use, and maintain requirements in a correct
and easy way. The requirements gathering and agreement
process should shift from documentation to communica-
tion efforts. A more narrative and context-specific ap-
proach should be adapted to improve the requirements
analysis process, and at the same time, keep it light-
weight. The latter indicates the environment which de-
ploys the available resources to effectively support the
communication and the consequent analysis and docu-
mentation. The meaning of lightweight is next discussed
along three important dimensions.
From the perspective of specification, requirements
documentation is an ongoing process, and the details can
be elaborated just in time. Requirements need not be
fully specified up front, at a very early stage of the pro-
ject, when many aspects are unknown and needs cannot
yet be expressed, consistently and correctly, to say the
least. We hereby agree with other researchers [3,12,13]
supporting that requirements development is an ongoing
process throughout a software development project.
Meanwhile, there is no point in specifying highly de-
tailed requirements before software or at least prototype
development even starts. Software requirements can be
elaborated at the right time when they are selected for
implementation. This is natural as the application do-
mains of the real world, to which the software targets, is
subject to change. Furthermore, users change their un-
derstanding towards their requirements and needs as the
development proceeds in new software releases that need
feedback.
From the perspective of representation, prototypes or
working software improve the requirements understand-
ability by providing a context realism representation. To
get some grip of the concept lightweight in the represen-
tation dimension, we make the following division of
ways of working to document requirements. In the tradi-
tional waterfall model, the requirements have been
documented before the actual software is being built. A
typical way to express requirements is textual [7,14].
Different from the traditional waterfall model, prototyp-
ing [3,14] means building software to mimic the behavior
and functionality of the target software to be built. The
prototypes are used to validate requirements, but, they
could also be seen as specification techniques, where
requirements can be elicited upon and attached to what
can be called prototyping software. Similarly, it is also
possible to attach requirements to work ing software. This
has become more of an option in incremental software
development, where software is built on top of existing
increments, as is typically done in agile software devel-
opment. The working software can provide users a real
and actual representation of the requirements. It can be
regarded as a starting point to elicit and refine require-
ments rather than an end of a development cycle. Such a
context enriched representation makes a smooth trans-
formation from the high level requirements description to
the detailed implementation, and enhances the clarity and
understandability of requirements. At the same time, the
requirements are not rigid with a specific form of repre-
sentation, which forms a flexible and lightweight process
to represent requirements.
From the perspective of agreement, timely feedback on
small releases of working software supports the evolution
from the individual views to a common agreement. In-
cremental development that utilizes prototypes or other
prototype-like software artifacts, e.g. working software,
Towards Lightweight Requirements Documentation
Copyright © 2010 SciRes. JSEA
884
gives us a possibility to attach a part of the requirements
to existing incre ments. This allows stakeh olders not only
to perceive the target applications, but also to present
their individual views and wishes based on the existing
version. With the frequent releases, stakeholders can re-
view the working software, adjust their understanding of
the target application, and provide timely feedback as the
requirements for the follow-up iterations. It flexibly
supports the evolution from the personal views to a
common agreement on the target system, and avoids the
aforementioned problems of prototyping methods: The
software does not give a promise of a functionality which
may be incorrect and also the design is “as-is”.
4. A Reference Model for Requirements
Documentation Environments
The most essential aspects in a requirements analysis and
documentation environment can be captured in a refer-
ence model. The reference model has ER like notations.
The rectangles represent entities which facilitate re-
quirements documentation. They are integrated together
through a number of traceability links, represented as
arrows. As shown in Figure 1, the model consists of
three basic entities: requirements, external documents,
and software artifacts. These are the most essential arti-
facts found in every software project, and documented in
the supporting tools. Entities are interlinked with each
other through a number of traceability links. Each entity
and links can be specialized and instantiated to create
organization or project specific requirements documenta-
tion environments. Since lightweight documentation is
our main concern and target in this study, the instances
and attributes, which reflect the nature of agile software
development approaches, are marked in bold. In the fol-
lowing section, we will discuss the reference model
along different dimensions of lightweight requirements
documentation.
4.1. Requirements
Requirements comprise the specifications of the services
that the system should provide, the constraints on the
system and the background information that is necessary
to develop the system [16]. They are typically repre-
sented in a natural language, supplemented by diagrams
such as the use case diagram, the data flow diagram, etc.
Requirements are documented with attributes such as
creation date, version number, author, description, prior-
ity level, status, etc.
Instead of limiting a requirements specification to a
single and rigid representation, the informal representa-
tions of users’ conception of their system such as user
stories [1,2], use cases, and scenarios can be elaborated
Figure 1. A reference model of a requirements analysis and
documentation environment.
and attached to the working software at a right time,
which can make the requirements documentation process
intuitive and encourage customers’ participation. User
stories include a set of small sentences that express the
user needs, in her/his own words [2]. The description
tells a story on how the user completes a meaningful task
in interaction with the system to be built. When a user
story is selected for implementation, it can be further
elaborated by the developers in their preferable forms.
Requirements can be documented in different levels of
detail. The high abstraction level requirements, such as
user stories, are documented by interacting with custom-
ers and by means of experimental use of prototypes or
working software. They are customer’s actual needs.
When the user stories are selected for implementation,
they are refined and adjusted into detailed tasks, and im-
plemented and evaluated within the same iteration. Such
divide-and-conquer tactics isolate the customers from
complex technical implementation, while enable them to
provide timely evaluation and feedback of accumulated
implementations.
4.2. External Documents
External documents represent the documents which are
not stored in any requirements management tools (RMTs).
In traditional software development process, they typi-
cally describe and contain the requirements specified in
general-purpose document tools, modeling tools, etc.
These documents are structured ones and easy to create,
but static. It is hard for different stakeholders to work in
collaboration on the same document, and to document
and exchange ideas in a lightweight process.
An agile principle is close collaboration between de-
velopers and customers. A lightweight documentation
needs a platform that can support effective and efficient
collaboration among an often large number of diverse
needs and requirements stakeholders. The model we
propose enhances collaboration by adding the instance of
generic collaborative platforms, such as wikis [17,18]
Towards Lightweight Requirements Documenta tion
Copyright © 2010 SciRes. JSEA
885
and issue trackers. These can provide a flexible way of
open review, elaboration, refutation, or refinement with a
discussion thread. Further the discussion and communi-
cation comments give rise to the development of narra-
tive descriptions of the features and requirements of the
software under development. This can reduce the details
needed in the requirements documentation, as the de-
tailed contextual information can be linked to the discus-
sion on the collaborative platform. The process can be
adapted to support active stakeholders participation in
requirements elicitation and documentation [18].
4.3. Software Artifacts
Software artifacts represent the final or interim byprod-
ucts during the development of software. Examples in-
clude specifications, prototypes, code, testing cases, as
well as working software released at the end of each it-
erative process. They are connected with requirements
through a variety of traceability links, which provide
contextual information within the development team to
support software development activities, such as change
impact analysis, testing, maintenance, project tracking,
etc.
As one of the agile principles is ‘frequent releases’, the
development team can deliver working software to the
customers for their experimental use and for feedback [1].
The experimental use process expands the contextual
information within the deve lopment team to that between
the customers and the developers. It facilitates customers
to explore the real working product, and to provide indi-
vidual feedback before the final delivery, which reduces
the uncertainty between the development team and the
customers. Being different from a prototype, which may
represent some compromise from the final production
design, the working software provides customers with an
actual production design, and, thus, eliminates the risks
of misunderstanding and misleading. The context spe-
cific information of working software is much more real
than that of a prototype. Furthermore, compared with the
throw-away prototype approach [3,14], the practice of
short release of working software saves time and other
resources in a software project. Therefore, an easy use of
the traceability link among requirements and the working
software is necessary to facilitate the communication of
ideas and prompt feedback.
4.4. Traceability Links
Traceability links connect the instances of every compo-
nent to provide contextual information on the target sys-
tem [13]. They present th e relationship of entities instan-
tiated from the same element, such as the elaboration
relationship between a high level user story and a list of
low level tasks, the validation relatio nship between a test
case and a segment of the software, or the hyperlinks
available in wikis or any other collaborative platforms.
Furthermore, the traceability links between different
elements allow developers to trace code back to the con-
versation from which the artifact came, back to the user
story, and finally to its initial requirements [19]. They
also facilitate the customers to be involved in the devel-
opment process by tracing between the user stories to the
working software. Consequently, there are two categories
of traceability links in the requirements documentation
environment: links within tools and links between tools.
It is undoubted that a set of tools are deployed within a
project to support the development activities from dif-
ferent aspects. In general, each tool can provide some
sort of traceability information within the use of tool,
such as the aforementioned elaboration or validation
links. Besides, it is necessary for an agile project to have
an integrated environment by using hyperlinks to connect
the requirements and other information scattered in dif-
ferent tools. Examples include the traceability link be-
tween the prototyping software and the RMTs, between
the collaborative platform and the RMTs or a CASE tool.
These hyperlinks ease the flexible documentation and use
of requirements and the related information [20], which
reflects the goal of the reference model.
Access to documented traceability provides different
levels of context realism. It is indeed very valuable.
However, the manual burden directly contradicts with the
agile principles. Developers are often reluctant to par-
ticipate in the effort of documenting traceability informa-
tion [13,21,22]. On the basis of the existing tools, a solu-
tion to connect the scattered information manually or
automatically into the iteration is very important. The
next section elaborates further on this aspect.
5. Tools Supporting Lightweight
Requirements Documentation
There is a number of tools supporting requirements
analysis and documentation. A tool survey conducted by
INCOSE [23] compares the features of over forty differ-
ent RMTs from 2004 to 2009. These tools support the
requirements documentation process and, clearly, influ-
ence the quality of the documentation. Before discussing
the need for lightweight requirements documentation
tools, we will have an overview of the features of tools
that support the traditional requirements documentation
phase.
5.1. Classification of Requirements
Documentation and Management Tools
We attempt to broadly classify existing RM tools into
four groups: general-purpose document tools, collabora-
Towards Lightweight Requirements Documentation
Copyright © 2010 SciRes. JSEA
886
tive tools, RMTs, and prototyping tools.
The general-purpose document tools mainly include
office suites such as MS Office, Open Office, Lotus
SmartSuite, etc. These are not too specialized, and many
users are acquainted with since they are easy to adapt to
the needs of different development environments. Sur-
veys report that these general-purpose document tools,
though not sophisticated, in practice are helpful with re-
quirements documentation [5,6,24-26]. Though the
non-specialized features can be considered as a great
merit, it is difficult to support specific RE activities and
ensure the quality of the derived documents. .
The collaborative tools offer a flexible platform that
can involve a number of diverse users in common tasks
to achieve their goals and for collaborative editing of
contents. Wikipedia is an example for creating an ency-
clopedia openly and collaboratively by volunteers from
all around. According to the level of collaboration, there
are different categories of these tools ranging from a
simple information sharing application (e.g. online chat,
wikis, etc.) to sophisticated systems that facilitate group
activities (e.g. knowledge management and project man-
agement systems). Instead of facilitating documentation,
these tools provide a lightweight solution to creating,
editing, sharing, and discussing information; the latter
obviously improve the communication and collaboration
for requirements analysis.
RMTs are dedicated to manage the large amount of
data collected during the RE process an d the volatility of
the requirements [3]. There are many commercial RMTs
such as DOORS, Requisite pro, CaliberRM, etc. Typi-
cally, these tools collect the requirements in a database
and provide a range of facilities to access the information
on the requirements. These facilities include require-
ments browsing, requirements converting, report gener-
ating, requirements tracing, change control, etc. The
RMTs that support formal requirements representation
can also facilitate requirements consistency checking and
semantics verification [27]. Such tools aim at technical
users, and provide a comprehensive environment to sup-
port the different dimensions of RE process. Empirical
studies [25] support that RMTs provide better coverage
of the RE process and the quality of requirements docu-
mentation. On the other hand, many surveys [5,6, 24-26]
report that the mainstream practice relies on office and
modeling tools rather than RMTs. Survey reports contra-
dict on the industrial use and the rationale of RMTs.
The prototyping tools are specific tools, which rapidly
represent, build, and realize important aspects of a soft-
ware-based system. The prototype serves as an experi-
mental system to demonstrate requirements and collect
stakeholders feedback. Prototyping tools range from
simple ones that develop a mock-up system to special-
ized ones that create interactive wireframes for websites
and desktop software, and design user interfaces with
high functionality. Examples include Axure RP, Proto-
Share, etc., which generate web-based prototypes. Be-
sides, some general-purpose CASE tools provide good
support for prototyping for user interfaces and web de-
sign, such as the graphic design tools (e.g. Illustrator or
Adobe Photoshop), the diagramming tools (e.g. Visio or
SmartDraw), and the visual and text based HTML tools
(e.g. FrontPage, Dreamweaver, etc.). Instead of specify-
ing and managing requirements, the prototyping tools
focus more on providing stakeholders with a real ex-
perimental system, which increases requirements under-
standability and avoids requirements creep and rewo rk.
In addition to these four categories of tools for require-
ments documentation, there are also agile project man-
agement tools, such as Rally, Scrumworks Pro, which
facilitate backlog (requirements) editing and report gen-
erating. All these tools provide support for requirements
documentation in some aspects of the reference model
depicted in Figure 1. In general, RMTs, as well as all
other requirements documentation tools, provide support
for requirements specification in different levels of for-
mality. Besides, the collaborative tools provide more
flexible support for the external documents, while the
prototyping tools can provide links between the software
artifacts and the requirements. Obviously, none of them
can cover the components specified in the reference
model of Figure 1.
The purpose of requirements documentation is com-
munication among a number of stakeholders. The gen-
eral-purpose document tools have widespread availab ility.
They, however, lack adequate support for communica-
tion and collaboration in the RE process. The collabora-
tive tools compensate for the deficiency of collaboration
in the general-purpose documentation tools, but lack
enough support in context enriched representation and
just-on-time requirements documentation. The RMTs
tools over-emphasize the specification and representation
dimension of the RE process, i.e. the bureaucratic and
rigid support for the RE process, but do not facilitate a
close and smooth interaction between developers and
customers [21,26]. The communication factor is lost. The
prototyping tools, on the other hand, offer users the ac-
tual prototype for experimental use and feedback, but,
most of them, lack necessary features that facilitate
just-on-time specification. In a summary, Figure 2 illus-
trates the tools previously discussed and their support of
the goals set within the three dimensions of lightweight
requirements documentation, as discussed in the begin-
ning of this wo rk .
Consequently, in order to better support requirements
documentation, a tool should capture the three important
dimensions of the RE process, as outlined in the context
Towards Lightweight Requirements Documenta tion
Copyright © 2010 SciRes. JSEA
887
Figure 2. Tools within the three dimensions of lightweight
requirements documentation.
of this paper. A single tool cannot provide all the desired
features for a lightweight requirements documentation
process. The latter should be facilitated by a set of simple,
intuitive, and widespread availability tools [20,28],
which could easily and flexibly be integrated into the
development environment.
5.2. Vixtory–A Target Application Based
Requirements Documentation Tool
As shown in Figure 2, prototyping tools are the ones
most close to the desired lightweight requirements docu-
mentation. The target is, thus, to improve the specifica-
tion dimension of such tools and provide users with an
actual experimental use of the target application. Moti-
vated from these needs and the tools features discussion,
we developed a requirements management tool for agile
web application development, namely Vixtory [7]. It
provides a lightweight and less burdensome documenta-
tion approach by annotating requirements directly to the
target application. The stakeholders are allowed to par-
ticipate in the develop ment process and review the target
application e ve n du ri n g development .
Vixtory [7] was implemented with Groovy and the
Grails framework [29] using Asynchronous Javascript
and XML (AJAX) to store requirements in a relational
database. Vixtory models requirements in an intuitive
way: the requirements are part of the application being
developed. There is no need to maintain a separate re-
quirements document. The stakeholders can add a new
version of the web application being developed to Vix-
tory’s project database. Each version is identified by an
URL address. Stakeholders can freely navigate in the
Vixtory web appl i cat i o n wi t h a standard we b browser.
As can be seen from Figure 3, the web page under
development is on the right side of the screenshot, and
the requirements pane showing a list of the requirements
Figure 3. The layout of Vixtory.
Towards Lightweight Requirements Documentation
Copyright © 2010 SciRes. JSEA
888
is on the left. The stakeholders can browse the web ap-
plication in question freely page-in-page and identify the
requirements for individual views of the web application.
The identified requirements are attached with the re-
quirements annotation tool to the corresponding view of
the web application. An ann otation in Vixtory is a priori-
tized requirement containing a textual description, listed
on the requirements pane.
The annotated requirement is visually linked to an ele-
ment on the web application. Any elements from links to
complicated forms can be annotated with a requirement.
The annotations provide a clear traceability link between
requirements and the implementation without adding a
burden of a specification document, which also facilitates
the communication and collaboration between stake-
holders. Vixtory provides developers and on-site cus-
tomers with a straightforward view of the web applica-
tion being developed, which forms the actual target ap-
plication context. It also supports and manages change by
allowing effortless updating and replacing of require-
ments.
Vixtory was created with user experience and ease of
use as top priorities [30]. Given that Vixtory is in its first
commercial release iteration, much work still remains to
be done. The requirements specification and representa-
tion will further be improved in order to provide
end-users with more flexibility in the documentation
process. The hypertext links, for instance, between Vix-
tory and the existing project management tools or col-
laborative platforms are missing and this is something
that will further be considered. How easily Vixtory can
be integrated and used with other development platforms
and organizational cultures are open questions, worth
considering for our ongoing research.
6. Conclusions
We discussed the need for lightweight requirements
documentation and presented a reference model for ad-
dressing this need. We provided an existing RM facili-
tated tools taxonomy and drew conclusions on how these
tools support requirements analysis and documentation in
agile software development. Upon the comparison and
contrast of these tools, we identified further needs for
requirements documentation that have not been ade-
quately addressed. Therefore, we proposed the adoption
of the Vixtory tool and illustrated how it can be used to
flexibly document requirements for agile development.
As Vixtory is a prototype tool, we do not yet have
enough feedback from the Vixtory tool production use.
The feedback upon the initial experimental use of Vix-
tory has been positive. The project managers, in particu-
lar, like the tool. An obvious reason is that the tool makes
end user participation easier and it offers less vague and
ambiguous requirements due to the actual target system
context. In the future, we nee d to empirically evaluate the
acceptability of the tool, asking more stakeholders on
their experiences. We currently expect to gain experience
from industrial and student software projects. We are
particularly interested in the users’ communities feed-
back for improvement.
REFERENCES
[1] K. Beck, “Extreme Programming Explained: Embrace
Change,” Addison-Wesley Longman Publishing Co., Inc.,
Boston, MA, USA, 2001.
[2] A. Cockburn, “Agile Software Development: The Coop-
erative Game,” 2nd edition, Addison-Wesley Professi on al ,
2002.
[3] G. Kotonya and I. Somerville, “Requirements Engineer-
ing: Processes and Techniques,” John Wiley & Sons,
Chichester, 1998.
[4] IEEE Recommended practice for software requirements
specification. IEEE Standard 830-1998, 1998.
[5] H. F. Hofmann and F. Lehner, “Requirements Engineer-
ing as a Success Factor in Software Projects,” IEEE Soft-
ware, Vol.18, No.4, 2001, pp. 58-66.
[6] U. Nikula, J. Sajaniemi and H. Kälviäinen, “A State-of-
the-practice Survey on Requirements Engineering in
Small- and Medium-Sized Ente rprises,” Research Report,
Telecom Business Research Center, Lappeentanta, 2000.
[7] Vixtory, “Tell your story”. http://www.vixtory.com/
[8] K. Pohl. “The Three Dimensions of Requirements Engi-
neering: A Framework and its Applications,” Information
Systems, Vol. 19, No. 3, 1994, pp.243-258.
[9] C. Rolland and N. Prakash, “From Conceptual Modelling
to Requirements Engineering,” Annals of Software Engi-
neering, Vol. 10, No. 1-4, 2000, pp.151-176.
[10] The Standish Group, “Chaos Chronicles Version 3.0.”,
2003. http://www.standishgroup.com/chaos/
[11] Agile manifesto, 2001. http://agilemanifesto.org/
[12] E. Berki, “Formal Metamodelling and Agile Method En-
gineering in MetaCASE and CAME Tool Environ-
ments,” The 1st South-East European Workshop on For-
mal Methods, South-Eastern European Research Center
(SEERC): Thessaloniki, 2004, pp. 170-188.
[13] B. Ramesh and M. Jarke, “Toward Reference Models for
Requirements Traceability,” IEEE Transactions on Soft-
ware Engineering, Vol. 27, No.1, 2001, pp.58-93.
[14] C. Ghezzi, M. Jazayeri and D. Mandrioli, “Foundamen-
tals of Software Engineering,” 2nd Edition, Prentice Hall,
2003.
[15] E. Georgiadou, K. Siakas and E. Berki, “Agile Method-
ologies and Software Process Improvement,” Proceedings
of the Virtual Multi Conference on Computer Science and
Information Systems, Virtual Online Conference, 2005,
Towards Lightweight Requirements Documenta tion
Copyright © 2010 SciRes. JSEA
889
pp. 412-417.
[16] P. Zave, “Classification of Research Efforts in Require-
ments Engineering,” ACM Computing Surveys, Vol. 29,
No. 4, 1997, pp. 315-321.
[17] P. Louridas, “Using Wikis in Software Development,”
IEEE Software, Vol. 23, No. 2, 2006, pp. 88-91.
[18] B. Decker, E. Ras, J. Rech, P. Jaubert and M. Rieth,
“Wiki-Based Stakeholder Participation in Requirements
Engineering,” IEEE Software, Vol. 24, No. 2, 2007, pp.
28-35.
[19] C. Lee and L. Guadagno, “FLUID: Echo–Agile Require-
ments Authoring and Traceability,” Proceedings of the
2003 Midwest Software Engineering Conference, Chi-
cago, June 2003, pp. 50-61.
[20] B. Boehm, “Requirements that Handle IKIWISI, COTS,
and Rapid Change,” Computer, Vol. 33, No. 7, 2000, pp.
99-102.
[21] Z. Zhang and J. Kaipala, “A Conceptual Framework for
Component Context Specification and Representation in a
MetaCASE Environment,” Software Quality Journal, Vol.
17, No. 2, 2009, pp.151-175.
[22] O. Gotel and A. Finkelstein, “An Analysis of the Re-
quirements Traceability Problem,” Proceedings of the 1st
International Conference on Requirements Engineering
(ICRE '94), Colorado, 18-22 April 1994, pp. 94-101.
[23] INCOSE requirements Management Tool Survey. http://
www.paper-review.com/tools/rms/read.php
[24] A. Forward and T. C. Lethbridge, “The Relevance of
Software Documentation, Tools and Technologies: A
Survey,” Proceedings of the 2002 ACM symposium on
Document engineering, McLean, Virginia, USA, ACM
Press, pp. 26-33.
[25] A. Persson and J. Stirna, “Advanced Information Systems
Engineering,” 16th International Conference, CAiSE,
Riga, Latvia, June 7-11, 2004, Proceedings.
[26] A. Manninen and E. Berki, “An Evaluation Framework
for the Utilisation of Requirements Management Tools-
Maximising the Quality of Organisational Communica-
tion and Collaboration,” Proceedings of BCS Software
Quality Management 2004 Conference, British Computer
Society: Swindon, 2004, pp. 139-160.
[27] C. Heitmeyer, J. Kirby and B. Labaw, “Tools for Formal
Specification, Verification, and Validation of Require-
ments,” Proceedings of the 12th Annual Conference
(COMPASS’97).
[28] B. Kernighan, “Someti mes the Old Way s are Best,” IEEE
Software, Vol. 25, No. 6, 2008, pp. 18-19.
[29] G2One Inc., Grails Web Application Framework, http://
grails.org/
[30] M. Arvela, M. Muhonen, M. Piipari, T. Poranen and Z.
Zhang, “Agile Tool-Managing Requirements in Agile
WWW Projects,” Proceedings of BIR 2008, Gdansk, 2008,
pp. 211-215.