Rapid Web Application Development and Modeling Bas
Rapid Web Application Development and Modeling Bas
discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/267163542
Article
CITATIONS READS
0 11
1 author:
Attila Adamkó
University of Debrecen
29 PUBLICATIONS 68 CITATIONS
SEE PROFILE
All content following this page was uploaded by Attila Adamkó on 30 March 2015.
Attila Adamkó
Abstract
Recently, many authors have argued that the demand for methods for
the development of small and medium sized Web applications has emerged.
However, the difficulty of developing these applications increases as the num-
ber of technologies they use increases and as the interactions between these
technologies become more complex. In this paper we present a design method
for Web applications which utilize UML and XML technologies to reduce this
complexity. Because there are several different types of Web applications, we
are focusing only a smaller part, specifically the Information System class of
the Web Information Systems. Our approach takes into account the data-
oriented aspects of these applications by creating a UML profile adapted for
the problem domain.
Rapid development is enabled by providing roundtrip engineering capabil-
ities with support for automatic code generation. We will explain the role of
the XML technologies, how could we apply different transforming stylesheets
to transform UML design models to different XML documents to represent
platform specific models utilizing the XMI (XML Metadata Interchange) for-
mat.
Utilizing these technologies reveals an advantage of our proposed method
that several steps can be performed in a semi-automatic way providing rapid
development and prototyping.
Categories and Subject Descriptors: D.2.10 [Software Engineering]: Design;
D.2.11 [Software Engineering]: Software Architectures; H.4.3 [Information
Systems Applications] Communications Applications
Keywords: MDA, Web application, Web modelling, XML, XMI, UML
1. Introduction
With the evolution of technologies the early static web sites are changing into
Web based distributed applications. However, the reorganization and the devel-
163
164 A. Adamkó
cess but they offer little help for modelling the specialities of Web applications
because they only include low level implementation elements like Servlets, Java
Server Pages or HTML pages. We need more abstract modelling elements for nav-
igation, presentation and user interaction but they are missing or too special for a
given technology. Therefore, our proposed method deals with theses specialities of
the Web applications using a UML profile adapted to the problem domain.
Asymmetrical Symmetrical
communication communication
Objective Information Information
information Provider System
Persuasive Advertisement Community
information
Figure 1: Four perspectives on WIS
2. Design Strategies
There are numerous different approaches available for modeling Web applica-
tions as we mentioned in the introduction. Some of them focus on the modeling
notations, while others focus on the development process. Of course, Web appli-
cation development is not only supported at the conceptual level, but there are
several software tools available also, like Together Designer from Borland and Ra-
tional Rose from IBM.
However, the methodologies and the tools sometimes do not follow the same way.
We could apply a methodology or use a given tool if they meet our requirements,
but usually we need to make trade offs because something will not appropriate
for us. Moreover, there are several low-level design considerations built into these
development processes, so if we choose one our hands will be tied to it.
In contrast, if we would like to achieve greater independence in the develop-
ment process we need to use tools that could be independent from specific low-level
things. Here comes into the picture the MDA (Model Driven Architecture) devel-
opment process. Within MDA the software development process is driven by the
activity of modeling your software system.
2.1. MDA
The MDA development lifecycle is very similar to the traditional lifecycle. The
same phases are identified, but the main difference lies in the nature of the artifacts
that are created during the development phases. The artifacts are formal models
providing a given aspect of the system.
The first MDA model is a model with high level of abstraction that is inde-
pendent from any implementation detail. This is called a Platform Independent
Model (PIM). The PIM models are giving viewpoints of how the system will sup-
port the business. These models do not take care of implementation details like
relational databases, application servers and so on. They just concentrate on the
formalization of the requirements.
The next step is the transformation of these models into one or more Platform
Specific Models (PSMs). The transformation process will deal with the available
implementation technologies. For each specific technology a separate PSM is gen-
erated because most of the systems today span several technologies.
The final step in the development process is the transformation of each PSM to
code. Because a PSM fits its technology rather closely this transformation could
be done relatively easy.
The MDA also defines how these relate to each other. The most complex step
is the transformation of the PIM into one or more PSMs. In our point of view –
development of WISs – we need to consider the development processes and design
strategies of Web applications.
MVC We know that several similar problems could occur again and again in the
development process and we know that the design patterns could help to reuse
successful design and architectural solutions. In the design of Web applications a
Rapid Web application development . . . 167
business logic and furthermore, they could be used to derive program modules and
code skeletons. Of course, we have a simpler case when we need to develop a system
for an existing database. In this situation, the structural model is deeply bounded
for the data structure, and we need to focus on the performable data management
tasks.
Additionally, there exist further important factors like performance or availabil-
ity. These aspects could influence our modeling method, and further researches will
consider these factors. However, at this time we are focusing on platform indepen-
dent models leaving untouched state models and page handling scenarios (sequence
diagrams).
greater than one. However, there could be some conceptual classes that are not a
visiting target in the use-case model. It is irrelevant in the navigation model and
therefore it is omitted in the navigation diagram. The navigation inside the Web
application occurs along the associations, which are used to describe the relation
between navigation classes. These associations will appear as hyperlinks in the
user interface.
We could design proper models if we extend our navigation model with some
notations, like index, query and menu as we can found in UWE [6]. This new model
could serve as a background of the automatically generated navigation system.
Unlike UWE, we do not use new graphical notations in the diagrams; instead we
pick up new attributes extended with stereotypes to describe their functionality in
the navigation.
be transformed to the desired output format using XSLT. The structure of the
opening page for each user also could be derived from to related use cases.
4. Code generation
These models help to comprehend the problem domain, but these models would
offer more complex support if we could generate from them a working prototype of
the desired Web application. Naturally we agree that UML models are supposed to
be abstract, but it is not uncommon for a UML model to capture almost as much
technical information (transforming PIM to PSM). Our approach could be seen in
Figure 4.
5. Further possibilities
In this paper we have illustrated how data-oriented Web applications differ from
traditional software, how complex and not at all systematic tasks. We have intro-
duced a new methodology to help develop Web applications rapidly and effectively
based on UML and XML technologies supporting data management task in small
and medium sized projects. We have added some remarks in the implementation
phase utilizing XML technologies to develop modular, scalable and expandable
Web based systems. Ongoing researches can go in several interesting research di-
rections in the design and development phase. We are going to study the additional
expandability of our UML based methodology.
References
[1] Ginegi, A., Murgesan S., The Essence of Web Engineering, in IEEE Multimedia,
Vol. 8 no. 3 (2003).
[2] Schwabe, D., A Conference Review System. 1st Workshop on Web-oriented Software
Technology, (2001).
[3] Holck, J., 4 Perspectives on Web Information Systems, in Proceedings of the 36th
Hawaii International Conference on system Sciences, IEEE, (2002).
172 A. Adamkó
[4] Gnaho, C., Web-based Information Systems Development – A User Centered Engi-
neering Approach, Lecture Notes in Computer Science, (2001).
[6] Hennicker, R., Koch, N., A UML-based Methodology for Hypermedia Design.,
UMLť2000, LNCS 1939, Springer Verlag, (2000), 410–424.
[8] Schattkowsky, T., Lohmann, M., Rapid development of modular dynamic web
sites using UML, In Proc. of 5th International Conference on UML 2002, Springer,
LNCS 2640, (Oct. 2002), 336–350.
Attila Adamkó
Department of Information Technology
University of Debrecen
H-4010, P.O. Box 12, Debrecen
Hungary