A PRACTICAL EXPERIENCE WITH NDT
The System to Measure the Grade of Handicap
M. J. Escalona, D. Villadiego, J. J. Gutiérrez, J. Torres, M. Mejías
Department of Computer Languages and Systems. University of Seville. Seville, Spain.
Keywords: Web Engineering, Practical Experiences.
Abstract: The necessity of applying technological advances in the medicine environment is an unquestionable fact. In
the last years, important applications of new technologies in medical systems to help doctors or to make
easier the evaluation, the treatment or, even, the relation between the doctor and the patient have been
presented. However, there is sometimes an important gap in the development of these new systems. The
specific and complex features of the medical environment often complicate the communication between
doctors, when they require a new system, and experts in computer science. This work introduces a
methodological proposal to specify and analyze software systems. Its main goal is to make easier the
communication between final users and customers and the development team. The report presents our own
practical experience by the application of this methodology in a real system to measure the grade of
handicap in patients following laws in Spain.
1 INTRODUCTION
The application of Computer Science and
technological advances in any area is always a step
forward in the evolution of this area. In the medical
environment, this evolution is really important
because it is oriented to improve the treatment of the
patient.
However, when systems are very complex or
specific in their vocabulary, in its requirements or
even in its objectives, the communication between
experts in Computer Science and experts in the
system makes the project very difficult and
expensive (Sommerville, 2002) (Pressman, 2002).
Most systems developed in the medicine
environment present this problem.
In the department of Computer Languages and
Systems of the University of Seville, a new
methodology named NDT (Navigational
Development Techniques)(Escalona, 2004) has been
developed. This methodology works in the first
phases of the life cycle of a software project:
requirements and analysis, and its main objective is
to make easier the communication between users,
customers and the development team.
NDT has been applied in several real environments
and several real projects that are being used
nowadays(Escalona, 2004). However, a medical
project was a great opportunity to validate our
methodology. In this work, we present an abstract
about the application of NDT in the development of
a system to measure the grade of handicap following
Spanish laws.
The report starts, in section 2, with a description of
the problem to solve in the project. In section 3, a
global vision of NDT is presented and section 4
reports the final obtained system and the application
of NDT in its development. Finally, in section 5,
conclusions, future works and final evaluation are
presented.
2 THE PROBLEM TO SOLVE
In the Royal Decree 1971/1999 (23/12) the Ministry
of Social Issues in Spain defined how to evaluate the
grade of handicap of a patient in order to get a level
of handicap. This level of handicap is essential for
an patient because, depending on this grade, he/she
gets subsidies, helps or special cares in Spain.
However, the application of this Royal Decree is
not easy. To grade the handicap grade of a patient,
doctors not only have to assess the handicap itself,
but also its consequences for the patient. For
instance, a patient who cannot walk can also have
psychological problems as a result of his/her
physical problem.
212
J. Escalona M., Villadiego D., J. Gutiérrez J., Torres J. and Mejías M. (2006).
A PRACTICAL EXPERIENCE WITH NDT - The System to Measure the Grade of Handicap.
In Proceedings of the Eighth International Conference on Enterprise Information Systems - ISAS, pages 212-217
DOI: 10.5220/0002442502120217
Copyright
c
SciTePress
In this sense, the Alcer Foundation (Alcer, 2005)
suggested to the Madeira group, at the University of
Seville, to develop a system that facilitates the
handicap grading process for doctors and patients. In
September 2003, Madeira group and Alcer
Foundation started to develop a new web system.
The development of this system was not easy for
several reasons:
The system was very new. There was no previous
experience in that, so the development environment
was very difficult for the development team.
The terminology of the system was very complex
and close to the medical environment. This was a
problem for the computer science ones because they
did not have specific formation in this area.
For all these reasons, the working environment
could be defined as a very complex one for the team.
Techniques to specify, analyse or design the system
must be suitable for users and customers and also for
the development team.
3 INTRODUCING NDT
NDT is a methodological proposal to specify and
analyse requirements in web systems. This proposal
is focused on two main aspects (Escalona et al.,
2003)(Escalona et al., 2004)
The first one is that web systems have special and
critical characteristics. It is why in web
development, these special characteristics have to be
dealt with special methods and techniques suitable
for them (Barry & Lang, 2001) (Retschitzegger &
Schwinger, 2000) (Escalona & Koch, 2004).
The second point is that in web system, it is
usually necessary a good communication between
final clients, the experts in the system subject and
the development team because only the users know
how the system must be.
NDT is a methodological process in the web
environment that it is focused on the requirements
and analysis phases. It offers a systematic way to
deal with the special characteristic of the web
environment. NDT is based on the definition of
formal metamodels, presented in (Escalona, 2004),
that allow to create derivation relations between
models. NDT takes this theoretic base and enriches
it with the necessary elements to define a
methodology: techniques, models, methodological
steps, etc. in order to offer a suitable context to be
applied in real projects.
In this sense, NDT starts with the theoretic
definition of the requirements engineering
metamodels and proposes a methodological
environment to drive the team in the capture,
definition and validation of requirements following
the next ideas:
1- In the elicitation of requirements NDT
assumes its own techniques inherited from
the requirements engineering environment
like interviews, brainstorming or the study
of the previous systems (Duran, 2000).
2- In order to describe requirements, NDT
uses some standard models, like the use
cases, and patterns. A pattern is a special
template with predefined fields that must to
be completed between the development
team and final users (Escalona, 2004).
3- In the validation of requirements, NDT also
proposes a group of techniques like the
traceability matrix (Duran, 2000) or the
fuzzy thesaurus (Mirbel, 1995) adapted to
NDT patterns in order to propose a more
agile requirements validation (Escalona &
Cavarero, 2005).
NDT also normalizes the structure of the results
that must be developed during the requirements
engineering and it proposes which are the complete
structure of the document.
With the theoretic base of metamodels and
relations, the next phase is the analysis one. In the
analysis phase three models are generated:
1- The conceptual model, that defines the
static structure of the information and its
relations.
2- The navigational model, that defines how
users can navigate through the information.
3- The abstract interface model is composed
by a group of HTML and XML prototypes
that let validate the conceptual and
navigational models.
However, the generation of these three models is
made in two phases. In the first one, analysis models
are generated systematically from the requirements
using the theoretic relations defined between
models. In this sense, NDT can be defined as a
model driven proposal. These models are named
basic analysis models.
In these basic models, analysts can make some
changes in order to make more suitable these
models, getting the final analysis models. The
construction of these final models is not systematic
and they depend on the experience of the analyst.
NDT offers some guides and processes in order to
make easier the analyst’s revision.
Besides, NDT controls that the changes proposed
by the analyst are agree with the definition of
requirements. In this sense, NDT manages that the
final analyst models and the requirements definition
A PRACTICAL EXPERIENCE WITH NDT - The System to Measure the Grade of Handicap
213
are consistence. In figure 1, the NDT life cycle is
presented with an activity diagram.
Final models generated in NDT are compatible
with other proposals like UWE (Koch, 2001) or
OOHDM (Rossi, 1996). For this reason, from them,
the development team can continue the life cycle
with these other proposals that have been widely
accepted by the research community.
In conclusion, NDT can be define as a
methodology to the requirements and analysis
phases, the rest of the life cycle is dealt with other
important proposals, thus it is not necessary to work
more on them, like it is shown in the comparatives
studies. NDT is offered to cover a gap in the
treatment of the life phases in the Web Engineering
(Desphande et al., 2002).
Finally, it is important to stick out that NDT has an
associated tool, named NDT-Tool (Escalona et al.,
2003) that supports all the life cycle of NDT. This
tool lets automate all the systematic processes of
NDT, apply all its techniques and get the results
automatically.
4 THE FINAL SYSTEM
The development of the system to measure the grade
of handicap was an mportant test for NDT. The
development environment was very difficult: the law
was very new, there was no any previous system to
apply it, the terminology of the users (medicine,
illness, etc) was really difficult for the development
team, etc. In conclusion, a great real experience to
prove if NDT really ensures communications with
the user.
The essential idea of the system is shown in figure
2.
The handicapped patient, once finished the
treatment and following the indications of his/her
family doctor, visits various specialists who has to
value his different health problems (physical and/or
psychological) derived from his illness. This
communication is represented in figure 2, steps 1
and 2. Specialist can advise the visit to another
specialist who values another aspect of his/her
handicap. Each specialist completes his/her own
evaluation. Each partial evaluation is stored in the
system, which is offered through Internet. This is
represented in figure 2, in step 3.
When the process of evaluation is finished the final
evaluation report is automatically generated by the
system. It can be generated by the patient’s family
doctor or by any specialist. This final report, which
is structured following the Royal Decree rules, is
presented by the user to the Spanish Government
who defines the grade of handicap and calculates the
compensations, payments or subsidies for the
patient.
The interface was an important aspect of the
system. The law covers various systems, physical
aspects so as psychical, and includes a great
complexity. Each specialist only must access to the
matter that is called on to him/her to evaluate, but,
also, he/she
must be able to access to consult other evaluations
made by other specialists of an agile way.
In order to present all the information, the system
is structured like a tree. Each leaf of the tree
represents the possible damage of a subsystem of the
patient: the skeleton-muscular system, the nervous
system, etc. In figure 3 an example of the digestive
system is presented (
The system is developed in Spanish, for
that reason the screen is in Spanish)
.
In each lead, the specialist found each piece of
information that have to be valued for each patient
according to the Royal Decree. The tree is always on
the left side and, when a concrete lead is selected all
the information about this concept is presented on
the right side.
Figure 1: NDT Development Process.
Deal with requirements
Capture
Define
Validate
correct?
Capture
Define
Validate
correct?
no
yes
Analyse
Generate basic
models
Generate
final models
Generate basic
models
Generate
final models
inconsistent?
yes
no
Figure 2: Schema of the system behaviour.
ICEIS 2006 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
214
This form of interaction with system is very
comfortable and intuitive for the doctor. The tree
displays all the information covered by the law but
in a structured way according to the different body
systems. All the details and casuistries indicated in
the law, as well as the restrictions to follow by the
doctors are controlled by the system, not allowing
inconstancies or errors. In addition, as the tree
appears as the Windows Explorer turns out very
intuitive to use by the doctors.
The final result has had a great acceptance, but it
would not have been possible to arrive at it without a
methodological initial study of the system. In this
point, the NDT use has been fundamental. NDT
patterns have been a great technique of
communication that has made more fluid the
enclosed work between the users and the
development team.
Once the objectives were defined, the information
storage requirements or, what is the same, the
information that had to cover the system according
to the law, began to be defined. These data were
presented in patterns similar to the one presented in
table 1.
Specific data describe each concrete piece of
information that must be stored for each patient. For
each piece of specific data its name, a short
description about its meaning and its nature that
describes the structure of this piece must be defined.
There are some classical natures like string or
integer, but there are also some advanced natures.
For instance, in the field “actual treatment” the
nature is RA-02. This means that the structure of this
piece of data is described by requirements RA-02,
another storage requirement, which is also defined in
the system.
When the group of storage requirements was
defined, the next step was to set up the different
roles of users that could interact with the system. In
this point, only two actors were defined: the doctor
and the administrator. The first one could only
manage users’ information. When a new doctor
wants to use the system, he/she has to ask for
permission to the administration. The second one,
the doctor, could access to any information of the
system. Nevertheless, it was important to find some
structured form to show all the information.
The next step was to study the functionality of the
system. The system did not have a very complex
functionality. Basically:
¾ To manage information about patient and
his/her evaluation and treatment.
¾ To generate the final report following the
restriction of the law.
The most critical aspect of the system was to
establish a good navigational structure that allowed
to access to the information in an easy way. In this
point, the study of the interaction requirements was
fundamental.
With the definition of the interaction requirements
patterns, the development team and the users
decided to structure the information in the different
Figure 3: A screen of the system.
A PRACTICAL EXPERIENCE WITH NDT - The System to Measure the Grade of Handicap
215
organic system presented in each lead of the tree
shown in figure 2 (Muscle-Skeleton, nervous
central, cardiovascular, peripheral-vascular,
respiratory, digestive, and others).
In the last step, some other requirements like the
necessity of security in the treatment of the
information were defined.
The complete application of the NDT to this
system, all patterns and diagrams can be found in
(Villadiego et al., 2004). Nevertheless, observing the
pattern of table 1 some conclusions can obviously be
obtained.
Table 1: An example of pattern in NDT.
RA-01 Patient’s information
Description This pattern describes what information must be
stored for each patient in the system. Concretely:
Name and description Nature
Name: It stores patient’s name. String
DNI: It stores patient’s number of
identity national document..
Integer
NSS: It stores patient’s number of the
Social Security.
Integer
Born Data: It stores patient’s born
data.
Date
Phone number: it stores patient’s
phone number.
Integer
Weigh: It stores patient’s weigh. Integer
Height: It stores patient’s height. Integer
Actual treatment: It stores all the
information about the actual treatment
of the patient.
RA-02
Specific
Data
Specialists’ evaluation: It stores all
the information about the validation of
the grade of handicap made by
specialists.
RA-03
Although each pattern for each requirement is
different and here it was only presented the storage
information requirements one, everyone follows the
same structure and all of them look for collecting the
necessary information in the simplest way.
For that reason, the patterns are easy to understand
by the end user, in this case the doctors. The
terminology used in the fields and the descriptions
has been completed according to the argot of the
system.
But the patterns are also extremely useful for the
development team that finds in them a structured
definition of the requirements
This structured definition is very important in the
following phases of the life cycle. In fact, NDT
proposes systematic processes to go from the
patterns to the analysis models.
In this system, with NDT-Tool, a conceptual class
diagram, a navigational class diagram and the
prototypes of the system were derived automatically
from the set of patterns.
The automatic attainment of results trimmed the
time of development and, therefore, the cost of the
project. In addition, the prototypes resulted helpful
to validate the results with the user.
While the definition of requirements was made
with the user and validated by this one already from
first phases of the life cycle, the rest of the process,
design and implementation, was a pure task of the
development team. This one was fundamentally
based on the structured definition of requirements.
In general, although the work in the requirements
engineering supposed a concerted effort for the
team, it was compensated by the reduction in price
and the quality of the results in the later phases.
5 CONCLUSIONS AND FUTURE
WORKS
This paper presented a real and a practical
experience with our methodology, NDT. This
application has been very important in this project in
several aspects. The first one is to value if NDT and
its techniques and models were efficient to deal with
complex development environment. We have got
very good results in that. Patterns offer a good way
of communication with the users and make easier
the work between users and the development team.
By other way, the automatic generation of models
in the analysis of NDT makes shorter the
development time. To get automatically some
prototypes of the system is a good technique to
evaluate requirements with users. The disadvantage
we have to stick out is that the maintenance of
patterns can be sometimes very complex and
expensive for the system. For this reason, we
concluded that, mainly in complex projects, it is
necessary the use of NDT-Tool to manage patterns.
As a contribution for the medical environment, the
final system has resulted in a complete success. It is
being used by a lot of specialist in Andalusia (in the
south of Spain) and it is being adapted to be
accepted in all the country.
As a future work we are thinking to apply some
statistical and data mining techniques, obviously
keeping the patient’s anonymity. Thanks to these
techniques, we hope to find relations between
illnesses. For instance, to establish rules like “if a
patient has lost his leg and he/she has not worked for
several years, he/she will probably have some
psychological problems”.
ICEIS 2006 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
216
It could be a good guide for the family doctor or
specialists to get the most suitable and complete
evaluation for the patient.
As final conclusion two ideas can be stuck out.
The first one is the importance to keep a good
communication between researchers in computer
science and medicine. The computer science
community has to validate its approach in real
projects to sure the value of its results. Also,
medicine community must incorporate, as much as it
is possible, the technological advances in its works
to obtain the best results. The second main idea is
that the team work between these research areas can
get good projects and results that help patients and
their families and make easier the application of
treatment, the granting of helps and, in general, the
dealing of their health problems.
REFERENCES
Federación Andaluza Alcer (Asociación para la Lucha
Contra las Enfermedades del Riñón). www.alcer.info
Barry, C., Lang, M. A Survey of Multimedia and Web
Development Techniques and Methodology Usage.
IEEE Multimedia. 2001.
Ceri, S. Fraternali, P., Bongio, A., Brambilla M., Comai
S., Matera M. Designing Data-Intensive Web
Applications.Morgan Kaufman. 2003
Deshpande, Y., Marugesan, S., Ginige,A., Hanse,S.,
Schawabe,D., Gaedke, M, B. White. Web
Engineering. Journal of Web Engineering. Vol. 1 Nº 1.
pp. 3-17. Rinton Press. 2002.
Durán A. Un Entorno Metodológico de Ingeniería de
Requisitos para Sistemas de Información. Ph. Thesis.
Dep. de Lenguajes y Sistemas Informáticos. Uni. de
Sevilla. 2000.
Escalona, M.J. Modelos y técnicas para la especificación y
el análisis de la navegación en sistemas software. Ph.
European Thesis. Depart. of Computer Languages and
Systems. University of Seville. October 2004.
Escalona, M.J, Mejías M, Torres J, Reina A.M. The NDT
Development Process. Proceedings of IV International
Conferences on Web Engineering. LNCS 2722. pp.
463-467. Springer Verlag 2003
Escalona, M.J, Mejías M, Torres J, Reina A.M. NDT-
Tool: A tool case to deal with requirements in web
information systems. Proceedings of IV International
Conferences on Web Engineering. LNCS 2722. pp.
212-213. Springer Verlag 2003
Escalona, M.J., Mejías, M., Torres, J. Developing systems
with NDT & NDT-Tool. 13th International
Conference on Information Systems Development:
Methods and Tools, Theory and Practice. Lithuania.
September 2004
Escalona, M.J., Koch, N. Requirements Engineering for
Web Applications: A Comparative Study. Journal on
Web Engineering, Rinton Press, 2004, Vol2. Nº3. pp
193-212.
Escalona, M.J., Cavarero, J.L. Building Class Diagrams
Systematically. 13th International Conference on
Information Systems Development: Methods and
Tools, Theory and Practice. pp. 378-381. Karlstat,
Sweden. August, 2005.
Koch, N. Software Engineering for Adaptive Hypermedia
Applications. Ph. Thesis, FAST Reihe Softwaretechnik
Vol(12), Germany 2001
Mirbel, I. A fuzzy thesaurus for semantic integration of
schemes. International workshop on engineering
design : AI system for conceptual design, Ambleside,
England, March 1995.
Pressman, R.S. Ingeniería del Software. Un enfoque
práctico. Mc Graw Hill, 2002
Retschitzegger, W. & Schwinger, W. Towards Modeling
of Data Web Applications - A Requirement´s
Perspective. Proceedings of the American Conference
on Informatin Systems AMCIS 2000, Vol 1, 149-155.
Rossi, G. An Object Oriented Method for Designing
Hipermedia Applications. PHD Thesis, Departamento
de Informática, PUC-Rio, Brazil, 1996
Sommerville, I. Software Engineering.
Addisson Wesley,
2002.
Villadiego, D., Escalona, M.J., Torres, J., Mejías, M.
Aplicación de NDT al sistema para el reconocimiento,
declaración y calificación del grado de minusvalía.
Report interno LSI-2004-02. Departamento de
Lenguajes y Sistemas Informáticos. Universidad de
Sevilla. June 2004.
A PRACTICAL EXPERIENCE WITH NDT - The System to Measure the Grade of Handicap
217