A Case of Study
María José Escalona, Arturo Torres-Zenteno, Javier Gutierrez
Department of Computer Languages and Systems, University of Seville, Seville, Spain
Eliane Martins, Ricardo da S. Torres, M. Cecilia C. Baranauskas
Department of Information System, Institute of Computing, State University of Campinas, Campinas, Sao Paulo, Brazil
Keywords: Software engineering, Geographic information systems, Software requirements and specifications.
Abstract: This paper introduces a process for developing Web GIS (Geographic Information Systems) applications.
This process integrates the NDT (Navigational Development Techniques) approach with some of the
Organizational Semiotic models. The use of the proposed development process is illustrated for a real
application: the construction of the WebMaps system. WebMaps is a Web GIS system whose main goal is
to support harvest planning in Brazil.
A geographic information system (called GIS from
now) is a software system that manages geo-
referenced information. GIS systems are an
automated system used for storing, analyzing and
manipulating geographical information.
Geographical information represents objects and
actions where geographical location is indispensable
information (Aronof, 1989; Bull, 1994). In this
context, a Web GIS system offers different GIS
services for analysis and visualization of
geographical information on the Web (Kim, 2002).
The purpose of this paper is to propose a process
for developing Web GIS systems. This process
integrates models from Navigational Development
Techniques (NDT) methodology (Escalona et al.,
2004) with models from the Organizational Semiotic
technique (Liu, 2000).
The process proposed in this paper has been
applied for developing the WebMaps system.
WebMaps is a real Web GIS system whose main
goal is to support harvest planning in Brazil
(Macário et al., 2007).
This paper is organized as follows. Section 2
introduces preliminary concepts needed to
understand the process. Section 3 describes the
techniques used in the process. Then, section 4
presents the case study based on WebMaps. Finally,
section 5 outlines conclusions and ongoing works.
2.1 Navigational Development
Techniques (NDT)
NDT (Escalona et al., 2004) is a methodological
process based on the navigation of web and
hypermedia systems. NDT defines the Requirements
Engineering and Analysis phases of a software
development process. In the Requirements
Engineering phase, NDT defines four models:
information storage requirement model, functional
requirements model, actors model, and interaction
requirements model. The information storage
requirements model specifies the information needs
of the system under development. This model
answers the following questions: what information
must the system store? What information does the
system need?
Functional requirements model specifies the
operation of the system, this model answers the
following question: what can the system do? The
José Escalona M., Torres-Zenteno A., Gutierrez J., Martins E., da S. Torres R. and Cecilia C. Baranauskas M. (2008).
In Proceedings of the Tenth International Conference on Enterprise Information Systems - HCI, pages 112-117
DOI: 10.5220/0001668101120117
actors model specifies the roles of actors that
interact with the system, their incompatibilities and
generalization among them.
The interaction requirements model is a relevant
model for a navigational system. The interaction
requirement model provides the information and the
functionality asked by the user.
In the Analysis phase, NDT defines two models.
The conceptual model is a set of conceptual classes.
These classes represent the static structure of the
system. The navigational model is a class diagram
with special classes that offers a view of the
conceptual model and shows how to navigate
through the information managed by the system
The main documents obtained in NDT are: the
System Requirement Document (SRD) in the
Requirements Engineering phase and the System
Analysis Document (SAD) in the Analysis phase.
2.2 Organizational Semiotics
As a “doctrine of signs”, Semiotics covers several
disciplines (Liu, 2000). The main goal of the
Semiotic is to facilitate the understanding of the way
signs are used by people for all purposes. Every
organized behavior is affected by the
communication and interpretation of the signs by
individual or by groups of people. Thus, the
Organizational Semiotics studies organizations, by
taking advantage of concepts and methods from
Organizational Semiotics offers methods to
understand the organizational context. The Methods
for Eliciting, Analyzing and Specifying Users’
Requirements (MEASUR) (Stamper et al., 1997).
MEASUR is a set of methods based on modeling
rules and requirements specification that can be used
for system development
Some of the methods included in MEASUR are
the PAM (Problem Articulation Method), the SAM
(Semantic Analysis Method) and the NAM (Norm
Analysis Method). The PAM is one of the methods
used in this paper. It may be applied in early stages
of the development process, when a vague and
undefined problem is found. The techniques
included in PAM are:
Stakeholder analysis: This technique performs
an analysis of the actors, customers, providers,
partners, competitors, users and government.
Evaluation table: this technique verifies for
each stakeholder the main problems at the time of
applying those techniques.
Semiotic framework: This technique specifies
characteristics in the level of physic world, empiric
world, syntactical world, semantic world, pragmatic
world, and social world.
Collateral analysis: This technique helps
during analysis and building of relations among
unitary systems, which involve complex systems.
This work also used the SAM method. This
method is used for capturing and representing the
requirements using a formal and precise model
Ontology diagram: The ontology diagram
defines concepts and terms used in the domain of a
particular problem.
Finally, this paper refers to a case study in which
we applied an adaptation of the mentioned methods
at the Institute of Computing, UNICAMP
(Baranauskas et al., 2005). This adaptation is
• a description of the context of the problem.
• a description of the functional and non
functional requirements.
• an organization of the content: it specifies the
structure and organization of the content into the
In the first activity, the process begins with a
Requirement Engineering phase. Next, an Analysis
phase is performed. Later, the Abstract Interface
model is built. Finally, the target system is
Figure 1 shows the development process. Shows
how models from NDT and from Organizational
Semantic are built following this process. The
OOHDM (Oriented-Object Hypermedia Design
Method) (Rossi, 1996) models are presented in the
Fig. in order to reference the classic models.
OOHDM is one of the most studied approaches.
This approach for web developing is based on
Hypermedia Design Model (HDM) (Garzotto et al.,
1993) a structured approach to model hypermedia
Next sections describe in depth the development
process for Web GIS systems.
3.1 Requirements Engineering
The main goal of the requirement engineering is to
find the real needs of the users. These needs will
drive the implementation of the system under
development. Recent researches have proved that
many software projects have failed due to errors in
requirements elicitation (Boehm). This means that
requirements are often incompletes or
Figure 1: Development process for Web GIS applications
This process introduces the use of the
Organizational Semiotics during the requirement
elicitation to solve that problem (Liu, 2000).
Organizational Semiotics uses a mature set of
techniques present in MEASURE (Stamper, 1997),
for the definition of requirements. This phase
involves a set of workshops among all interested
people. The main objective of the workshops is to
find the actors of the system and the functional and
non-functional requirements. Social, politic, cultural,
and ethics issues of the problem are also considered
(Baranauskas et al., 2005).
Once the requirements have been obtained using
Organizational Semiotics, NDT methodology
(Escalona et al., 2004) is applied for improving
requirements. Actor model, information model and
interaction model are added to the requirements.
3.2 Analysis
The objective of the analysis phase is to detail,
define and validate the requirements. In the NDT
methodology, the analysis phase involves the
definition of two main models: conceptual model
and navigational model. A relational model might be
generated from the conceptual model. The relational
model is useful for the implementation of the
databases of the system under development.
NDT is helpful in the generation of navigational
model for the pages that include information
processing. However, NDT is not helpful for
organizing static information. The Organizational
Content approach is, then, used to complement the
content and models generated by NDT. The
Organization content used has been proposed and
adapted from the ontology diagram by the research
team at Institute of Computing, Unicamp
(Baranauskas et al., 2005).
3.3 Implementation of the Abstract
Interface Model
During the system design phase or abstract interface
generation phase, the design of the pages is needed.
In this phase, the web designer may also use the
artifacts from the analysis phase. This means that the
web designer should use the final navigational
model for implementing user prototypes.
WebMaps is an interdisciplinary project still in
development at the Institute of Computing,
Unicamp. The main goal of this project is the
monitorization and planning of harvests in Brazil.
Several experts of different areas of knowledge
participate in WebMaps, including: image
processing, software engineering, database, geo-
processing, eco-environmental, and computer-
machine interaction. WebMaps integrates
heterogeneous data from several sources. WebMaps
also offers several services to manage all those
information. This system allows defining a base
platform for the designing, implementation and
evaluation of integrated policies of harvests
planning. The system also allows the execution of
queries about the evolution of the harvests for a long
time line.
The WebMaps system is able to generate
Normalized Difference Vegetation Index (NDVI)
curves (CPETC, 2007). A NDVI curve describes the
vegetation indexes for the normalized difference for
a given region. Those indexes show the amount of
vegetation in a concrete time period. Those indexes
are obtained by processing satellite images -
Moderate Resolution Imaging Spectroradiometer
(MODIS) images.
ICEIS 2008 - International Conference on Enterprise Information Systems
The images are obtained periodically, therefore
indexes are always updated. The images cover all
the Brazilian territory during a four years period.
The images have been obtained from NASA
(MODIS, 2007). Every image has a size of 109’6
MB and a new image is obtained every 15 days.
The processing of the satellite images for the
generation of NDVI curves is a slow process. Due
this reason, a set of masks were generated and
applied to the images to reduce the processing time.
The architecture is composed of a client layer and a
server layer. The server is divided into three
modules. All modules have been implemented using
Java and C languages. The first module is in charge
of supporting user and property registration. The
second module supports the queries. Finally, the
third module stores the managed data using
PostgreSQL database and hard disk files.
JSP pages and C modules are stored in the server
side. The goal of C modules is to process the
satellite images and to generate the masks used to
build the NVDI curves, as mentioned earlier. The
curves are generated by taking into account the
query defined by the user. The interaction between C
and Java code has been implemented using the Java
Native Interface (JNI). Benefits of using native code
interfaces in the developing of system are exposed in
(Czajkowski, 2001).
Next paragraphs describe all the phases of the
process introduced in the previous section and show
their application in the WebMaps development.
4.1 Requirements Engineering
This phase was initiated with the application of the
Organizational Semiotics (Liu, 2000) adapted
methods. Several workshops were organized for
eliciting requirements. The workshops were
conducted by requirements engineers and
stakeholders in a cooperative way. Seventeen
participants from several knowledge areas worked
together in the workshops. The knowledge areas of
the participants were: image processing, software
engineering, databases, geo-processing, agro-
ecologic studies, human-computer interaction,
among others. The artifacts of the Organizational
Semiotics were used as communication tools among
workshops. Reference (Baranauskas et al, 2005)
presents in detail the use of the Organizational
Semiotic during the workshops.
The requirement engineering phase uses the
patterns and models developed by NDT (Escalona et
al., 2004) – see Section 2.1. This section only
exposes the application of the process and it does not
show all patterns
First, NDT patterns drive the identification of the
system objectives. The goal of this task is to know
the limits of the problem. Some WebMaps
objectives are: showing data about a concrete
geographical region, working with geo-referential
data, and adapting the system according to user
Once the objectives are identified, NDT proposes
to identify the system requirements. One of the
system requirements are the information
requirements. Those requirements define the
information that the system must store. Once
information requirements are specified, the actors
who will interact with the system must be identified.
Every actor is related to an interaction role. In the
WebMaps system, there are for different user
categories: non registered, registered, coordinator,
and member of equipment.
After the specification of the actors, the
incompatibilities among those actors are analyzed.
The definition of incompatibility is basic, due every
incompatibility may define different interface of the
other interfaces generated for the other actors. The
data that will be stored into the system and the users
that may manage those data have been defined in the
previous activities. However, it is also needed to
know which operations may be performed with the
stored information and which functionalities and
services may be offer to the users.
NDT proposes two diagrams for capturing and
defining the functional needs of the system under
test. The first diagram is the use cases diagram
(Baranauskas et al, 2005). The second one is the
textual information diagram. This diagram is
specified using patterns to define the meanings of
the information.
The use case model of WebMaps was generated
from the artefact obtained in the activities performed
in the workshops and, mainly, from the application
of the Organizational Semiotic. Use cases also show
the interaction of the different actors with the
At this time, the information that the system will
store and the actors that will interact with the system
and the functionality of the system are known and
formally defined. However, this is not enough for
navigational systems. The system must also offer
information and functionality at the right moment.
Furthermore, it defines the most adequate
presentation strategy. The order of information is a
relevant aspect. Those requirements are stored in
interaction requirements. NDT defines the
interaction requirements with two patterns: recover
criteria (or phrases) and visualization prototypes.
Visualization prototypes are defined after the
definition of the phrases. Visualization prototypes
allow specifying expected navigation process into
the system.
Once requirements are identified, they must be
validated. The construction of a traceability matrix is
a value technique which allows validating the results
obtained from the requirement phase.
The requirement engineering phase ends at this
time. The document of system requirement (SRD) is
the final artefact obtained.
4.2 Analysis
The goal of the analysis phase is the definition of the
analysis models: the conceptual and the navigational
model. The conceptual model represents the static
structure of the system, while the navigational model
represents its navigational structure. NDT describes
a systematic process that allows generating both
models from the artefacts obtained in requirement
engineering phase.
The conceptual model is composed of a single
diagram. This diagram is represented by two
elements: the conceptual classes diagram and the
information dictionary. The conceptual classes
diagram uses the notation proposed by UML. The
information dictionary describes, in a textual way,
the meaning of classes and associations from the
conceptual class diagram.
Once the static structure of the system has been
created, the navigational model is defined. The
navigational model represents how to navigate
through the conceptual information. This model is a
view of the conceptual model. It represents the
elements of the navigation and their relations. The
navigational model may be quite different depending
on the roles of the user logged into the system. As
mentioned before, NDT proposes a set of process to
generate this model systematically.
NDT describes the elements of a navigational
model using patterns, in the same way that models
used in the previous phases. After the definition of
the basic navigation model, a revision of the model
is needed. In the case study, we found out that the
navigation model generated involves the dynamic
information navigation as well as information that
need to be processed by the server. However, it was
detected the lack of a navigational model for the
static content. The Organizational Semiotics offers
an artefact to solve this limitation. Figure 2 shows
the relation between the ontology model with the
system content. Those models were generated by the
human-machine interface engineers of WebMaps
(Baranauskas et al., 2005).
Figure 2: Ontology model (Baranauskas et al, 2005).
The ontology model presents a context that
involves concepts and terms used in the problem
domain. A more complete description about the
generation of those models can be found in
Baranauskas et al, 2005. Main menus of the system
are generated from the product obtained after the
application of Organizational Semiotics adapted
methods. Now, it is possible to build the final
navigational mode, shown in Figure 3. The basic
navigational model is associated with the main
menus of the system.
4.3 Abstract Interface Model and
In this phase, a web designer collaborated with the
WebMaps team. The web designer built the abstract
interfaces. The language used was Java.
Figure 3: Final navigational model.
As WebMaps is a Web GIS system, it needs
large data processing. Reference (Torres-Zenteno et
ICEIS 2008 - International Conference on Enterprise Information Systems
al., 2006) presents the functional testing of
WebMaps. The goal of the test process was to
determine if the behaviour of the system is similar to
that one indicated by the functional requirements.
This paper has presented a development process
model focused on Web GIS applications. The model
integrated artifacts from NDT and artifacts from the
Organizational Semiotic. This process was applied
to a real system called WebMaps. This system is a
Web GIS application, which main goal is to support
harvest planning in Brazil.
After the application of the process, a functional
prototype of WebMaps was obtained.
The system requirements document and analysis
document were created following the indications of
the process. Both documents were not included in
this paper due space limitations. However, this paper
has shown examples of the most relevant models to
improve the understanding of the process.
We are currently defining the conceptual model
of the geographic data. We plan to add this model in
the proposed development process.
This work was supported by CNPq, CNPq
WebMaps project, FAPESP, and CAPES.
Aronoff, S., 1989. Geographic Information Systems. WDL
Publications, Canada.
Baranauskas, M. Cecilia C., Schimiguel, Juliano, Simoni,
Carlos A., Medeiros, Cláudia B., 2005. Guiding the
Process of Requirements Elicitation with a Semiotic-
based Approach – A Case Study, HCI – International
Boehm, B., 1981. Software Engineering Economics,
Bull, G., 1994. Ecosystem Modelling with GIS.
Environmental Management. 18(3):345-349.–438.
Czajkowski, G., Daynes, L. and Wolczko, M.: Automated
and portable native code isolation. Software
Reliability Engineering, 2001. ISSRE 2001.
Proceedings. 12th International Symposium on 27-30
Nov. (2001) Page(s):298 – 307.
CPTEC, http://satelite.cptec.inpe.br/ndvi/, última visita:
septiembre de 2007.
Escalona, M. J., 2004. Modelos y técnicas para la
especificación y el análisis de la navegación en
sistemas software. PHD Thesis. Escuela Técnica
Superior de Ingeniería Informática. Universidad de
Garzotto, F., Schwabe, D. and Paolini P., 1993. HDM-A
Model Based Approach to Hypermedia Application
Design. ACM Transactions on Information System, 11
(1), pp 1-26.
Kim, Do-Hyun, Kim, Min-Soo, 2002. Web GIS service
component based on open environment. Geoscience
and Remote Sensing Symposium, IGARSS '02. IEEE
International Volume 6, Page(s):3346 - 3348 vol.6.
Liu, K., 2000. Semiotics in Information Systems
Engineering. Cambridge University Press, Cambridge.
Macário, Carla, Medeiros, Claudia, Senra, Rodrigo, 2007.
IX Brazilian Symposium on GeoInformatics - Geoinfo
2007 p.239-250.
MODIS, Moderate Resolution Imaging Spectroradiometer,
http://modis-atmos.gsfc.nasa.gov/, última visita:
septiembre de 2007.
Stamper, R. K., 1997. Organizational Semiotics. In
Mingers J. & Stowell F. (eds.) Information Systems:
An Emerging Discipline. Mc Graw Hill, 267-283.
Rossi, G., 1996. An Object Oriented Method for Designing
Hipermedia Applications. PHD Thesis, Departamento
de Informática, PUC-Rio, Brazil.
Torres-Zenteno, A., Martins, E., Escalona Cuaresma M. J.,
Torres da S, R., 2006. Teste de Desempenho em
Aplicações SIG Web. IX Workshop Iberoamericano
de Ingeniería de Requisitos y Ambientes de Software
IDEAS’06, 449-462. Argentina.
UML, Unified Modeling Language. http://www.uml.org/,
última visita: septiembre de 2007.