Tải bản đầy đủ (.pdf) (122 trang)

Nghiên cứu kỹ thuật biến đổi mô hình sử dụng trong xây dựng phần mềm dựa web theo hướng tiếp cận MDA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.62 MB, 122 trang )

ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

MỤC LỤC

LỜI CAM ĐOAN ......................................................................................................... 5
LỜI CẢM ƠN ............................................................................................................... 6
DAN

MỤC CÁC TỪ VIẾT TẮT ............................................................................. 7

DAN

MỤC

DAN

MỤC CÁC BẢNG ......................................................................................... 12

ÌN

VẼ ............................................................................................... 9

MỞ ĐẦU ..................................................................................................................... 13
C ƢƠNG 1. KỸ T UẬT P ÁT TRIỂN ỨNG DỤNG WEB

ƢỚNG MÔ

ÌN


...................................................................................................................................... 15
1.1 GIỚI THIỆU

15

1.2 MÔ HÌNH HÓA ỨNG DỤNG WEB[2]

15

1.2.1

Các cấp độ .................................................................................................. 15

1.2.2

Các giai đoạn ............................................................................................. 17

1.2.3

Các khía cạnh(Aspects): ............................................................................ 18

1.2.4

Tùy biến(Customization): .......................................................................... 18

1.3 NGÔN NGỮ MÔ HÌNH HÓA THỐNG NHẤT (UML)

19

1.3.1 Lịch sử UML .................................................................................................. 19

1.3.2 Ưu điểm của UML ......................................................................................... 20
1.4 CÁC KỸ THUẬT WEB

ƢỚNG MÔ HÌNH

20

1.4.1 Kỹ thuật Web dựa trên (UWE)....................................................................... 20
1.4.2 WebML (Ngôn ngữ mô hình hóa Web) ......................................................... 23
1.4.3 Một số phương pháp kỹ thuật web khác ........................................................ 25
1.4.4 So sánh và phân tích các kỹ thuật web hướng mô hình[49]........................... 28
1.5. KẾT LUẬN

31

1

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

C ƢƠNG 2. KỸ T UẬT BIẾN ĐỔI MÔ
MỀM


ƢỚNG MÔ

ÌN

TRONG XÂY DỰNG P ẦN

ÌN ........................................................................................ 33

2.1. CÁC MỨC MDA

33

2.1.1 Mô hình Độc lập Tính toán (CIM-Computation Independent Mode)............ 34
2.1.2 Mô hình Độc lập Nền tảng (PIM-Platform Independent Model) ................... 35
2.1.3 Mô hình Phụ thuộc Nền tảng (PSM-Platform Specific Model) ..................... 35
2.2. TỔNG QUÁT VỀ CHUYỂN ĐỔI MÔ HÌNH TRONG MDA

36

2.3. TRUY VẤN, CÁC KHUNG NHÌN VÀ CÁC PHÉP CHUYỂN ĐỔI
(QUERY, VIEWS, TRANSFORMATIONS)

37

2.4. PHÂN LOẠI NGÔN NGỮ QVT

40

2.4.1. Các Đặc tính của các Phép chuyển đổi Mô hình ........................................... 40

2.4.2. Các Quy tắc Chuyển đổi ................................................................................ 41
2.4.3. Phạm vi áp dụng quy tắc ............................................................................... 42
2.4.4. Mối quan hệ giữa các mô hình nguồn và đích .............................................. 43
2.2.5. Chiến lược áp dụng quy tắc ........................................................................... 44
2.4.6. Điều phối Quy tắc.......................................................................................... 45
2.4.7. Tổ chức Quy tắc ............................................................................................ 46
2.4.8. Tính khả truy vết ........................................................................................... 47
2.4.9. Hướng tính ..................................................................................................... 48
2.5. QUY TRÌNH UWE VÀ CÁC MÔ HÌNH

48

2.5.1. Tổng quan Quy trình ..................................................................................... 49
2.5.2. Các mô hình trong UWE (Phụ lục B.1) ........................................................ 50
2.6. CÁC PHÉP BIẾN ĐỔI MÔ HÌNH TRONG UWE

51

2.6.1. Xây dựng các Mô hình Thiết kế .................................................................... 51
2.6.2. Tạo một Mô hình được Tích hợp .................................................................. 57
2.7. UWE TRONG VIỆC THIẾT KẾ WEB
B.2)

2

ƢỚNG MÔ HÌNH (PHỤ LỤC
60

c vi n Vũ T à


Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

2.7.1. Lõi xử lý UWE (UWE core process) ............................................................ 60
2.7.2. UWE Metamodel – Mô hình của mô hình UWE .......................................... 62
2.7.3.

Mô hình sang siêu mô hình trong UWE ..................................................... 63

2.8. KẾT LUẬN

65

C ƢƠNG 3. ÁP DỤNG XÂY DỰNG ỨNG DỤNG WEB .................................... 67
3.1. GIỚI THIỆU VỀ ỨNG DỤNG NICE-LINK

67

3.1.1. Các chức năng chung của ứng dụng .............................................................. 67
3.1.2. Các tính năng ................................................................................................. 68
3.2. PHÂN TÍCH YÊU CẦU

68


3.2.1 Biểu đồ Use Case của ứng dụng Nice-Link (Use Case Diagram) ................. 69
3.2.2. Biểu đồ hoạt động (Activity Diagram) .......................................................... 72
3.2.2. Mô hình nội dung (Content) .......................................................................... 73
3.2.3. Mô hình điều hướng (Navigation) ................................................................. 75
3.2.4. Mô hình xử lý (Process) ................................................................................ 76
3.2.5. Mô hình biểu diễn (Presentation) .................................................................. 78
KẾT LUẬN ................................................................................................................. 82
TÀI LIỆU T AM K ẢO ......................................................................................... 84
PHỤ LỤC A ................................................................................................................ 89
A.1 CÁC MÔ HÌNH CỦA CẢ HỆ THỐNG

89

A.1.1 Biểu đồ Use Case........................................................................................... 89
A.1.2 Biểu đồ Activity ............................................................................................ 92
A.2 GIAO DIỆN ỨNG DỤNG

100

A.2.1 Giao diện trang chủ ..................................................................................... 100
A2.2 Đăng nhập ..................................................................................................... 101
A.2.3 Đăng ký ....................................................................................................... 102
A.2.4 Trang cá nhân .............................................................................................. 103

3

c vi n Vũ T à

Tr


g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

A.2.5 Trang search cho người dùng đã LOG-IN .................................................. 103
A.2.6 Gửi tin nhắn cho người dùng khác .............................................................. 104
A.2.7 Nhận tin nhắn .............................................................................................. 104
P Ụ LỤC B .............................................................................................................. 105
B.1 CÁC MÔ HÌNH TRONG UWE

105

B1.1. Mô hình các Yêu cầu ................................................................................... 105
B.1.2. Các Mô hình Thiết kế ................................................................................. 106
B.1.3. Các Mô hình Kiến trúc và Mô hình Cài đặt ............................................... 110
B.2 Cách sử dụng UWE để thiết kế ứng dụng web

110

B.2.1. Môi trường thực thi (Runtime Environment) ............................................. 113
B.2.2. Content và Navigation ................................................................................ 114
B.2.3. Process ........................................................................................................ 116
B.2.4 Presentation .................................................................................................. 119

4

c vi n Vũ T à


Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi, được thực hiện
dưới sự hướng dẫn khoa học của PGS.TS Huỳnh Quyết Thắng.
Nội dung nghiên cứu và kết quả nêu trong luận văn là hoàn toàn trung thực,
được tôi tổng hợp, bổ sung và biên soạn theo sự hiểu biết của mình sau khi nghiên cứu
được từ các tài liệu tham khảo như sách, bài báo khoa học, luận văn, và dữ liệu từ các
trang Web uy tín.
Tác giả luận văn xin cam đoan rằng mọi sự giúp đỡ cho việc thực hiện Luận văn
này đã được cảm ơn và các thông tin trích dẫn trong Luận văn đã được chỉ rõ nguồn
gốc.
Tác giả luận văn xin chịu trách nhiệm về nghiên cứu của mình.
Hà Nội, tháng

, năm 2015

H c viên
(ký và ghi rõ họ tên)

5


c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

LỜI CẢM ƠN
Với lòng biết ơn sâu sắc nhất, em xin được gửi lời cảm ơn đến các Quý
Thầy/Cô đã giảng dạy trong chương trình đào tạo thạc sỹ, viện Công Nghệ Thông Tin
và Truyền Thông, Đại học Bách Khoa Hà Nội, đã cùng với tri thức và tâm huyết của
mình để truyền đạt vốn kiến thức quý báu cho em trong suốt thời gian học tập tại
trường. Đây là vốn kiến thức thực sự hữu ích, không chỉ làm nền tảng cho quá trình
nghiên cứu khóa luận, mà còn là hành trang giúp em vững bước trên con đường hoạt
động trong lĩnh vực Công nghệ thông tin nói riêng và trong cuộc sống nói chung.
Em xin chân thành cảm ơn PGS.TS. Huỳnh Quyết Thắng – người đã tận tâm
hướng dẫn cho em thực hiện luận văn. Nếu không có những lời hướng dẫn, dạy bảo
của thầy thì em nghĩ luận văn này của em rất khó có thể hoàn thiện được. Một lần nữa,
em xin chân thành cảm ơn thầy.
Cuối cùng em xin gửi lời biết ơn sâu sắc đến gia đình và bạn bè – những người
đã luôn bên cạnh giúp đỡ và tạo điều kiện tốt nhất cho tôi trong suốt quá trình học tập
cũng như thực hiện luận văn.
Do thời gian có hạn và kinh nghiệm nghiên cứu khoa học chưa nhiều nên luận
văn còn nhiều thiếu sót, rất mong nhận được ý kiến góp ý của Quý Thầy/Cô và các bạn
học viên.


6

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

DANH MỤC CÁC TỪ VIẾT TẮT
Chú giải

Chữ viết tắt
UML

Unified Modeling Language

WebML

Web Markup Language

WebRE

Web requirements

MDA


Model-Driven Architecture

DFD

data flow diagram

TCP/I

Internet protocol suite

UWE

UML-based Web Engineering

CIM

Computation Independent Mode

PIM

Platform Independent Model

PSM

Platform Specific Model

MDD

Model-Driven Development


OMG

Object Management Group

MDWD

model-driven Web Development

OOES

Object Oriented Software Engineering

OMT

(Object Modeling Technique

XMI

XML Metadata Interchange

OCL

Object Constraint Language

QVT

Query/View/Transformation

OOHDM


Object-Oriented Hypermedia Design Method

WSDM

Web Site Design Method

OO

Object-Oriented

OO-H

Object-Oriented Hypermedia

NAD

Navigation Access Diagram

BPMN

Business Process Model and Notation

7

c vi n Vũ T à

Tr

g



ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

IS

Information System

GUI

Graphical User Interface

WebSA

Web Software Architecture

JSP

Java Server Pages

POJO

Plain Old Java Objects

ATL

The Active Template Library


HTML

HyperText Markup Language

8

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

DANH MỤC HÌNH VẼ
Hình 1.1 Mô hình ứng dụng web[2]............................................................................... 16
Hình 1.2: Phân tích và thiết kế của mô hình ứng dụng web .......................................... 17
Hình 1.3 : Các mô hình xây dựng trong Quy trình Tổng quát của quá trình tiếp cận Kỹ
thuật web dựa trên UML ................................................................................................ 22
Hình 2.1: Các mức trừu tượng cơ bản trong MDA [3] .................................................. 34
Hình 2.2: Quy trình chuyển đổi MDA tổng quát ........................................................... 36
Hình 2.3: Sử dụng các siêu mô hình trong một định nghĩa chuyển đổi ......................... 38
Hình 2.4: Các đặc tính mức cao nhất của các phép chuyển đổi mô hình ...................... 40
Hình 2.5: Các đặc tính của các quy tắc chuyển đổi ....................................................... 41
Hình 2.6: Các đặc tính của việc định phạm vi áp dụng quy tắc ..................................... 42
Hình 2.7: Các đặc tính của mối quan hệ giữa các mô hình nguồn và đích .................... 43
Hình 2.8: Các đặc tính của chiến lược áp dụng quy tắc ................................................. 44

Hình 2.9: Đặc điểm của điều phối quy tắc ..................................................................... 45
Hình 2.10: Các đặc tính của việc tổ chức quy tắc .......................................................... 46
Hình 2.11: Các đặc tính của tính khả truy vết ................................................................ 47
Hình 2.12: Các đặc tính của hướng tính......................................................................... 48
Hình 2.13:Tổng quan Quy trình UWE ........................................................................... 49
Hình 2.14: Biểu đồ Use Case dành cho cổng thông tin âm nhạc (CIM)...................... 105
Hình 2.15: Biểu đồ hoạt động cho mô hình Use Case tải album trên cổng thông tin âm
nhạc (giản lược) (CIM) ................................................................................................ 106
Hình 2.16: Mô hình nội dung và người dùng (PIM) .................................................... 107
Hình 2.17: Mô hình điều hướng (PIM) ........................................................................ 108
Hình 2.18: Quy trình nghiệp vụ Login (PIM) .............................................................. 108
Hình 2.19: Các trạng thái Home và Song của “bức tranh tổng thể” ............................ 109
Hình 2.20: Khuôn thức chuyển đổi mô hình dành cho các siêu mô hình WebRE và
UWE ............................................................................................................................... 53

9

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

Hình 2.21: Từ mô hình các yêu cầu thành mô hình nội dung ........................................ 54
Hình 2.22: Các phép biến đổi để xây dựng mô hình điều hướng .................................. 55

Hình 2.23: Phép biến đổi Search2Query (ký pháp đồ họa QVT) ................................. 56
Hình 2.24: Các phép biến đổi để xây dựng mô hình biểu diễn ...................................... 57
Hình 2.25: Các phép biến đổi để xây dựng mô hình “bức tranh tổng thể” .................... 58
Hình 2.26: Ánh xạ nút điều hướng thành trạng thái trong “bức tranh tổng thể” (phép
biến đổi biểu đồ)............................................................................................................. 59
Hình 2.27: Tích hợp các đặc điểm kiến trúc .................................................................. 60
Hình 2.28: Sinh ra các mô hình đặc trưng nền hệ thống ................................................ 60
Hình 2.29: Lõi xử lý UWE để chuyển đổi CIM->PIM và PIM->PIM .......................... 61
Hình 2.30: biểu diễn metamodel UWE .......................................................................... 62
Hình 2.31: Mô hình Content của hệ thống Quản lý dự án (đã được đơn giản hóa) ....... 64
Hình 2.32: Một phần mô hình Navigation của hệ thống Quản lý dự án ........................ 64
Hình 2.33: Luồng xử lý cho RemoveProject ................................................................. 65
Hình 2.34: Mô hình giao diện của ProjectManager ....................................................... 65
Hình 2.35: Tổng quan về nền tảng kế thừa .................................................................. 112
Hình 2.36: Môi trường thời gian thực .......................................................................... 114
Hình 2.37: Môi trường xử lý activity ........................................................................... 118
Hình 2.38: JSP metamodel ........................................................................................... 120
Hình 3.1: Biểu đồ Use Case tổng quát ........................................................................... 69
Hình 3.2: Biểu đồ Use Case của hệ thống...................................................................... 70
Hình 3.3: Biểu đồ Use Case của người dùng đã đăng ký và người dùng khách ............ 71
Hình 3.4: Biểu đồ mô tả hoạt động chức năng người dùng mở chi tiết link .................. 73
Hình 3.5: Biểu đồ lớp thể hiện mô hình nội dung .......................................................... 75
Hình 3.6:Biểu đồ lớp thể hiện mô hình điều hướng....................................................... 76
Hình 3.7: Mô hình xử lý tổng quát ................................................................................. 77
Hình 3.8: Biểu đồ hoạt động AddComment .................................................................. 78

10

c vi n Vũ T à


Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

Hình 3.9: Mô hình giao diện tổng thể của một trang Web được thể hiện qua mô hình
biểu diễn ......................................................................................................................... 80
Hình 3.10: Giao diện trang chủ của ứng dụng Nice-Link .............................................. 81

11

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

DANH MỤC CÁC BẢNG
Bảng 1.1: So sánh đặc điểm của các ngôn ngữ mô hình hóa trang web hiện tại ........... 28
Bảng 1.2: Tóm tắt các yêu cầu phân tích phối cảnh kỹ thuật ........................................ 29
Bảng 1.3: Tóm tắt các phân tích phối cảnh MDD ......................................................... 30

Bảng 2.1: Các đặc tính của các phép biến đổi mô hình trong quy trình phát triển hướng
mô hình UWE [51] ......................................................................................................... 52
Bảng 3.1: Các khuôn mẫu và ký hiệu ............................................................................ 72
Bảng 3.2: Khuôn mẫu và ký hiệu ................................................................................... 79

12

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

MỞ ĐẦU
Từ khi có sự bùng nổ về mạng thông tin Internet, ngành công nghiệp Công Nghệ
Thông Tin phát triển ngày càng hiện đại và cho ra đời nhiều nền tảng mới. Chi phí sẽ
thấp hơn nếu ta có thể tiếp tục sử dụng lại những nền tảng đó, nhưng thực tế luôn đòi
hỏi những công nghệ mới tốt hơn. Có một điều rất dễ nhận thấy đó là mức độ trừu
tượng, tính kế thừa của các ngôn ngữ, của các phương pháp đều phát triển theo hướng
tăng dần. Tại sao lại như vậy? Nguyên nhân chính, đơn giản đến từ những điều rất tự
nhiên trong cuộc sống. Đó là nhu cầu của con người.
Để xây dựng những cơ sở hạ tầng phức tạp cho các doanh nghiệp, có hai vấn đề
thực sự nhức nhối. Thứ nhất, việc xây dựng ứng dụng phân tán là rất khó khăn. Tốn rất
nhiều nguồn nhân lực giàu kinh nghiệm. Ngoài ra mất rất nhiều thời gian để xây dựng
và bảo trì ứng dụng. Thứ hai, việc tích hợp nhiều ứng dụng với nhau để xử lí cùng một

vấn đề thậm chí còn khó khăn hơn nhiều. Trong môi trường Công Nghệ Thông Tin
ngày nay luôn tích hợp ít nhất từ 2 chương trình được xây dựng trên các middleware
khác nhau là rất phổ biến, yêu cầu một chuẩn giao tiêp chung giữa các đội xây dựng
ứng dụng.
Phương pháp phát triển phần mềm hướng mô hình (MDA: Model-Driven
Architecture) do tổ chức OMG (Object Management Group) phát triển là một cách tiếp
cận dùng các mô hình để phát triển phần mềm ứng dụng. Ba mục tiêu cơ bản của MDA
là khả năng di động, tính xuyên chức năng và sự sử dụng lại thông qua việc tách rời
các mối liên quan, ví dụ: mô hình độc lập với thao tác tính toán, (CIM - Computation
Independent Model), mô hình độc lập với nền công nghệ (PIM - Platform Independent
Model), mô hình cụ thể của nền công nghệ (PSM -Platform Specific Model), sự
chuyển đổi mô hình và các mẫu của MDA v.v…

13

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

Luận văn này được thực hiện nhằm mục đích nghiên cứu về kiến trúc hướng mô
hình, phương pháp chuyển đổi mô hình, phương pháp tiếp cận theo kiến trúc hướng mô
hình đặc biệt là phương pháp UWE trong công nghiệp phát triển phần mềm và minh
họa việc áp dụng lý thuyết nghiên cứu nhằm mục đích thiết kế chi tiết một ứng dụng

web chia sẻ link
Luận văn bao gồm 3 chƣơng chính nhƣ sau
 Chương 1: Kỹ thuật phát triển ứng dụng web hướng mô hình
 Chương 2: Kỹ thuật biến đổi mô hình trong xây dựng phần mềm hướng mô
hình
 Chương 3: Áp dụng xây dựng ứng dụng Web

14

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

C ƢƠNG 1. KỸ T UẬT P ÁT TRIỂN ỨNG DỤNG WEB
ƢỚNG MÔ

ÌN

1.1 GIỚI THIỆU
Mô hình hóa web (phát triển web định hướng mô hình - MDWD) là một nhánh của
xây dựng web, giúp giải quyết các vấn đề cụ thể liên quan tới thiết kế và phát triển các
ứng dụng web trên quy mô lớn[1]. Mô hình hóa web tập trung vào các hệ thống ký
hiệu thiết kế và các ngôn ngữ thị giác mà có thể được sử dụng để xây dựng các ứng

dụng web mạnh mẽ, có kết cấu rõ ràng, khả dụng và có khả năng duy trì được. Việc
thiết kế một trang web dữ liệu chuyên sâu cũng là để xác định các đặc điểm của web
dưới dạng các khái niệm trừu tượng trực giao khác nhau.
1.2 MÔ HÌNH HÓA ỨNG DỤNG WEB[2]
1.2.1 Các cấp độ
Bao gồm Thông tin, Cấu trúc nút/ liên kết, UI (giao diện người dùng) và sự phân
chia cách sắp đặt trang.
 Sự biểu diễn
- Cấu trúc: các yếu tố giao diện người dùng và thành phần của các yếu tố này
- Hành vi: phản ứng với các sự kiện đầu vào, tương tác và sự đồng bộ hóa giữa
các yếu tố giao diện người dùng
 Siêu văn bản
- Cấu trúc: các thành phần của trang và các mối quan hệ định hướng
- Hành vi: hành vi thời gian chạy (run-time) của siêu văn bản
 Nội dung
- Cấu trúc: dữ liệu phụ thuộc vào domain
- Hành vi: logic ứng dụng phụ thuộc vào domain

15

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng


Hình 1.1 Mô hình ứng dụng web[2]
Levels: các cấp độ
Presentation: sự biểu diễn
Hypertext: siêu văn bản
Content: nội dung
Aspects: các khía cạnh
Structure: cấu trúc
Behavior: hành vi
Phases: các giai đoạn
Analysis: phân tích
Design: thiết kế
Implementation: thực hiện
Customization: tùy biến

16

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

1.2.2 Các giai đoạn
Phương pháp tiếp cận phụ thuộc vào loại ứng dụng

 Dựa trên thông tin: các trang web lấy văn bản làm trung tâm, đây là các tập hợp
có phân thứ bậc của các văn bản HTML tĩnh (về cơ bản là các văn bản và hình ảnh thô)
mà đưa ra các thông tin chỉ được phép đọc (read-only) dựa trên một tập hợp các nội
dung cụ thể, các mô hình điều hướng và các đặc điểm biểu diễn được thiết kế và lưu
trữ một tiên nghiệm.
 Dựa trên sự biểu diễn: ứng dụng này đề cập đến các yếu tố trực quan bao gồm
cả các trang trong web.
 Dựa trên logic:
o Logic nghiệp vụ: Là những thay đổi trong các nền tảng cơ bản mà không ảnh
hưởng tới các ứng dụng hiện có
o Logic ứng dụng: là logic nghiệp vụ có thể phát triển độc lập với công nghệ cơ
bản.
Phân tích và thiết kế của các dụng web [3]

Hình 1.2: Phân tích và thiết kế của mô hình ứng dụng web

17

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

- Giai đoạn phân tích: đòi hỏi đặc điểm kỹ thuật của ứng dụng web

- Giai đoạn thiết kế: gồm sự biểu diễn phần mềm được thiết kế hoặc phụ thuộc
hoặc độc lập với công nghệ
- Giai đoạn thực hiện: gồm các mô hình khả thi và các mã khả thi được thiết kế ở
đây.
1.2.3 Các khía cạnh(Aspects):
Theo các nguyên tắc hướng đối tượng, cấu trúc và hành vi được mô hình hóa ở
mỗi một trong ba cấp độ, tức là ở nội dung, siêu văn bản và trình bày (content,
hypertext and presentation). Sự liên quan của các mô hình cấu trúc và hành vi phụ
thuộc vào loại ứng dụng Web được thực hiện. Các ứng dụng Web có chứa thông tin
tĩnh đòi hỏi ít mô hình hành vi hơn so với các ứng dụng web tương tác cao, chẳng hạn
như ứng dụng thương mại điện tử cung cấp công cụ tìm kiếm, chức năng giỏ hàng
online, vv Đối với vấn đề lập bản đồ các cấp độ khác nhau, nó được khuyến khích để
sử dụng một mô hình hình thức thống nhất cho các cấu trúc và hành vi, mà có thể cho
phép dựa vào một công cụ CASE đơn. Đương nhiên, mô hình này có hình thức để đối
phó với những đặc điểm cụ thể của mỗi một trong ba cấp độ.
1.2.4 Tùy biến(Customization):
Các phương thức thông tin ngữ cảnh đã được thông qua hay các web không phải là
mới, chúng bắt nguồn từ SW truyền thống. Nhưng câu hỏi đặt ra là tại sao lại là các
siêu liên kết? Tại sao lại thêm một layer mới? Tương ứng với tình trạng của các ứng
dụng web và cải thiện việc tái sử dụng nội dung, có thể nói rằng nội dung được hiển thị
trong ứng dụng web tương đương với cấu trúc thông tin. Trong ứng dụng web, một vài
trang truy cập cùng một nội dung. Nếu bạn mô hình hóa ứng dụng web thì bạn có thể
tái sử dụng nó.

18

c vi n Vũ T à

Tr


g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

Nói tóm lại, mô hình hóa là một kỹ thuật được sử dụng trong phân tích và thiết kế.
Kỹ thuật này sử dụng ký hiệu (cú pháp) (biểu diễn và ngôn ngữ đồ họa), quá trình để
xây dựng các mô hình (các quy tắc và hướng dẫn) và sử dụng các phần mềm chỉnh sửa
đồ họa. Phân tích và thiết kế trong mô hình hóa được định hướng theo đối tượng.
 Phân tích: Tìm và phát hiện các lớp của các đối tượng/các khái niệm trong 1
domain.
 Thiết kế: Xác định các đối tượng phần mềm và cách thức chúng tương tác để
thực hiện các yêu cầu.
1.3 NGÔN NGỮ MÔ HÌNH HÓA THỐNG NHẤT (UML)
Ngôn ngữ mô hình hóa thống nhất (UML) là ngôn ngữ mô hình hóa trực quan
chung được sử dụng để xác định, hình dung, sửa đổi, xây dựng và cung cấp các kỹ
thuật (phát triển phần mềm) của một hệ thống phần mềm [4]. UML được chấp nhận
rộng rãi bởi ngành cũng như các học viện để phát triển hệ thống phần mềm [5].
1.3.1 Lịch sử UML
UML được phát triển để đơn giản hóa số lượng lớn các phương pháp phát triển
hướng đối tượng. Trước UML, có rất nhiều mô hình hóa hướng đối tượng, nhưng nhiều
người sử dụng các phương pháp này gặp trở ngại trong việc tìm một ngôn ngữ mô hình
hóa có thể đáp ứng hoàn toàn nhu cầu của họ [6]. Trong những năm 1990, đã có OOES
(Kỹ Thuật Phần Mềm Hướng Đối Tượng) của Jacobson, Booch, và OMT (Kỹ thuật Mô
hình hóa Đối tượng ) của Rambaugh. Mỗi loại đều có những điểm mạnh và điểm yếu
riêng. Năm 1994, Rambaugh đã liên kết với Booch tại công ty Rational Software. Họ
kết hợp các khái niệm từ các phương pháp OMT và những phương pháp của Booch và
lần đầu tiên đưa ra đề xuất UML vào năm 1995. Jacobson cũng gia nhập Rational và

bắt đầu hợp tác với Booch và Rumbagh. Tác phẩm chung của họ chính là Ngôn Ngữ
Mô Hình Hóa Thống Nhất (UML). Vào năm 1996 họ gia nhập Tập đoàn Object

19

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

Management (OMG) và làm việc cho họ. UML đã được nhất trí thông qua của các
thành viên của OMG và được coi là ngôn ngữ mô hình hóa tiêu chuẩn vào tháng 11
năm 1997. OMG đã yêu cầu đề xuất nâng cấp UML để khắc phục những vấn đề UML
gặp khó khăn. Năm 2003, phiên bản lớn của UML, phiên bản 2.0 đã được đề xuất và
cuối cùng chấp nhận bởi OMG trong năm 2005 [7].
1.3.2 Ƣu điểm của UML
UML có một số lợi thế [8]:
1. UML có một cấu trúc tốt và những quy định rõ ràng.
2. Với UML có thể điều chỉnh phù hợp với hầu như bất kỳ loại hệ thống.
3. Đó là một ngôn ngữ chính thức [9].
4. Súc tích.
5. Toàn diện.
6. Khả năng mở rộng.
7. Là một Ngôn ngữ tiêu chuẩn.

1.4 CÁC KỸ THUẬT WEB

ƢỚNG MÔ HÌNH

1.4.1 Kỹ thuật Web dựa trên (UWE)
1.4.1.1 Giới thiệu về UWE
UWE xác định một quá trình phát triển có hệ thống mà có thể được thực hiện bán
tự động. Các công cụ hỗ trợ được đảm bảo bởi các môi trường phát triển mô hình
UWE mở. Nó bao gồm việc thực hiện tại hai công cụ CASE: ArgoUWE để hỗ trợ cho
việc thiết kế và UWE XML để tạo ra các ứng dụng web [10].

20

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

UWE sử dụng các tiêu chuẩn bao gồm các Phát triển phần mềm hướng mô hình
(MDD). MDD dựa trên những mô hình giống như các phương pháp phát triển phần
mềm khác, nhưng đưa ra một mức trừu tượng cao hơn bởi xác dịnh metamodels và quy
tắc chuyển đổi mô hình. Việc thực hiện MDD nổi tiếng nhất là các Kiến Trúc Hướng
Mô Hình (MDA) của công ty Object (OMG). Quá trình phát triển của UWE được dựa
trên MDA cũng như các tiêu chuẩn OMG khác, ví dụ như ngôn ngữ mô hình thống

nhất (UML), XML Siêu dữ liệu trao đổi (XMI). Meta Object Facility (MOF), Object
Constraint Language (OCL) và các tiêu chuẩn ngôn ngữ chuyển đổi sắp tới QVT [11].
1.4.1.2 Phương pháp tiếp cận UWE
Cách tiếp cận UWE bao gồm một UML profile cho các hệ thống mô hình web,
một quá trình và công cụ hỗ trợ cho các hệ thống phát triển web. Quá trình UWE là
một quá trình phát triển hướng mô hình sau nguyên tắc MDA (Kiến Trúc Hướng Mô
Hình) sử dụng các tiêu chuẩn OMG. Nó bao gồm tập hợp các mô hình và chuyển đổi
mô hình, đặc biệt được hỗ trợ bởi metamodels và ngôn ngữ chuyển đổi mô hình. Mô
hình UWE được đại diện bằng các biểu đồ UML. Để mô hình hóa các tính năng cụ thể
của miền Web, chẳng hạn như các nút điều hướng và các trang Web, UWE cung cấp
một UML profile chuyên biệt miền, được định nghĩa bằng cách sử dụng cơ chế mở
rộng cung cấp bởi UML: khuôn mẫu và các hạn chế OCL [11].
Quá trình mô hình hóa được đề xuất bởi UWE bao gồm bởi bốn bước [12]:
• Phân tích Yêu cầu với các trường hợp sử dụng
• Thiết kế Khái Niệm
• Thiết kế Điều Hướng
• Thiết kế Trình bày

21

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng


Yêu cầu phân tích với các trƣờng hợp Sử dụng - Nó tạo ra mẫu trường hợp sử
dụng mô hình mà không trình bày bởi bất kỳ phần mở rộng nào cho các phần tử mô
hình trong UML thông thường.
Thiết kế Khái niệm – Nó cung cấp mô hình khái niệm của miền ứng dụng bằng
cách sử dụng UML mà không có bất kỳ khuôn mẫu mới nào.
Thiết kế Điều

ƣớng – Nó cung cấp mô hình chuyển hướng không gian và mô

hình cấu trúc chuyển hướng.
Thiết kế Trình bày - Nó cung cấp các mô hình hiển thị tĩnh và mô hình hiển thị
động.

Mô hình Trường
hợp sử dụng

<hiệu>>

<hiệu>>

<hiệu>>
Mô hình khái
niệm

Mô hình điều
hướng


Mô hình trình
bày

Hình 1.3 : Các mô hình xây dựng trong Quy trình Tổng quát của quá trình tiếp
cận Kỹ thuật web dựa trên UML
Những Đặc điểm của Quy trình UWE [13]
1. Đặc điểm chính của quá trình UWE là có hệ thống, bán tự động, dựa theo mô
hình và chuyển đổi dựa trên hỗ trợ của sự phát triển của các hệ thống web.

22

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

2. UWE cung cấp công cụ hỗ trợ cho việc thiết kế các mô hình, kiểm tra sự nhất
quán của mô hình, và thế hệ bán tự động của các hệ thống Web. ArgoUWE
(ArgoUML) và MagicUWE (MagicDraw) là những công cụ hỗ trợ các ký hiệu của
UWE profile và những chuyển đổi để hỗ trợ công việc của người thiết kế.
1.4.2 WebML (Ngôn ngữ mô hình hóa Web)
Để đáp ứng các vấn đề bảo dưỡng trong phát triển ứng dụng web, dự án W313 (tài
trợ bởi Cộng đồng châu Âu theo Chương trình Khung lần thứ tư) đã đưa ra một ngôn

ngữ mô hình hóa Web mới, được gọi là WebML [14]. WebML là một ký hiệu có tính
trực quan cho việc thiết kế các ứng dụng Web dữ liệu chuyên sâu phức tạp. Nó cung
cấp đồ họa, thông số kỹ thuật, thể hiện trong một quá trình thiết kế hoàn chỉnh, có thể
được hỗ trợ bởi các công cụ thiết kế trực quan, như WebRatio.
Phương pháp này có năm mô hình: cấu trúc, nguồn gốc, thành phần, điều hướng và
trình bày. Những mô hình này được phát triển trong một quá trình lặp đi lặp lại.
Các đặc điểm kỹ thuật của một trang web trong WebML bao gồm bốn hệ thống
trực giao [15]:
1.4.2.1. Mô hình cấu trúc:
Thể hiện nội dung dữ liệu của trang web, về những thực thể và mối quan hệ có liên
quan. WebML vẫn chưa đề xuất ngôn ngữ khác cho mô hình hóa dữ liệu, tuy nhiên lại
tương thích với những ký hiệu cổ như mô hình E/R, Mô hình hướng đối tượng ODMG
và các biểu đồ lớp UML.
1.4.2.2. Mô hình Hypertext:
Nó mô tả một hoặc nhiều siêu văn bản mà có thể được công bố trong trang web.
Mỗi siêu văn bản dẫn tới một trang web. Mô tả trang web bao gồm 2 mô hình nhỏ.

23

c vi n Vũ T à

Tr

g


ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng


 Mô hình tổng hợp bao gồm một tập hợp các trang; mỗi trang có một hoặc một
tập hợp các đơn vị nội dung tạo nên trang. Có sáu loại của các đơn vị dữ liệu [16]:
a. Các đơn vị dữ liệu
b. Đơn vị chỉ thị
c. Các đơn vị đa dữ liệu
d. Các đơn vị lọc
e. Đơn vị cuộn (Scroller)
f. Đơn vị trực tiếp
 Mô hình điều hƣớng: Nó thể hiện các trang và các đơn vị nội dung được liên
kết để hình thành các siêu văn bản như thế nào. Các liên kết là phi ngữ cảnh, khi chúng
kết nối các trang ngữ nghĩa độc lập (ví dụ, các trang của một nghệ sĩ đến trang chủ của
trang web), hoặc theo ngữ cảnh, khi nội dung của các đơn vị điểm đến của các liên kết
phụ thuộc vào nội dung của nguồn đơn vị.
1.4.2.3. Mô hình trình bày:
Nó thể hiện cách bố trí và giao diện đồ họa của các trang, một cách độc lập. Nó
cũng trình bày chi tiết kỹ thuật hiển thị. Thông số kỹ thuật hiển thị là trang cụ thể hoặc
chung chung.
1.4.2.4. Mô hình Cá nhân hóa:
Người dùng và nhóm người dùng được mô hình hóa một cách rõ ràng trong lược
đồ cấu trúc trong các hình thức của các thực thể được xác định trước gọi là Người dùng
(User) và Nhóm (Group). Các tính năng của những thực thể này có thể được sử dụng

24

c vi n Vũ T à

Tr

g



ỹ thuật

GVHD: PGS.TS Huỳnh Quyết Thắng

để lưu trữ nội dung các nhóm cụ thể hoặc cá nhân, như lời đề nghị mua sắm, danh sách
yêu thích, và các nguồn để tùy biến đồ họa.
1.4.2.5 Ưu điểm của WebML [16]
- Nó dễ hiểu và dễ thực hiện.
- Nó cung cấp mô hình siêu văn bản trong đó mô tả cách thức ứng dụng web được
cấu trúc và thiết kế tốt hơn so với bất kỳ mô hình nào mà UML cung cấp.
- Nó bao gồm bốn mô hình, còn UML có một số lượng lớn các mô hình.
- Nó được phát triển đặc biệt là cho các ứng dụng mô hình hóa web; còn UML
được áp dụng trong phạm vi ứng dụng rộng hơn.
- Nó có hỗ trợ cho cả hai mô hình hóa thiết kế ứng dụng web và các hình thức
html.
1.4.3 Một số phƣơng pháp kỹ thuật web khác
1.4.3.1 Phương pháp thiết kế cho các dạng ứng dụng siêu truyền thống (OOHDM)
Các Mô hình thiết kế cho các dạng ứng dụng siêu truyền thống (Hypermedia)
hướng đối tượng (OOHDM) [17-20] là một cách tiếp cận nhấn mạnh sự tách biệt thiết
kế điều hướng và thiết kế giao diện trừu tượng. Như tất cả các đề xuất mô hình hóa
hướng đối tượng, nó thúc đẩy phát triển các ứng dụng mới nhờ tái sử dụng các thành
phần hiện có. OOHDM là một quy trình bốn bước. Bước đầu tiên là phân tích miền,
trong đó, xây dựng một mô hình khái niệm ứng dụng. Bước thứ hai bao gồm một thiết
kế điều hướng mô tả cấu trúc chuyển hướng của một ứng dụng hypermedia về những
bối cảnh điều hướng. Những bối cảnh được suy ra từ các lớp định hướng như các nút,
các đường dẫn, và hướng dẫn di chuyển. Các nút đại diện cho cái nhìn logic của các
lớp khái niệm, và các đường dẫn được bắt nguồn từ các mối quan hệ khái niệm. Thiết
kế giao diện ở mức trừu tượng là bước thứ ba và đề xuất việc xây dựng các đối tượng
cảm nhận được, chẳng hạn như một hình ảnh hoặc một bản đồ, xét về mặt các lớp giao


25

c vi n Vũ T à

Tr

g


×