25.01.2014 Views

Survey of Existing Web Models Techniques to Design Web Application

Survey of Existing Web Models Techniques to Design Web Application

Survey of Existing Web Models Techniques to Design Web Application

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

<strong>Survey</strong> <strong>of</strong> <strong>Existing</strong> <strong>Web</strong> <strong>Models</strong> <strong>Techniques</strong><br />

<strong>to</strong> <strong>Design</strong> <strong>Web</strong> <strong>Application</strong><br />

Paras Patel 1 , Anup Hande 2 and Dr. B. B. Meshram 3<br />

1 Computer Engineering & Information Technology, Veermata Jijabai Technological Institute,<br />

Mumbai, Maharashtra 400019, India<br />

parasprince2001@gmail.com<br />

2 Computer Engineering & Information Technology, Veermata Jijabai Technological Institute,<br />

Mumbai, Maharashtra 400019, India<br />

handeanup@gmail.com<br />

3 Computer Engineering & Information Technology, Veermata Jijabai Technological Institute,<br />

Mumbai, Maharashtra 400019, India<br />

bbmeshram@vjti.co.in<br />

ABSTRACT<br />

Over the last few years, the web is establishing<br />

increased importance in entire world with the rise <strong>of</strong><br />

social networking sites and the semantic web, facilitated<br />

and driven by the popularity <strong>of</strong> client-side scripting<br />

commonly known as AJAX. These allow extended<br />

functionality and more interactivity in web applications.<br />

Engineering practices dictate that we need <strong>to</strong> be able <strong>to</strong><br />

model these applications. However, languages <strong>to</strong> model<br />

web applications have fallen behind, with most existing<br />

web modeling languages still solely focused on the<br />

hypertext structure <strong>of</strong> web sites, with little regard for user<br />

interaction or common web-specific concepts.<br />

This article surveys Model-driven web engineering<br />

methods in a comparative study and analyzes the<br />

techniques proposed for specifying functional, data and<br />

navigational requirements as well as the mechanisms<br />

provided for au<strong>to</strong>matically translating these requirements<br />

in<strong>to</strong> conceptual models. Our main goal is <strong>to</strong> provide a<br />

critical view <strong>of</strong> the support that is provided by these<br />

methods for handling web application requirements in<br />

order <strong>to</strong> show their current limitations and strengths. We<br />

present a brief survey <strong>of</strong> existing web modeling languages<br />

including <strong>Web</strong>ML, UWE, W2000 and OOWS, along with a<br />

discussion <strong>of</strong> their capability <strong>to</strong> describe these new<br />

modeling approaches. Finally, we discuss the possibilities<br />

<strong>of</strong> extending an existing language <strong>to</strong> handle these new<br />

concepts.<br />

Keywords: <strong>Web</strong> engineering, Requirements engineering, modeldriven<br />

development, web models, interactivity, AJAX<br />

Introduction<br />

<strong>Web</strong> modeling (model-driven <strong>Web</strong> Development) is a<br />

branch <strong>of</strong> <strong>Web</strong> engineering which addresses the specific<br />

issues related <strong>to</strong> design and development <strong>of</strong> large-scale<br />

<strong>Web</strong> applications[2]. It focuses on the design notations<br />

and visual languages that can be used for the realization <strong>of</strong><br />

robust, well-structured, usable and maintainable <strong>Web</strong><br />

applications.<strong>Design</strong>ing a data-intensive <strong>Web</strong> site amounts<br />

<strong>to</strong> specifying its characteristics in terms <strong>of</strong> various<br />

orthogonal abstractions.<br />

1.1 Why do we need modeling?<br />

To Define an abstract view <strong>of</strong> a real-world entity, To<br />

Finding & discovering objects/concepts in a domain and<br />

To Assigning responsibilities <strong>to</strong> objects. Tool <strong>of</strong> thought<br />

are: To Reduce complexity and Document design<br />

decisions.<br />

1.2 S<strong>of</strong>tware <strong>Application</strong> Modeling [3]<br />

1.2.1 Levels<br />

It includes the “how” & “what” <strong>of</strong> an application. That<br />

means <strong>Application</strong> Logic and User Interface <strong>of</strong><br />

<strong>Application</strong>. In turn, when modeling the presentation level,<br />

the focus is on a uniform presentation structure for the<br />

pages <strong>to</strong> achieve a brand recognition effect for the <strong>Web</strong><br />

application among its users. Although the visual<br />

appearance <strong>of</strong> a <strong>Web</strong> application is <strong>of</strong> importance,<br />

aesthetic aspects are not within the major focus <strong>of</strong><br />

modeling.<br />

1.2.2 Aspects - basically two types<br />

• Structural (objects, attributes & relationships)<br />

• Behavior (function and processes)<br />

Following the object-oriented principles, structure and<br />

behavior are modeled at each <strong>of</strong> the three levels, i.e. at<br />

content, hypertext and presentation. The relevance <strong>of</strong> the<br />

structure and behavior models depends on the type <strong>of</strong> <strong>Web</strong><br />

application <strong>to</strong> be implemented. <strong>Web</strong> applications which<br />

make mainly static information available require less<br />

behavior modeling compared with highly interactive <strong>Web</strong><br />

applications, such as for example e-commerce applications<br />

which provide search engines, purchase order functions,<br />

etc. With respect <strong>to</strong> mapping the different levels, it is<br />

recommended <strong>to</strong> use a uniform modeling formalism for<br />

structure and behavior, which might allow relying on one<br />

single CASE <strong>to</strong>ol. Naturally, this modeling formalism has<br />

<strong>to</strong> cope with the specific characteristics <strong>of</strong> each <strong>of</strong> the three<br />

levels.<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

514


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

Figure 2 <strong>Web</strong> <strong>Application</strong> Model<br />

Figure 1 S<strong>of</strong>tware <strong>Application</strong> Model [3]<br />

1.2.3 Phases - Development Cycle<br />

• Analysis<br />

• <strong>Design</strong><br />

• Implementation<br />

The sequence <strong>of</strong> steps <strong>to</strong> model the levels should be<br />

decided by the modeler. Depending on the type <strong>of</strong> <strong>Web</strong><br />

application, it should be possible <strong>to</strong> pursue an informationdriven<br />

approach, i.e., starting with content modeling, or a<br />

presentation-driven approach, i.e., starting with modeling<br />

<strong>of</strong> the application’s presentation aspects. Model-based<br />

development in <strong>Web</strong> engineering contradicts somewhat the<br />

<strong>of</strong>ten found practices in <strong>Web</strong> projects comprising, e.g.,<br />

short-lived development cycles and the desire for “agile<br />

methods”.<br />

A model-based approach counters this situation with a<br />

comprehensive specification <strong>of</strong> a solution model and, if<br />

appropriate case <strong>to</strong>ol support is available, the possibility <strong>to</strong><br />

au<strong>to</strong>matically generate the (pro<strong>to</strong>typical) <strong>Web</strong> application.<br />

<strong>Models</strong> also ensure the sustainability <strong>of</strong> solution ideas, in<br />

contrast <strong>to</strong> shorter-lived s<strong>of</strong>tware solutions. In addition,<br />

the communication amongst the developers <strong>of</strong> a team as<br />

well as between cus<strong>to</strong>mers and developers is improved.<br />

1.3.2 Phases<br />

Approach depends upon type <strong>of</strong> application<br />

• Information based: Document-centric <strong>Web</strong> sites,<br />

which are hierarchical collections <strong>of</strong> static HTML<br />

documents (basically, plain text and images) that<br />

<strong>of</strong>fer read-only information based on a set <strong>of</strong><br />

structured content, navigation patterns, and<br />

presentation characteristics designed and s<strong>to</strong>red a<br />

priori.<br />

• Presentation based: Presentation based that refers<br />

<strong>to</strong> the visual elements that comprise the <strong>Web</strong><br />

pages.<br />

• Logic based<br />

o Business Logic: Means changes in the<br />

underlying platform do not affect<br />

existing applications.<br />

o <strong>Application</strong> Logic: Means business logic<br />

can evolve independently from the<br />

underlying technology.<br />

Analysis and <strong>Design</strong> <strong>of</strong> <strong>Web</strong> <strong>Application</strong>s [4]<br />

1.3 <strong>Web</strong> <strong>Application</strong> Modeling [3]<br />

1.3.1 Levels –It contains Information, Node/link<br />

structure, UI and page layout separate.<br />

• Presentation<br />

• Structure : user interface elements and their<br />

composition<br />

• Behavior : reactions <strong>to</strong> input events,<br />

interaction and synchronization between<br />

user interface elements<br />

• Hypertext<br />

• Structure: page compositions and<br />

navigational relationships<br />

• Behavior: run-time behavior <strong>of</strong> hypertext<br />

• Content<br />

• Structure: domain-dependent data<br />

• Behavior: domain-dependent application<br />

logic<br />

Figure 3 Analysis and <strong>Design</strong> <strong>of</strong> <strong>Web</strong> <strong>Application</strong> Model<br />

• Analysis Phase : Requirement Specification <strong>of</strong><br />

<strong>Web</strong> <strong>Application</strong><br />

• <strong>Design</strong> Phase: It contains Representation <strong>of</strong> the<br />

s<strong>of</strong>tware <strong>to</strong> be built which is either Technology<br />

dependent or Technology independent.<br />

• Implementation Phase: It consist <strong>of</strong> Executable<br />

models and Executable codes are buit up here.<br />

1.3.3 Aspects Same as above S<strong>of</strong>tware<br />

<strong>Application</strong>s.<br />

1.3.4 Cus<strong>to</strong>mization Context information<br />

Methods adopted or the webs are not new.<br />

They are derived from traditional SW. But<br />

Question is that Why hyperlinks? Why<br />

adding a new layer? So, we can say<br />

Corresponds <strong>to</strong> the status <strong>of</strong> web<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

515


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

applications and Improve reuse Content, is<br />

the content as displayed in the web<br />

application equivalent <strong>to</strong> information<br />

structure. In web application several pages<br />

access the same content. If you model it you<br />

can reuse it.<br />

In short modeling is a technique used in analysis and<br />

design. It uses notation (syntax) (graphical representation<br />

and language), process for building models (rules and<br />

guidelines) and Graphical edi<strong>to</strong>rs. Which have Object-<br />

Oriented Analysis & <strong>Design</strong>.<br />

• Analysis: Finding & discovering classes <strong>of</strong> objects/<br />

concepts in a domain<br />

• <strong>Design</strong>: Defining s<strong>of</strong>tware objects & how they interact<br />

<strong>to</strong> fulfill requirements.<br />

3 MODEL DRIVEN DEVELOPMENT<br />

3.2 Introduction<br />

When it comes down <strong>to</strong> it, the real point <strong>of</strong> s<strong>of</strong>tware<br />

development is cutting code. Diagrams are, after all, just<br />

pretty pictures. No user is going <strong>to</strong> thank you for pretty<br />

pictures.<br />

3.3 Unified Modelling Language (UML)[8]<br />

“The Unified Modeling Language is a visual language for<br />

specifying and documenting the artifacts <strong>of</strong> systems.” It is<br />

Language <strong>of</strong> choice (and ISO standard) for diagramming<br />

notation in OO development.<br />

• Structural – Class diagrams (domain models) [4]<br />

• Behavioral – Use Cases [7], Sequence diagrams [7]<br />

Currently at version 2.0, although many analysts and<br />

designers still use 1.0<br />

3.4 The Role <strong>of</strong> Model in the Development<br />

1) <strong>Models</strong> as sketch : It has been developed <strong>to</strong> For<br />

communicating ideas and alternatives. It’s essence is<br />

selectivity although “sketchers” don’t’ have <strong>to</strong> care<br />

much about it.<br />

2) <strong>Models</strong> as blueprint : All design decisions (maybe <strong>of</strong><br />

a particular area) are laid out. It’s essence is<br />

Completeness – programming should be pretty<br />

straightforward. But some time there is a Issue <strong>of</strong><br />

reverse engineering.<br />

3) <strong>Models</strong> as program: we can generate application<br />

au<strong>to</strong>matically. In MDA separation <strong>of</strong> Platform<br />

Independent Model (PIM) and Platform Specific Model<br />

(PSM) [4].ideally the transformation is "parameterized"<br />

by a Platform Description Model (PDM) it’s essence is<br />

models become the source code.<br />

3.5 Model - Code Interplay Error! Reference source not<br />

found.<br />

Figure 4 Model – Code Interplay<br />

Systematic development on basis <strong>of</strong> models and now a<br />

days <strong>Models</strong> become the first hand artifacts in the s<strong>of</strong>tware<br />

or web development cycle. Key concepts are abstraction<br />

from implementation detail and systematic<br />

transformations. Related Terminology are as below:<br />

• Model Driven [S<strong>of</strong>tware] Engineering (MDE),<br />

• Model Driven [S<strong>of</strong>tware] Development<br />

(MDD/MDSD),<br />

• Model Driven Architecture (MDA)<br />

• Model Driven <strong>Web</strong> Engineering (MDWE)<br />

4 DEVELOPMENT IN THE MDA<br />

4.2 PIM :<br />

Platform Independent Model(PIM) represents business<br />

functionality and behavior without technology details<br />

4.3 PSM<br />

Applies a standard mapping <strong>to</strong> create or generate a<br />

Platform Specific Model (PSM) from the PIM<br />

4.4 Code Model<br />

Create or generate the code for PSM<br />

Figure 5 Development Model in MDA[4]<br />

Due <strong>to</strong> short development cycles and the complexity <strong>of</strong><br />

<strong>Web</strong> applications, it is recommended <strong>to</strong> use <strong>to</strong>ols that<br />

support not only the modeling itself, but also and<br />

particula–rly au<strong>to</strong>matic code generation and model<br />

consistency check. The following subsections describe<br />

<strong>Web</strong>Ratio Site Development Studio, VisualWADE, and<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

516


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

the OpenUWE Suite as examples for this type <strong>of</strong> <strong>to</strong>ols.<br />

5 STEPS FOR DEVELOPMENT<br />

4.1 Step-1<br />

• All MDA development projects start with the creation<br />

<strong>of</strong> a Platform Independent Model (PIM), which is<br />

expressed in UML. The PIM expresses only<br />

business functionality and behavior. Built by<br />

business and modeling experts working <strong>to</strong>gether, this<br />

model expresses business rules and functionality<br />

undis<strong>to</strong>rted, as much as possible, by technology.<br />

• The clarity <strong>of</strong> this modeling environment allows<br />

business experts <strong>to</strong> ascertain, much better than they<br />

could if working with a technological model or<br />

application that the business functionality embodied<br />

in the PIM is complete and correct.<br />

• Another benefit: Because <strong>of</strong> its technological<br />

independence, the PIM retains its full value over the<br />

years, requiring change only when business<br />

conditions mandate.<br />

• Transition: MDA <strong>to</strong>ol applies a standard mapping <strong>to</strong><br />

generate Platform-Specific Model (PSM) from the<br />

PIM. Code is partially au<strong>to</strong>matic & partially handwritten.<br />

4.2 Step-2<br />

• Once the first iteration <strong>of</strong> the PIM is complete, it is<br />

s<strong>to</strong>red in a MOF based Reposi<strong>to</strong>ry and input <strong>to</strong> the<br />

mapping step which will produce a Platform-Specific<br />

Model (PSM). To produce your PSM, you will have<br />

<strong>to</strong> select a target platform or platforms for the<br />

modules <strong>of</strong> your application. Such as J2EE, .NET<br />

etc.<br />

• Transition: MDA Tool generates all or most <strong>of</strong> the<br />

implementation code for deployment technology<br />

selected by the developer.<br />

4.3 Step-3<br />

• Once the PSM has been created/generated, the 3rd and<br />

final step is <strong>to</strong> generate the code/implementation<br />

model. This will create/generate all <strong>of</strong> the files the<br />

platform requires.<br />

• When I talk about platforms, I’m referring <strong>to</strong> the<br />

application server(s) your application will run on and<br />

programming languages, such as Java, C++ or C#<br />

your application will be generated in<strong>to</strong>.<br />

• This will result in a first cut working application, which<br />

can be further enhanced through the MDA process or<br />

by hand-coding<br />

4.4 Step-4<br />

• Take note that the mapping standard between PIM,<br />

PSM and the Code Model has been defined by OMG<br />

but the implementation not.<br />

• MDA compliant <strong>to</strong>ol vendors have implemented<br />

portions <strong>of</strong> the MDA, but Optimal is one <strong>of</strong> the few<br />

<strong>to</strong>ols that has implemented the MDA completely <strong>to</strong><br />

au<strong>to</strong>matically generate a complete application from a<br />

PIM <strong>to</strong> PSM and finally <strong>to</strong> the Code Model.<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

6 MODELLING METHOD HISTORY ERROR!<br />

REFERENCE SOURCE NOT FOUND.<br />

Figure 6 Modelling method His<strong>to</strong>ry Diagram<br />

Modeling methods have different paradigms, depending<br />

on their origin & focus: Data-oriented methods originate<br />

from the field <strong>of</strong> database systems; they are mainly based<br />

on the ER model enhanced by specific concepts for<br />

modeling on the hypertext level. The primary focus <strong>of</strong><br />

these methods is the modeling <strong>of</strong> database-driven <strong>Web</strong><br />

applications. Examples <strong>of</strong> data-oriented methods include<br />

the Relationship Management Methodology(RMM),Hera<br />

and the <strong>Web</strong> Modeling Language.<br />

• Hypertext-oriented methods center on the hypertext<br />

character <strong>of</strong> <strong>Web</strong> applications; they emerged mainly<br />

from the field <strong>of</strong> hypertext systems. Representatives <strong>of</strong><br />

this group are the Hypertext <strong>Design</strong> Model (HDM),<br />

which has been extended in<strong>to</strong>W2000, and HDM-lite,<br />

or the <strong>Web</strong> Site <strong>Design</strong> Method (WSDM).<br />

• Object-oriented methods are based on either OMT (for<br />

the very early methods) or UML. UML is the preferred<br />

notation when a standard language for modeling is<br />

selected. This category includes the Object-Oriented<br />

Hypermedia <strong>Design</strong> Method (OOHDM) (Schwabe and<br />

Rossi 1998), UML-based <strong>Web</strong> Engineering (UWE)<br />

Object-Oriented <strong>Web</strong> Solutions (OOWS) and the<br />

Object-Oriented Hypermedia (OO-H) method.<br />

• S<strong>of</strong>tware-oriented methods look at <strong>Web</strong> applications<br />

mainly from the perspective <strong>of</strong> traditional s<strong>of</strong>tware<br />

development, using techniques that strongly follow<br />

classical S<strong>of</strong>tware Engineering.<br />

7 WEBML (WEB MODELLING LANGUAGE)<br />

7.2 Introduction<br />

<strong>Web</strong>ML enables designers <strong>to</strong> express the core features <strong>of</strong> a<br />

site at a high level, without committing <strong>to</strong> detailed<br />

architectural details.<br />

<strong>Web</strong>ML concepts are associated with an intuitive graphic<br />

representation, which can be easily supported by CASE<br />

<strong>to</strong>ols and effectively communicated <strong>to</strong> the non-technical<br />

members <strong>of</strong> the site development team.<br />

7.3 Architecture <strong>of</strong> <strong>Web</strong>MLError! Reference source<br />

not found.<br />

<strong>Web</strong>ML is a third-generation <strong>Web</strong> design methodology<br />

base on MDA. It is a conceptual language aimed at<br />

517


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

supporting all the activities and perspectives <strong>of</strong> <strong>Web</strong><br />

applications design, especially data-intensive and processcentric<br />

web application. According <strong>to</strong> the MVC<br />

framework, <strong>Web</strong>ML model is divided in<strong>to</strong> Data Model,<br />

Hypertext Model and Presentation Model. Figure 1 shows<br />

the architecture <strong>of</strong> the <strong>Web</strong>ML.<br />

• The Data Model describes the conceptual data<br />

organization according <strong>to</strong> the Entity-Relationship<br />

Model.<br />

• The Hypertext Model enables the specification <strong>of</strong> the<br />

front-end <strong>of</strong> web applications.<br />

The Presentation Model extends the hypertext model with<br />

simple constructs such as operations and transactions,<br />

enabling the invocation <strong>of</strong> predefined operations.<br />

8.3 UML Class Diagram<br />

UML class diagrams used at analysis-level and designlevel<br />

in which elements <strong>to</strong> be modeled represented by<br />

classes Units <strong>of</strong> information, users <strong>of</strong> the system (user<br />

model), associations represent relationships between<br />

classes, aggregation used <strong>to</strong> show an whole/part<br />

relationship, Composition is a strong form <strong>of</strong> aggregation<br />

that requires a part instance be included in at most one<br />

composite at a time. If a composite is deleted, all <strong>of</strong> its<br />

parts are normally deleted with it. And inheritance used <strong>to</strong><br />

show hierarchies between classes.<br />

In addition <strong>to</strong> the class diagram, Figure 4-1 shows a<br />

state machine diagram used <strong>to</strong> model the various states <strong>of</strong><br />

a paper in the reviewing system. It shows that a submitted<br />

paper will be assigned <strong>to</strong> three reviewers for review after<br />

the submission deadline has expired. If a pre-set threshold<br />

value is reached, the paper is accepted; otherwise, it is<br />

rejected. In both cases the authors are noticed via e-mail<br />

about the outcome <strong>of</strong> the review. Finally, an accepted<br />

paper will be printed once final version has been<br />

submitted.<br />

8.4 Content Behaviour Model [4]<br />

Figure 7 <strong>Web</strong>ML Architecture Diagram<br />

8 CONTENT MODELLING<br />

8.2 Introduction<br />

To model the information requirements <strong>of</strong> a <strong>Web</strong><br />

application Diagramming the structural (i.e., information<br />

objects) and<br />

Behavioral aspects <strong>of</strong> the information. It expresses the data<br />

content <strong>of</strong> the site, in terms <strong>of</strong> the relevant Entities and<br />

relationships. It doesn’t concerned with navigation. And<br />

Primary <strong>Models</strong> are Class diagrams (enough for static<br />

applications), State machine diagrams (captures dynamic<br />

aspects) and ER- diagrams. Although Representation with<br />

“pure” UML is sufficient stereotypes are not needed. The<br />

information provided by a <strong>Web</strong> application is one <strong>of</strong> the<br />

most important fac<strong>to</strong>rs for the success <strong>of</strong> that application,<br />

not least due <strong>to</strong> the origins <strong>of</strong> the <strong>Web</strong> as an information<br />

medium. Modeling the content in the sense <strong>of</strong> pure data<br />

modeling is normally sufficient for static <strong>Web</strong><br />

applications. Complex <strong>Web</strong> applications additionally<br />

require the modeling <strong>of</strong> behavioral aspects. This means<br />

that content modeling includes the creation <strong>of</strong> the problem<br />

domain model, consisting <strong>of</strong> static and dynamic aspects, as<br />

known from traditional S<strong>of</strong>tware Engineering.<br />

Figure 8 Content Behavior Model Activity Diagram<br />

8.5 Comparison <strong>of</strong> Object Operations between<br />

<strong>Web</strong>ML and OO-H[1].<br />

Figure 9 Comparison <strong>of</strong> <strong>Web</strong>ML & OO-H<br />

Figure (a) shows an excerpt <strong>of</strong> the content model <strong>of</strong> the<br />

album s<strong>to</strong>re example. In Figure (b) we depict the<br />

corresponding OO-H content model that needs <strong>to</strong> be<br />

generated by the transformation rules. For each Entity in<br />

the content model <strong>of</strong> <strong>Web</strong>ML an OO-H Class is generated.<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

518


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

9 HYPERTEXT MODELLING<br />

Besides transforming the Entities’ Attributes, in OO-H the<br />

Construc<strong>to</strong>r(), Destruc<strong>to</strong>r(), and Modifier() operations<br />

must be defined for the Class as well. Likewise for each<br />

Relationship <strong>of</strong> an Entity the Relationer() and<br />

Unrelationer() operations have <strong>to</strong> be generated for the<br />

corresponding Class in the OO-H content model.<br />

8.6 Content Structure Model [4]<br />

Figure 10 Content Structure Model Class Diagram [4]<br />

9.2 Introduction<br />

Its purpose is <strong>to</strong> model the navigation paths available <strong>to</strong><br />

users major UWE Artifacts[8] are Hypertext Structure<br />

Model which navigating among classes, Access Model<br />

which UML-compliant site map, Focuses on the structure<br />

<strong>of</strong> the hypertext & access elements Use “>” annotation <strong>to</strong> distinguish from content classes<br />

and it is based on content models main goals are <strong>to</strong><br />

represent nodes and links <strong>of</strong> the hypertext structure, <strong>to</strong><br />

design navigation paths, and <strong>to</strong> avoid disorientation and<br />

cognitive overload.<br />

Resultant we get navigation model which represented by a<br />

UML class diagram it uses specific modeling elements for<br />

<strong>Web</strong> concepts and Modeling elements are basic elements<br />

and access primitives. There are some other methodologies<br />

also available own notation for hypertext elements.<br />

Different diagram types are UML state diagram or own<br />

diagram type. The non-linearity <strong>of</strong> hypertext is one <strong>of</strong> the<br />

most important properties <strong>to</strong> be taken in<strong>to</strong> account when<br />

modeling <strong>Web</strong> applications. Thus the hypertext structure<br />

has <strong>to</strong> be designed carefully. This can be achieved by<br />

using suitable access structures, i.e., navigation options, <strong>to</strong><br />

avoid the risk <strong>of</strong> users getting lost and putting them under<br />

excessive cognitive stress.<br />

9.3 Different Types <strong>of</strong> Links…[4]<br />

9.3.1 HDM (Hypertext <strong>Design</strong> Model)<br />

• Structural links connect elements <strong>of</strong> the same<br />

node,<br />

• Perspective links put various views <strong>of</strong> a node in<br />

relation <strong>to</strong> each other.<br />

• <strong>Application</strong> links put different nodes in relation <strong>to</strong><br />

each other, depending on the application.<br />

9.3.2 <strong>Web</strong>ML (<strong>Web</strong> Modeling Language)<br />

• Contextual links carry context information,<br />

• Non-contextual links have no associated context<br />

information.<br />

• Intra-page links are used when the source and the<br />

destination <strong>of</strong> a link belong <strong>to</strong> the same page.<br />

• Inter-page links are used when the source and the<br />

destination are on different pages.<br />

Based on the functional requirements <strong>of</strong> <strong>Web</strong><br />

applications, the UWE modeling method defines the<br />

following types <strong>of</strong> links:<br />

• Navigation links are used <strong>to</strong> navigate between<br />

nodes,<br />

• Process links point <strong>to</strong> the start node <strong>of</strong> a process.<br />

• External links point <strong>to</strong> a node not directly<br />

belonging <strong>to</strong> the application.<br />

9.3.3 The OO-H (Object-Oriented Hypermedia)<br />

modeling method defines five types <strong>of</strong> links as follows:<br />

• I-links (internal links) point <strong>to</strong> nodes inside the<br />

boundaries <strong>of</strong> a given navigational requirement.<br />

• T-links (traversal links) point <strong>to</strong> nodes covering<br />

other navigational requirements.<br />

• R-links (requirement links) point <strong>to</strong> a start <strong>of</strong> a<br />

navigational path.<br />

• X-links (external links) point <strong>to</strong> external nodes.<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

519


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

• S-links (service links) point (with their<br />

corresponding response links) <strong>to</strong> services.<br />

9.3.4 HDM<br />

Structural links connect elements <strong>of</strong> the same node,<br />

Perspective links put various views <strong>of</strong> a node in relation<br />

<strong>to</strong> each other and <strong>Application</strong> links put different nodes<br />

in relation <strong>to</strong> each other, depending on the application.<br />

9.3.5 <strong>Web</strong>ML<br />

In Contextual links carry context information. Noncontextual<br />

links have no associated context information.<br />

With regard <strong>to</strong> the distribution <strong>of</strong> nodes on the hypertext<br />

level over pages on the presentation, Intra-page links are<br />

used when the source and the destination <strong>of</strong> a link belong<br />

<strong>to</strong> the same, and Inter-page links are used when the source<br />

and the destination are on different pages.<br />

9.4 Navigation Access Model [4]<br />

In Hypertext structure models describe navigation, but not<br />

orientation. Access models describe both through<br />

Navigation patterns, used <strong>to</strong> consistently describe<br />

conventional elements.<br />

• (list <strong>of</strong> objects <strong>of</strong> the same type)<br />

• (list <strong>of</strong> heterogeneous objects)<br />

• (sequential links)<br />

• <br />

The hypertext structure model built so far alone is not<br />

sufficient <strong>to</strong> describe how nodes can be reached by<br />

navigation. To allow users <strong>to</strong> navigate <strong>to</strong> nodes the users<br />

need navigation and orientation aids. These are formulated<br />

in the form <strong>of</strong> access structures refining the hypertext<br />

structure model. Recurring access structures are described<br />

in as design patterns, also called “hypermedia design<br />

patterns” or “navigation patterns”.<br />

The use <strong>of</strong> these navigation patterns helps <strong>to</strong> increase the<br />

quality <strong>of</strong> the hypertext model tremendously.<br />

Figure 11 Navigation Acess Model for online PC shop<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

10 COMPARISON AND ANALYSIS<br />

10.1 Comparison <strong>of</strong> <strong>Existing</strong> Language <strong>to</strong> model <strong>Web</strong><br />

site<br />

Features <strong>Web</strong>ML UWE W2000 OOWS OOHD<br />

M<br />

Events<br />

Ok - Poor - -<br />

Broswer<br />

Control<br />

Lifecycles<br />

Users<br />

Security<br />

Databases<br />

Messaging<br />

UI<br />

Modelling<br />

Platform<br />

Independent<br />

Standards<br />

Meta-models<br />

Model<br />

Verification<br />

CASE Tool<br />

Poor - - - -<br />

Poor Good - -<br />

Good Poor Poor Poor -<br />

Ok Ok Poor - -<br />

Good Ok Poor Poor Poor<br />

Good Poor Ok - -<br />

Poor Ok Ok Poor Ok<br />

Excellent Excellent Good<br />

Excellen<br />

t<br />

Good<br />

Poor Excellent Excellent Ok Poor<br />

Poor Excellent Excellent Poor -<br />

Ok Ok - - -<br />

Good Ok Poor Ok -<br />

Figure 12 Feature Comparison <strong>of</strong> <strong>Existing</strong> Language <strong>to</strong><br />

model <strong>Web</strong> site<br />

10.2 Summary <strong>of</strong> the Requirements Specification<br />

Perspective Analysis<br />

Method Functional<br />

Req.<br />

Data Req. Navigational<br />

Req.<br />

OOHDM Use cases, - UIDs<br />

textual<br />

templates<br />

WSDM Natural<br />

language task<br />

diagram<br />

Natural<br />

language<br />

Natural<br />

language task<br />

diagram<br />

SOHDM Scope diagram, - -<br />

SACs<br />

UWE <strong>Web</strong> process<br />

use cases,<br />

stereotyped<br />

activity<br />

diagrams, use<br />

- Navigation use<br />

cases,<br />

stereotyped<br />

activity<br />

diagrams<br />

cases<br />

<strong>Web</strong>ML User templates,<br />

activity<br />

diagrams, use<br />

Data<br />

dictionary<br />

Site<br />

specification<br />

templates<br />

cases<br />

OOH Use cases - <strong>Web</strong><br />

requirements<br />

metamodel(WE-<br />

RMExt)<br />

OOWS<br />

W2000<br />

NDT<br />

Task<br />

characterization<br />

templates,<br />

activity<br />

diagrams<br />

Functional use<br />

cases<br />

Use cases<br />

formatted<br />

templates<br />

Information<br />

templates<br />

Task taxonomy,<br />

activity<br />

diagrams<br />

- Navigational<br />

use cases<br />

Formatted Formatted<br />

templates templates<br />

Figure 13 Summary <strong>of</strong> the Requirements Specification<br />

Perspective Analysis<br />

520


Anup Hande et al , Int.J.Computer Technology & <strong>Application</strong>s,Vol 4 (3),514-521<br />

ISSN:2229-6093<br />

10.3 Summary <strong>of</strong> the MDD Perspective Analysis<br />

Method<br />

Visual<br />

Syn.<br />

And<br />

Meta<br />

Model<br />

Req.<br />

Spec.<br />

Tool<br />

OOHDM Ok -<br />

WSDM Ok - -<br />

SOHDM Ok - -<br />

UWE<br />

Ok<br />

AgroUWE<br />

Magic<br />

UWE<br />

<strong>Web</strong>ML Ok -<br />

OOH Ok - -<br />

OOWS<br />

Ok<br />

RE <strong>to</strong>ols<br />

based on<br />

Eclips<br />

W2000 Ok - -<br />

NDT Ok NDT suits<br />

Deriv. <strong>of</strong><br />

Conceptual<br />

<strong>Models</strong><br />

Transformations<br />

specified with :<br />

textual guidelines<br />

applied :<br />

manually (no<br />

<strong>to</strong>ols)<br />

Transformations<br />

specified with:<br />

QVT applied:<br />

manually (no<br />

<strong>to</strong>ols)<br />

Transformations<br />

specified in :<br />

textual guidelines<br />

applied :<br />

manually(no<br />

lools)<br />

Transformations<br />

specified with:<br />

graph<br />

transformations<br />

applied :<br />

au<strong>to</strong>matically<br />

(AGG <strong>to</strong>ols)<br />

Implemented as<br />

AGG Graph<br />

Transformation<br />

Transformations<br />

Specified with ::<br />

QVT<br />

Applied:<br />

au<strong>to</strong>matically<br />

(NDT Suite)<br />

Implemented as:<br />

Enterprise<br />

Architect<br />

templates.<br />

Figure 14 Summary <strong>of</strong> the MDD Perspective Analysis<br />

11 ACKNOWLEDGMENT<br />

A large number <strong>of</strong> different methods for <strong>Web</strong> application<br />

modeling have been developed in the last decade.<br />

However, some methods will probably converge during<br />

the course <strong>of</strong> further development. It is currently hard <strong>to</strong><br />

predict how far this converging trend will go and whether<br />

it will eventually lead <strong>to</strong> a “Unified <strong>Web</strong> Modeling<br />

Language”, similarly <strong>to</strong> the development <strong>of</strong> the UML. It is,<br />

however, uncontested that there is a trend <strong>to</strong>wards using<br />

UML as notation language. Some methods are moving<br />

from their proprietary notation <strong>to</strong> a UML compliant one<br />

and introduce a UML pr<strong>of</strong>ile for their method.<br />

The methods that will succeed will be determined by the<br />

<strong>to</strong>ol support <strong>of</strong>fered for their modeling method. In the<br />

future, <strong>to</strong>ols will systematically support not only the<br />

notation, but also the development process allowing for a<br />

model-driven development approach. However, this means<br />

that the methods will have <strong>to</strong> define clear guidelines and<br />

approaches, in contrast <strong>to</strong> the current situation. It also<br />

means that agile approaches (Ambler 2002) will most<br />

likely have <strong>to</strong> be considered, but they will have <strong>to</strong> be<br />

harmonized in view <strong>of</strong> (semi) au<strong>to</strong>matic generation.<br />

The inclusion <strong>of</strong> <strong>Web</strong> services in model-based <strong>Web</strong><br />

application development projects will bring new<br />

challenges, the most critical probably being the interplay<br />

between <strong>to</strong>p-down modelling and bot<strong>to</strong>m-up integration <strong>of</strong><br />

existing services and adequate <strong>to</strong>ol support.<br />

References<br />

[1] Manuel Wimmer, Andrea Schauerhuber, Wieland<br />

Schwinger, Horst Kargl : “On the Integration <strong>of</strong> <strong>Web</strong><br />

Modeling Languages: Preliminary Results and Future<br />

Challenges “:IEEE TRANSACTIONS ON<br />

SOFTWARE ENGINEERING.<br />

[2] Guotao Zhuang, Junwei Du : “MDA-BASED<br />

Modeling and Implementation <strong>of</strong> E-Commerce <strong>Web</strong><br />

<strong>Application</strong>s in <strong>Web</strong>ML” 2nd international workshop<br />

on computer CSE 2009<br />

[3] Gerti Kappel, Birgid Pröll, Siegfried Reich, Werner<br />

Retschitzegger (eds.),dpunkt-verlag:“<strong>Web</strong><br />

Engineering: Systematic Development <strong>of</strong> <strong>Web</strong><br />

<strong>Application</strong>s”<br />

[4] Gustavo Rossi , Oscar Pastro, Daniel Schwade, Luis<br />

Olsina “<strong>Web</strong> Engineering: Modelling and<br />

Implementing <strong>Web</strong> <strong>Application</strong>s” Human-<br />

Computer Interaction Series ISSN 1571-5035<br />

[5] Stefano Ceri, Piero Fraternali, Aldo Bongio :” <strong>Web</strong><br />

Modeling Language (<strong>Web</strong>ML): a modeling language<br />

for designing <strong>Web</strong> sites” IETJournal<br />

[6] Andreas Kraus : Model Driven S<strong>of</strong>tware Engineering<br />

for <strong>Web</strong> <strong>Application</strong>s"<br />

[7] Nathalie Moreno, Piero Fraternali, An<strong>to</strong>nio Vallecillo<br />

“<strong>Web</strong>ML Modeling in UML“ IET Journal.<br />

[8] Marco Brambilla, Sara Comai, Piero Fraternali,<br />

Maristella Matera: "DESIGNING WEB<br />

APPLICATIONS WITH WEBML AND<br />

WEBRATIO"<br />

[9] Stefano Ceri, Piero Fraternali, Maristella Matera<br />

:"Conceptual modeling <strong>of</strong> data-intensive <strong>Web</strong><br />

applications“<br />

[10] Thiago Jabur Bittar, renata P. M. Fortes, Luanana<br />

Lopes Loba<strong>to</strong>, and Willian M. Watanabe "<strong>Web</strong><br />

Communication and Interaction Modeling using<br />

Model Driven Develpment“ SIGDOC’09, Oc<strong>to</strong>ber<br />

5–7, 2009, Blooming<strong>to</strong>n, Indiana, USA<br />

IJCTA | May-June 2013<br />

Available online@www.ijcta.com<br />

521

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!