ENHANCEMENT OF UML-BASED WEB

2 downloads 0 Views 76KB Size Report
Jun 16, 2013 - evolusi berkualiti tinggi dalam aplikasi berasaskan web. UML-Based Web. Engineering (UWE) adalah salah satu pendekatan dalam ...
ENHANCEMENT OF UML-BASED WEB ENGINEERING FOR METAMODELS: HOMEPAGE DEVELOPMENT CASESTUDY

KARZAN WAKIL SAID

A dissertation submitted in partial fulfillment of the requirements for the award of the degree of Master of Science (Computer Science)

Faculty of Computing University Technology Malaysia

JUNE 2013

ii

I declare that this dissertation entitled ““Enhancement of UML-Based Web Engineering for metamodels: Homepage Development Case Study” is the result of my own research rch except as cited in the references. The dissertation has not been accepted for any degree and is not concurrently submitted in candidature of any other degree.

Signature : ……………………… Name

: Karzan Wakil Said

Date

: June 16, 2013

iii

Dedicated to my beloved family and best friend who has always believed in me.

iv

ACKNOWLEDGEMENT

First of all, I would like to warmly express my utmost gratitude to Allah S.W.T for His blessing and given strength during the completion of this research.

I would also like to sincerely thank my supervisor Assoc. Prof. Dr. Dayang Norhayati Binti Abang Jawawi, for her continuous motivation, advices, encouragement and support from the beginning to the end of my studies, till I was able to develop a deep understanding of the research topic.

Finally my special thanks to my parent for their love and care especially my beloved wife Hwda and my Son Nima, for their support and cheering me up at those difficult time.

v 1

2

ABSTRACT

Web Engineering is the application of systematic, disciplined and quantifiable approaches to the cost-effective development and evolution of highquality solutions in the web-based applications. UML-Based Web Engineering (UWE) is one of the approaches of web engineering, which provides a standard and systematic approach for the development of Web applications. UWE metamodel is a design considered as the conservative extension of the UML metamodel. In this thesis we used UWE metamodels to develop web homepages, the problem is current UWE cannot support homepage contents directly because UWE metamodels are not enough elements for supporting homepages. The goal of this research is enhancement UWE metamodels to high usability UWE in homepage development. There are two steps in this development process. In the first step, we compared UWE with Object Oriented Hyperlink (OOH) and Web Modeling Language (WebML) to show the strengths and weaknesses of UWE in the development of homepages. In the second step, extended UWE metamodel was proposed eleven elements (six elements for navigation model and five elements for presentation model) to solve these weaknesses to fully support the homepage development process. For the enhanced UWE metamodel, we defined the eleven elements to support the design of homepages, it is fully integrates the UWE metamodel and provides an XML Metadata Interchange (XMI) extension. The construction process of Web applications is supported by incorporating the semi-automatic UWE development steps and the Object Constraint Language (OCL) of the UWE. Finally we compared the enhanced UWE metamodel with the original UWE metamodel by using a case study, and then the result showed capabilities of the eleven elements in UWE metamodel for development website homepages, and become to increase usability UWE metamodels.

vi

ABSTRAK

Kejuruteraan Web menggunakan pendekatan yang sistematik, berdisiplin dan boleh diukur yang dapat menyumbang kepada penjimatan kos yang efektif dan evolusi

berkualiti tinggi dalam aplikasi berasaskan web. UML-Based Web

Engineering (UWE) adalah salah satu pendekatan dalam kejuruteraan web yang menyediakan piawaian dan pendekaatan sistematik dalam pembangunan aplikasi web. UWE meta-model adalah rekaan yang dianggap sebagai lanjutan konservatif UML meta-model. Dalam tesis ini, pendekatan UWE meta-model digunakan untuk membangunkan laman web.Namum begitu, terdapat masalah berkaitan UWE sedia ada tidak mempunyai elemen yang mencukupi untuk menyokong kandungan laman web secara terus. Kajian ini bermatlamat untuk menambahbaik UWE meta model seterusnya menyelesaikan isu berkaitan pembangunan laman web. Terdapat dua langkah dalam proses pembangunan ini. Dalam langkah pertama, perbandingan UWE dengan Object Oriented Hyperlink (OOH) dan Web Modelling Languange (WebML) dibuat untuk menunjukkan kekuatan dan kelemahan UWE dalam pembangunan laman web.

Manakala dalam langkah kedua,

lanjutan UWE

Metamodel telah dicadangkan dengan sebelas elemen (enam elemen untuk model navigasi dan lima elemen bagi model persembahan) bagi menyelesaikan kelemahan ini seterusnya menyokong sepenuhnya proses pembangunan laman Web. Untuk menambahbaik UWE Metamodel ini, sebelas elemen dikenalpasti untuk menyokong rekabentuk laman web. Ia adalah integrasikan sepenuhnya UWE Metamodel dan menyediakan lanjutan Metadata Interchange XML (XMI). Proses pembangunan Aplikasi Web ini menyokong dengan menggabungkan langkah-langkah semioutomatik UWE dan Object Constraint Language (OCL) daripada UWE tersebut. Akhir sekali, UWE metamodel yang telah ditambabaik dibandingkan dengan UWE metamodel asal dengan menggunakan kajian kes, maka hasil menunjukkan sebelas elemen dalam UWE metamodel berkeupayaan dalam pembangunan Laman Utama bagi Laman Web dan manjadi untuk meningkatkan kebolehgunaan UWE metamodel.

vii

TABLE OF CONTENTS

CHAPTER

TITLE

PAGE

DECLARATION OF THESIS STATUS SUPERVISOR DECLARATION

1

TITLE PAGE

i

STUDENT DECLARATION

ii

DEDICATION

iii

ACKNOWLEDGMENT

iv

ABSTRACT

v

ABSTRAK

vi

TABLE OF CONTENTS

vii

LIST OF TABLES

xiii

LIST OF FIGURES

xiv

LIST OF ABBREVIATIONS

xvii

LIST OF APPENDIXES

xix

INTRODUCTION 1.1 Introduction

1

1.2 Problem Background

3

1.3 Problem Statement

6

1.4 Aim of Study

7

1.5 Objectives

7

1.6 Scopes

7

1.7 Significance of Study

8

1.8 Dissertation Organization

8

viii 2

LITERATURE REVIEW 2.1 Introduction

10

2.2 Homepage

11

2.2.1 The homepages is different from all other web pages

12

2.2.2 Major Options on the Homepage

14

2.2.3 Characteristic of Homepage

15

2.2.4 Challenge to develop Homepage

16

2.2.5 Web Usability Design

17

2.3

Web Engineering Methods 2.3.1 UML-Based Web Engineering (UWE) Method

18 20

2.3.1.1

Method Description

21

2.3.1.2

Adaptation to integrate processdriven Web applications

22

2.3.1.3

Development Process

23

2.3.1.4

UWE Metamodel

24

2.3.2 Web Modelling Language (WebML) Method

32

2.3.2.1 Method Description

32

2.3.2.2 Adaptation to integrate processdriven Web applications

33

2.3.2.3 Development Process

35

2.3.2.4 WebML Metamodel

36

2.3.3 Object Oriented Hypermedia (OOH) Method

2.3.4

2.3.3.1 Method Description

39

2.3.3.2 Adaptation to integrate processdriven Web applications

40

2.3.3.3 Development Process

41

2.3.3.4 OOH Metamodel

42

2.3.3.5 Navigation Access Diagram (NAD)

44

2.3.3.6 Abstract Presentation Diagram (APD)

48

Comparison between the methods

49

2.4 Web Engineering Tools 2.4.1

39

51

ArgoUWE Tool

51

2.4.1.1

Modelling with ArgoUWE

52

2.4.1.2

Starting with the Conceptual Model

53

ix 2.4.1.3 Completing with the Presentation Model

54

2.4.1.4

Consistency Checking

55

2.4.1.5

Architecture of ArgoUWE

56

2.4.1.6

ArgoUWE Metamodel

56

2.4.2 WebRatio Tool

56

2.4.2.1

58

The Web Ratio Editing Tool

2.4.3

Visual Wade Tool

59

2.4.4

Comparison between three tools

61

2.5 Discussion

3

RESEARCH METHEDOLOGY 3.1 Introduction

64

3.2 The web Engineering Research

64

3.3

Research Framework and process

65

3.3.1

Framework for Web applications

65

3.3.2

Process for Web Application

67

3.3.3

Research Process

68

3.3.3.1 Problem Formulation

70

3.3.3.2 Literature review

70

3.3.3.3 Case Study (UTM homepage)

71

3.3.3.4 Design UTM homepage by three Methods

72

3.3.3.5 UWE Metamodel

73

3.3.3.6 Enhance UWE, Redesign and Comparison

75

3.3.3.7 Usability Design metamodels

75

3.4 Summary

4

63

75

USABILITY DESIGN CASE STUDY AND COMPARISON METAMODELS 4.1 Introduction

76

4.2 Requirement Web Engineering

76

4.2.1

Functional Requirements

77

4.2.2

Non Functional Requirements

78

x 4.3 Web engineering process design framework

78

4.4 Web Modeling

80

4.5

Case study/Scenario

82

4.5.1 UTM homepage Content

85

4.5.2

92

4.6

Design UTM homepage by UWE

94

4.6.1

Requirements

95

4.6.1.1 Use case diagram for case study

96

Process Design metamodels

98

4.6.2.1 Content Model

98

4.6.2

4.6.3 4.7

4.8

Classification of the UTM homepage content

4.6.2.2 Navigation Model

100

4.6.2.3 Presentation Model

104

Conclusion process design metamodels

106

Design UTM homepage by WebML

107

4.7.1

Requirements

108

4.7.2

Process Design metamodels

108

4.7.2.1 Data Modeling

109

4.7.2.2 Hypertext Modeling

111

4.7.2.3 Presentation Modeling

113

4.7.3 Conclusion process design metamodels

114

Design UTM homepage by OOH

115

4.8.1

115

Requirements

4.8.2 Process Design metamodels

4.8.3

115

4.8.2.1

Class diagram

116

4.8.2.2

Navigation Access Diagram (NAD)

118

4.8.2.3

Abstract Presentation Diagram (APD)

119

Conclusion process design metamodels

122

4.9. Comparison metamodels

122

4.9.1

Comparison metamodels to design

122

4.9.2

Comparison elements to design Homepages

123

4.10 Summary

125

xi

5

ENHANCEMENT UWE METAMODELS, REDESGIN AND COMPARISON 5.1 Introduction

126

5.2 Define Preparation Elements

127

5.3 Enhance UWE metamodel

129

5.3.1 Old UWE in process extension metamodels 5.3.1.1

6

131

5.3.2 Extension of the UWE

133

5.3.3 Process Extension of the UWE

134

5.3.4 5.4

Metamodel Layering

129

5.3.3.1 Structuring the extensions (Profile = Packages)

134

5.3.3.2 Defining new meta-classes (Stereotypes)

136

5.3.3.3 Defining new metaattributes (tagged values)

137

5.3.3.4 Defining new meta- associations (tagged values , to other model elements)

138

5.3.3.5 Defining new constraints

138

5.3.3.6 Modeling graphically Profiles

139

5.3.3.7 Tabular form for defining all elements

140

New UWE

142

Redesign UTM homepage after enhance UWE metamodel

143

5.5 Comparison between the old and new UWE navigation model

148

5.6 Usability Design for UWE metamodels

149

5.7

150

Summary

CONCLUSION AND FUTURE WORK 6.1

Introduction

151

6.2

Summary

151

6.3

Conclusion

152

6.4

Recommendation and future work

153

xii

REFERENCES

155

Appendixes A

163-167

Appendixes B

168-171

Appendixes C

172-178