Printer Friendly

Case study on highlighting quality characteristics of maintainable web applications.


Building websites require maintenance approach for the design and implementation structures at both logical and physical level. This feature provides to web application maintainability with greater flexibility and significantly increases usability. The life cycle of Web applications is amended by adding the complexity of a maintainable structure. The case study presented highlights the basics of implementing a maintainable structure and represents a quality feature in web applications development.

Keywords: web applications, maintenance, maintainable application

Maintainability feature is implemented on three structure levels in the logic of the Infos application case study:

* - Presentation by implementing the concept of visual themes that provides adding, changing and interchanging user interfaces working with functions provided while the application is running;

* - The business through the implementation of rules and procedures which reuses data structures between modules with different functionality that provides a high degree of compatibility between components and standardization of components used in the application;

* - Level data access by implementing classes that mediates and standardizes ADOdb database connections to optimize processing and source code writing.

Management organizes structured interface display system with visual themes and required specific distributed applications by managing how visual content distribution. Look of distributed online implementation is designed as themes of view. Interfaces as the theme or themes are independent of content viewing application.

By means separation visual theme aspect of application interfaces to the content that is stored entirely in the database, which is shown by various techniques in dedicated areas. In the levels of organization of visual themes distributed applications are placed in the presentation logic.

The technical characteristics of visual themes implemented in application Infos are:

* - Coding aspect is accomplished using HTML and DHTML dynamic peopled by functions written in PHP language program;

* - Visual themes contain content areas dedicated typologies such as small block areas for menus, small block for various content areas, areas containing large block detail;

* - Dynamic generation of interfaces is achieved by viewing type classes Smarty;

* - Visual themes programmatic structure is stored in the database for user personalization storage limits only the database file contents remain unaltered;

* - Structure and content sharing blocks is modified directly from the administration panel of the application.

Using the structure and components of visual themes related interfaces described maintainable application provides character infos. It provides design, in parallel with the existing new interfaces that are accessible only by a certain group of people to final validation. In this way the new interfaces are tested until the final validation of the real system and existing data sets updated database.

The defining visual elements composing themes are blocks of text, references, colours and menus.

Text blocks are characterized by position, size and content. This element of visual displays information topics chosen by the user or the administrator default distribution. There is a standard visual theme originally constructed which is then customized by users by activating and location blocks with desired content. The blocks contain visible elements of reduction and enlargement to ensure user interactivity with blocks of application.

References located inside the visual themes are characterized by colour and appearance. References are called links html links through which navigates the hierarchy of sections within the application. Users change the visual theme custom colours and look for matching references to the rest of the components. Altered appearance of references related to the length and size of the display. These changes depending filling visual field information whose significance is greater than a reference sequence, the latter limited to a strict number of characters.

Figure 1 presents the defining elements of a graphical visual themes application for use of facilities Infos visual themes outlining the position of the blocks, menus, text areas, and colour references.


Figure 2 shows a section of the application that blocks his position swapped main area dedicated text in full.


A colour employs colour palettes used in displaying visual themes. The use of certain combinations of colours in the palettes to make sure that they are put types of text such as the colours and backgrounds. Display text in blue over dark blue backgrounds causes a strain to read the text leads to the impossibility of distinguishing between text and backgrounds involved. Colours are chosen by users through a conditional action that supports the realization of the contrast between the elements of colour changes.

Menus employs blocks or areas dedicated for displaying references that point to the main sections of the application. Menus display level involves both singular referential and referential display hierarchical structures. By displaying singular reference level reference is made to the main sections of the application while the reference display hierarchical structures such reference is made to the main sections and for sections located on different levels. Location menus are accomplished by blocking position by the designer or user customized moving to another area of application.

For custom visual themes emphasizing maintainability testing whether a visual theme relates easily by determining the differences between all the components chosen by two users selected refereed. By components is meant components which are packet types are characterized by blocks, and the placement text.

The existence of eight components characterized by the modified blocks containing information involves incorporating elements of remote access and types of text added internal users PU5 the internal database as described in Table 1.

Table 2 presents the frequency of choice of components by two different users randomized to test differences in the activation and use of components between users.

To determine differences in use is calculated Nftcuk total frequency selection components for each k user and TNftcu overall total frequency selection. Table 2 shows that levels

Nftc[u.sub.1] = 9

Nftc[u.sub.2] = 14.

Difference |[DELTA]Nftc[u.sub.j]| = 5.

The value of the difference | [DELTA]Nftcuj | moves away from zero the greater the level of use of the facilities available in the combination of the components of visual themes that suggest ease of use in customizing visual themes. The existence of frequency components whose selection is equal to or tends to 0, determines that component removal and replacement with a new component with different content or content as the first version.

The management of modular structure necessary to achieve effective maintenances is the display components by extraction of the filtered data based on content update and content.

Display is carried out by extracting this content from the database. For each type of publication is created a template on which displays HTML content. Each template contains a set of sub- types display as follows: template to display the list of publications; template to display each page of which references are included in the list of publications; template printable version of each page.

Each list of publications is filtered based on the selection criteria information, including field searching for words or combinations of keywords and display reactive to user behaviour. By reactive display means displaying the types of blocks whose occurrence is linked to a set of keywords set by the application administrator.

Updating content is performed by two management modules series image and content.

Management mode image series, m9 InfoFoto, manage photo albums defined hierarchical structure. Series image is loaded directly from the application interface, and automatically generating different sizes for each image: big size - the original term - the preview small - thumbnail (icon). Each image is stored in the database along with the data of technical properties of each image, and the title, description and keywords. These files are available for upload to allow insertion in any kind of publication within the application to users who have permissions from the publisher high level 1 inclusive.

Structure, m5 InfoStiri content management module types of publications is designed with accessibility in hierarchical and has implemented a management system of information flow. So based on the rules and permissions created for the requirements of the target group are designed levels and formats of input interfaces for each group of user accounts. Each publication is attached lists with sub- lists for subsequent filtration containing a number of other sub- publications thus creating a hierarchy of publications. Types of publications they attached a history of all updates made on it. System administrators and editors of level 2 are inserted under each publication a tabular zone that displays this history. On request to view any of the intermediate stages through which passed a certain publication in the process of updating the content publication, various quality control for information flow. Figure 3 shows how the display changes made history for the news and the distribution of hits in calls direct from search engines.


Distributed application maintainability research provided Infos define tables structure TS = {ts1, ts2}. Infos Application modules that share the same data structure from the set TS causes several types of features and utilities applied. Table 3 shows the structure TS1 containing common fields used by classification modules differ between these sections.

Table 4 shows the structure of TS2, modules used to monitor access and actions on records TS1 structure. Structures relate the fields and ts2.camp_de_relationare ts1.id_publicatie.

Table 5 highlights reuse TS structures in the set of modules that provide a high degree of maintainability generated by flexibility for future changes as part of the maintenance process.

Subject to the number of reuses for a given data structure is the existence of at least two reuses of the application modules set.

For levels measured Nfmt1 = 55 = 27 and TNfmt Nfmt2 = 82 resulting aggregate indicators Grs[T.sub.1] = 0,67 si Grs[T.sub.2] = 0,33

The values GrsT1 and GrsT2 that are included in the range [0.2, 1) gives good results accomplished by increasing the processing speed of the internal procedures and the flexible and maintainable required subsequent maintenance processes that occur in the normal life cycle of distributed applications. From the results so GrsT1 and GrsT2 value is in the range that supports the reuse and standardization maintenances conducting structures.

Maintainability level of access to data is ensured by using abstract class type ADOdb. Infos distributed applications is guaranteed maintainability through distributed access to different databases:

* - Infobd has stored the information content of the application edit Infos on which users perform processing operations and updating;

* - InfoMonbd has stored data sets resulting from operations monitoring algorithm performed by users;

* - InfoMediabd belongs to other distributed applications that perform operations media monitoring and content of which is questioned in application Infos.

To achieve speed queries, modification and deletion of records contained in the database are used standardized definitions ADOdb classes that allow reuse both source code and changing the type of DBMS that manages databases. ADOdb classes contain written procedures and rules in which must specify the type of DBMS in which the database is implemented. Ensuring maintainability data access flexibility is achieved by using classes generated by ADOdb to support information management of distributed application. Figure 4 is a schematic diagram on which you can access data from distributed application.


It involves the following distribution of frequencies for accessing the application Infos ADOdb classes to query different databases. In Table 6 are extracted a series of iterations in which the application calls Infos different database queries based on ADOdb classes.

To highlight the nature maintainable by using ADOdb classes Gado determine the degree of access of ADOdb classes.

Table 6 follows the measured Gado = 0.187.

The result calculated for the degree of access of ADOdb classes Gado = 0.187 is positive and causes a high degree of maintainability application Infos iterations query against the database. Gado result tends to 0 while the indicator belongs Gado (0, 1] shows a high level of utility classes ADOdb implementation of the standard query interface between Web applications and holders of our data.


Web applications should have a projected maintainable structure for a flexible usability and coding. The life span expectance for distributed web applications can expand dramatically through maintenance and so the total cost is lowered and get a higher profit at the final aftermaths.


[ADLI08] Adina Lipai, World Wide Web Metasearch Clustering Algorithm, Informatica Economica Journal, Vol. 12, No 2, 2008, ISSN 1453-1305, INFOREC Publishing House, pg. 5-12

[ALCM06] Amy N. Langville, Carl D. Meyer--Google's PageRank and Beyond: The Science of Search Engine Rankings, Princeton University Press, 2006, ISBN: 978-1-4008-3032-9, pg. 240

[ALEN07] Alexandru ENACEANU, SEO Techniques for Business Websites, Informatica Economica Journal, Vol. 11, No 2, 2007, ISSN 1453-1305, INFOREC Publishing House, pg. 74-78

[BBMA09] D. BEIN, W. BEIN, P. MADIRAJU, Cloud Computing and the Future of Web, The Proceedings on the 9th International Conference On Informatics In Economy, "Information & Knowledge Age", 7-8 May 2009 ASE Printing House, Bucharest, 2009 ISBN: 978-606-505-172-2, pg. 307-312

[BOCR07] Boboila Cristea, The XML Revolution and its Relationship to E-Commerce, The Proceedings on The 8th International Conference On Informatics In Economy, "Information & Knowledge Age", May, 17th-18th, 2007, ASE Printing House, Bucharest, 2007, ISBN: 978-973-594-921-1, pg. 304-310

[BODO10] Catalin BOJA, Mihai DOINEA, Security Assessment of Web Based Distributed Applications, Informatica Economica Journal, Vol. 14, No 1, 2010, ISSN 1453-1305, INFOREC Publishing House, pg. 152-163

[BOEH11] Vu Nguyen, Barry Boehm, Phongphan Danphitsanuphan, A controlled experiment in assessing and estimating software maintenance tasks, Information and Software Technology, Vol 53, Nr. 6, 2011, Elsevier Publishing, ISSN: 0950-5849, pg. 682-691

[CATI07] Carmen TIMOFTE, E-Business Technologies, Informatica Economica Journal, Vol. 11, No 4, 2007, ISSN 1453-1305, INFOREC Publishing House, pg. 76-79

[CHEN10] C.H. Chen--Handbook of Pattern Recognition and Computer Vision, World Scientific Publishing Co. Pte. Ltd, 2010, ISBN: 978-981-4273-38-1, pg. 984

[CHGP09] Vigil Chichernea, Gabriel Eugen Garais, Dragos Paul Pop--Baze de date Oracle, Editura Universitatii Romano-Americane, 2009, ISBN: 978-606-92189-4-5, pg. 352

[COHN09] Mike Cohn--Succeeding with Agile Using Scrum, Addison-Wesley Printing, 2009, ISBN: 978-0-321-57936-2, pg. 504

[COTO08] Cosmin TOMOZEI, Hypertext Entities' Semantic Web-Oriented Reengineering, Proceedings of Journal of Applied Quantitative Methods, Vol 3, Issue 1, March 30, 2008, ISSN 1842-4562, pg. 9

[DEXD09] Academia Romana, Dictionarul explicativ al limbii romane (editia a III-a, 2009, revazuta si adaugita), Editura Univers Enciclopedic, ISBN 978-606-921-597-5, pg. 1192

[DFJH09] Dana R. Ferris, John Hedgcock - Teaching Readers of English: Students, Texts, and Contexts, Taylor & Francis, 2009, ISBN: 978-041-5999-64-9, pg. 456

[DGJG09] Daniel Graham, Judith Graham - Can Do Writing: The Proven Ten-Step System for Fast and Effective Business Writing, John Wiley and Sons, 2009, ISBN: 978-047-044-979-0, pg. 208

[DRVE07] Dragos Marcel Vespan, Internet User Behavior Model Discovery Processz, The Proceedings on The 8th International Conference On Informatics In Economy, "Information & Knowledge Age", May, 17th-18th, 2007, ASE Printing House, Bucharest, 2007, ISBN: 978-973-594-921-1, pg. 57-62

[DWTU09] Dennis, Wixom, Tegarden--Systems Analysis & Design with UML Version 2.0, An Object--Oriented Approach, 2009, ISBN: 978-804-7007-478-7, pg. 544

[ERCA08] Erik Castello - Text Complexity and Reading Comprehension Tests, Vol. 85, Peter Lang, 2008, ISBN: 978-303-911-717-8, pg. 350

[GERE00] George Reese--Database Programming with JDBC & Java, Second Edition, O'Reilly Publishing, 2000, ISBN: 978-1-56592-616-5, pg. 328

[GJME09] Susanne Gopferich, Arnt Lykke Jakobsen, Inger M. Mees - Behind the mind: methods, models and results in translation process research, Vol. 37, Forlaget Samfundslitteratur, 2009, ISBN: 978-875-931-462-3, pg. 257

[HACA07] Vladimir Hanga, Diana Calciu, Dictionar juridic: A-Z., Bucuresti, Editura Lumina Lex, 2007. 208 p. ISBN 978-973-758-097-9, pg. 400

[IDUF09] I. ISTUDOR, L. DUTA, F. Gh FILIP, WEB-Based Group Decision Support System, The Proceedings on the 9th International Conference On Informatics In Economy, "Information & Knowledge Age", 7-8 May 2009 ASE Printing House, Bucharest, 2009 ISBN: 978-606-505-172-2, pg. 145-151

[IVDU08] Ion IVAN, Eugen DUMITRASCU, Stable Structures for Distributed Applications, Informatica Economica Journal, Vol. 12, No 1, 2008, ISSN 1453-1305, INFOREC Publishing House, pg. 81-96

[NASO07] Floarea NASTASE, Pavel NASTASE, Robert SOVA, Information Security Audit in e-business applications, Informatica Economica Journal, Vol. 11, No 1, 2007, ISSN 1453-1305, INFOREC Publishing House, pg. 79-88

[PAGA07] Pavel Gabriela, Brut Mihaela, A Semantic Web Approach for a Business Framework, The Proceedings on The 8th International Conference On Informatics In Economy, "Information & Knowledge Age", May, 17th-18th, 2007, ASE Printing House, Bucharest, 2007, ISBN: 978-973-594-921-1, pg. 234-240

[POTO09] Marius POPA, Cristian TOMA, Stages for the Development of the Audit Processes of Distributed Informatics Systems, Proceedings of Journal of Applied Quantitative Methods, Vol 4, Issue 3, September 30, 2009, ISSN 1842-4562, pg. 359

[PRGP11] Francisco J. Pino, Francisco Ruiz, Felix Garcia, Mario Piattini, A software maintenance methodology for small organizations: Agile_MANTEMA, Journal of Software Maintenance and Evolution: Research and Practice, Published online in Wiley Online Library, 2011, ISSN: 1532-060X, in curs de tiparire - doar editie electronica

[PRKA09] Ladda PREECHAVEERAKUL, Wichuta KAEWNOPPARAT, Dararat SAELEE, A Missing Piece of RSS Technology, Informatica Economica Journal, Vol. 13, No 3, 2009, ISSN 1453-1305, INFOREC Publishing House, pg. 119-132

[SATZ08] John W. Satzinger, Robert B. Jackson, Stephen D. Burd--Systems Analysis and Design in a Changing World, Fourth Edition, Editura GEX Publishing Services Thomson Course Technology, 2008, ISBN 13: 978-142-390-228-7, ISBN 10: 142-390-228-9, pg. 752

[SMDC10] Ion SMEUREANU, Andreea DIOSTEANU, Liviu Adrian COTFAS, Knowlegde Dynamics in Semantic Web Service Composition for Supply Chain Management Applications, Proceedings of Journal of Applied Quantitative Methods, Vol 5, Issue 1, March 30, 2010, ISSN 1842-4562, pg. 1-13

[WLDB07] William H. DuBay - Unlocking Language: The Classic Studies in Readability, 2007, BookSurge Publishing, ISBN: 978-141-966-176-1, pg. 246

Gabriel Eugen Garais (1)

(1) Lecturer PhD, Romanian-American University, Bucharest,
Table 1--Description of the tested for maintainability

components       components description       Method for the inclusion
            Types of text blocks formed from      of information

[cm.sub.1]            exchange rate                 remotely
[cm.sub.2]               weather                    remotely
[cm.sub.3]               Brokers                    remotely
[cm.sub.4]                News                   local database
[cm.sub.5]          Targeted searches            local database
[cm.sub.6]             Top Events                local database
[cm.sub.7]         Authenticated users           local database
[cm.sub.8]           Events calendar             local database

Table 2--Choice of visual components by users

        components\users          [u.sub.1]  [u.sub.2]

           [cm.sub.1]                 1          1
           [cm.sub.2]                 1          1
           [cm.sub.3]                 3          0
           [cm.sub.4]                 1          2
           [cm.sub.5]                 1          5
           [cm.sub.6]                 1          1
           [cm.sub.7]                 1          2
           [cm.sub.8]                 0          1
Totals for users k Nftc[u.sub.k]      9         14

Tabel 3--Fields of structure ts1

Field name       Data type  dimension

id_publicatie    int         11
tip_publicatie   tinyint      2
titlu            varchar    255
scurt_intro      text       -
text_extins      longtext   -
categorie        tinyint      2
id_utilizator    int         11
data_publicarii  date         8

Tabel 4--Fields of structure ts2

Field name           Data type  dimension

titlu_imagine        varchar    255
fisier_imagine       blob       -
link                 varchar    255
comentariu           text       -
camp_de_relationare  int         11

Table 5--Reuse of structures in the set of modules

[S.sub.i] structures  [m.sub.1]  [m.sub.2]  [m.sub.3]  [m.sub.4]
/Modules [M.sub.k]

standard--[ts.sub.1]      3          2          3          5
details--[ts.sub.2]       1          3          2          2
[S.sub.i] structures  [m.sub.5]  [m.sub.6]  [m.sub.7]  [m.sub.8]
/Modules [M.sub.k]

standard--[ts.sub.1]     15          3          4          7
details--[ts.sub.2]       2          5          3          1
[S.sub.i] structures  [m.sub.9]  [m.sub.10]  [m.sub.11]  Nfm[t.sub.i]
/Modules [M.sub.k]

standard--[ts.sub.1]      8          1           4            55
details--[ts.sub.2]       6          1           1            27
                                   TNfmt                      82

Table 6 - Frequencies to access the classes in the application ADOdb

  Query                       Access       Access
iteration  Access frequency  frequency   frequency
                Infobd       infoMonbd  InfoMediabd

[I.sub.1]          1             4           1
[I.sub.2]          2             5           0
[I.sub.3]          1             3           1
             Total access frequencies
on databases through ADOdb classes on three
iterations [member of] ([I.sub.1], [I.sub.2],

  Query                                         Total access frequencies
iteration                                       on databases through
                                                  ADOdb classes

[I.sub.1]                                               6
[I.sub.2]                                               7
[I.sub.3]                                               5
             Total access frequencies
on databases through ADOdb classes on three
iterations [member of] ([I.sub.1], [I.sub.2],          16
COPYRIGHT 2013 Romanian-American University
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2013 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Author:Garais, Gabriel Eugen
Publication:Journal of Information Systems & Operations Management
Date:Dec 1, 2013
Previous Article:HTML5--Augmented Reality, a new alliance against the old web empire?
Next Article:Managing technological change in international tourism business.

Terms of use | Privacy policy | Copyright © 2021 Farlex, Inc. | Feedback | For webmasters |