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

(Đề tài NCKH) Nghiên cứu và ứng dụng mạng phần mềm Enterprise Architect trong phân tích thiết kế các hệ thống thông tin

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 (1.32 MB, 72 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC THƯƠNG MẠI

BÁO CÁO TỔNG KẾT
ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG

Đề tài: Nghiên cứu và ứng dụng mạng phần mềm Enterprise
Architect trong phân tích thiết kế các hệ thống thơng tin
Mã số: CS16-04
Chủ nhiệm đề tài: ThS. Đinh Thị Hà

Hà Nội, tháng 4/2017


Lời cảm ơn ............................................................................................................................ 4
DANH MỤC TỪ VIẾT TẮT .............................................................................................. 5
DANH MỤC HÌNH VẼ, BẢNG BIỂU .............................................................................. 6
Chương 1. Tổng quan nghiên cứu đề tài ........................................................................... 8
1.1

Tính cấp thiết nghiên cứu của đề tài ................................................................... 8

1.2

Tổng quan tình hình nghiên cứu về đề tài .......................................................... 8

1.3

Các mục tiêu nghiên cứu của đề tài..................................................................... 9

1.4



Đối tượng và phạm vi nghiên cứu ....................................................................... 9

1.5

Phương pháp ......................................................................................................... 9

1.6

Kết cấu của báo cáo .............................................................................................. 9

Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng ....... 11
2.1 Tổng quan về HTTT ............................................................................................... 11
2.1.1 Khái niệm .............................................................................................................. 11
2.1.2 Các thành phần của HTTT .................................................................................. 12
2.1.3 Quy trình phân tích và thiết kế HTTT ............................................................... 14
2.1.4 Các phương pháp PTTK HTTT.......................................................................... 17
2.2 Phương pháp PTTK hướng đối tượng................................................................... 19
2.2.1 Các khái niệm cơ bản về mơ hình ....................................................................... 19
2.2.2 Tiến trình phát triển phần mềm.......................................................................... 20
2.2.3 Công cụ trợ giúp ................................................................................................... 22
Chương 3. Nghiên cứu Enterprise Architect trong phân tích và thiết kế các HTTT . 24
3.1

Sơ lược về EA ...................................................................................................... 24

3.1.1

Lịch sử phát triển và đặc điểm ....................................................................... 24


3.1.2

Tính năng ......................................................................................................... 25

3.2

Cài đặt cơng cụ .................................................................................................... 28

3.2.1

u cầu cấu hình và cài đặt ............................................................................ 28

3.2.2

Cài đặt và thiết lập môi trường ...................................................................... 29

3.3

Giao diện người dùng ......................................................................................... 29

3.4

Mơ hình hóa HT với EA ..................................................................................... 32

3.4.1

Làm việc với dự án .......................................................................................... 32

3.4.2


Làm việc với gói (Package) ............................................................................. 36

3.4.3

Làm việc với biểu đồ (Diagram)..................................................................... 43

3.4.4

Làm việc với thành phần (Element) .............................................................. 54

3.4.5

Làm việc với liên kết (Connector) .................................................................. 64

3.4.6

Làm việc với tài liệu, dữ liệu, báo cáo và nâng cấp mơ hình ....................... 69

Chương 4. Kết luận ........................................................................................................... 70
4.1

Các kết luận ......................................................................................................... 70


4.1.1 Những vấn đề mà đề tài đã làm được ............................................................. 70
4.1.2 Những hạn chế của đề tài ................................................................................ 70
Tài liệu tham khảo ............................................................................................................. 71
Phụ lục ................................................................................................................................ 71



Lời cảm ơn

Nghiên cứu khoa học là một trong những nhiệm vụ của người giảng viên. Mỗi kết quả
nghiên cứu đều mang đến một giá trị nhất định trong chuyên môn cũng như kinh nghiệm
trong làm việc và giảng dạy. Với mục đích tìm hiểu một cơng cụ hỗ trợ giảng dạy cũng
như tạo một nguồn tài liệu tiếng Việt cho sinh viên chuyên ngành Hệ thống thông tin thị
trường và thương mại, tôi đã lựa chọn đề tài “Nghiên cứu và ứng dụng phần mềm
Enterprise Architect trong phân tích thiết kế các hệ thống thơng tin”. Để hồn thành được
đề tài này, ngồi những kiến thức chun mơn, cịn có sự hỗ trợ, động viên của các đồng
nghiệp và bạn bè. Nhân đây tôi cũng xin gửi lời cảm ơn tới gia đình, bạn bè thân và các
đồng nghiệp trong bộ môn đã luôn động viên và tạo điều kiện cho tơi trong suốt q trình
thực hiện đề tài.

Hà nội, ngày 20 tháng 3 năm 2017


DANH MỤC TỪ VIẾT TẮT
Từ viết tắt
HTTT
EA
PTTK
DN
NSD
UML
UC

Giải nghĩa
Hệ thống thông tin
Enterprise Architect
Phân tích thiết kế

Doanh nghiệp
Người sử dụng
Unified Modeling Language
Use Case


DANH MỤC HÌNH VẼ, BẢNG BIỂU
Chỉ số

Tên hình

2.1

Sơ đồ tổng quát các thành phần của HTTT

3.1

Giao diện trang Start Page

3.2

Hộp thoại Select model(s)

3.3

Hộp thoại Open Project

3.4

Giao diện của cửa sổ dự án


3.5

Hộp thoại Create New View

3.6

Hộp thoại New Model Package

3.7

Hộp thoại New Diagram

3.8

Hộp thoại thuộc tính của gói

3.9

Hộp thoại tùy chọn nội dung hiển thị của gói

3.10

Hộp thoại New Diagram

3.11

Hộp thoại thuộc tính của biểu đồ

3.12


Hộp thoại Change Diagram Type

3.13

Hộp thoại Save

3.14

Thực đơn tùy chọn sắp xếp thành phần

3.15

Hộp thoại Feature Visibility

3.16

Hộp thoại Show Features in Diagram

3.17

Hộp thoại Suppress Features in Diagram

3.18

Hộp văn bản chú thích

3.19

Cửa sổ Toolbox


3.20

Hộp thoại New Element

3.21

Hộp thoại Set Parents and Interfaces

3.22

Hộp thoại Option

3.23

Hộp thoại Advanced Settings

3.24

Sự kiện thu gọn của gói


3.25

Sự kiện đầy đủ của gói

3.26

Hộp thoại Default Appearence


3.27

Biểu tượng Quick Linker với UC

3.28

Thực đơn con các quan hệ của Quick Linker

3.29

Hộp thoại Link to Element Feature

3.30

Biểu đồ quan hệ tính năng – tính năng giữa hai thành phần

3.31

Hộp thoại Remove Connector

3.32

Hộp thoại Link Relation


Chương 1. Tổng quan nghiên cứu đề tài
1.1

Tính cấp thiết nghiên cứu của đề tài
Phân tích thiết kế HTTT là học phần chuyên ngành và bắt buộc đối với ngành


HTTT Kinh tế. Đây cũng chính là kiến thức khơng thể thiếu để phát triển cũng như
quản trị các HTTT. Và để áp dụng vào các bài tốn thực tế, ngồi kiến thức lý
thuyết đòi hỏi người dùng phải sử dụng thành thạo các cơng cụ phân tích thiết kế để
có thể mơ hình hóa hệ thống. Hiện nay có nhiều cơng cụ hỗ trợ phân tích và thiết kế
hệ thống như Rational Rose, Enterprise Architect, Power Design,… Trong đó
Enterprise là phần mềm có nhiều ưu điểm nổi trội như: giao diện đồ họa trực quan
dễ dàng sử dụng, dung lượng nhẹ và địi hỏi cấu hình cài đặt khơng cao, thiết kế
theo mơ hình chuẩn UML 2.4.1, hỗ trợ tồn bộ các biểu đồ của UML và có chức
năng generate từ mã code mà ít cơng cụ có được. Tuy nhiên, thực tế cho thấy hiện
nay vẫn chưa có một giáo trình hay tài liệu tham khảo tiếng Việt nào trình bày cụ
thể về EA, nên hầu hết người dùng sử dụng các cơng cụ khác hoặc tự mị mẫm với
các tài liệu bằng tiếng anh. Vì vậy việc nghiên cứu một cách đầy đủ về EA và ứng
dụng nó vào PTTK HTTT là cần thiết, và sản phẩm của đề tài có thể là một tài liệu
hữu ích cho sinh viên cũng như giáo viên và những người dùng phát triển HTTT.
1.2

Tổng quan tình hình nghiên cứu về đề tài
Ngoài nước Enteprise Architect (EA) là một phần mềm hỗ trợ phân tích và

thiết kế hệ thống của hãng SparxSystem. Phiên bản EA đầu tiên được ra mắt vào
năm 2000, và phiên bản mới nhất 12.1 ra được giới thiệu vào 16/3/2016 với sự phát
triển hồn thiện khơng ngừng. Ngồi các tài liệu hướng dẫn, đào tạo của công ty
SPARX Systems, có nhiều cơng trình nghiên cứu và ứng dụng EA trên thế giới. Cụ
thể như:
“ Use Case Driven Object Modeling with UMLTheory and Practice” (2007) của các tác giả
Doug Rosenberg, và Matt Stephens, NXB Apress- ISBN 13: 978-1-59059-774-3
“Fifty enterprise Architect tricks” (2012) của tác giả Peter Doomen, NXB Leanpub
ISBN 9781626278991
Trong nước: EA là một công cụ hỗ trợ phân tích và thiết kế hệ thống, vì vậy

người dùng có tư tưởng khi cần dùng thì mới tìm hiểu để sử dụng và thơng thường
nó được giáo viên giới thiệu cho sinh viên tự tìm hiểu chứ khơng được đào tạo bài


bản như một học phần kỹ năng, vì vậy khơng có nhiều cơng trình hồn chỉnh nghiên
cứu về cơng cụ này. Dưới đây là một số đề tài:
“Enterprise Architect: Giới thiệu và ứng dụng trong bài toán quản lý đề tài khóa
luận tốt nghiệp của sinh viên” (2009) do nhóm sinh viên Hoàng Thế Tùng, Bùi Văn
Quý Nguyên Trung Kiên – Đại học Công nghệ, ĐHQG Hà nội thực hiện.
“Hướng dẫn sử dụng phần mềm Enterprise Architect” do nhóm sinh viên
Nguyễn Mạnh Dũng, Nguyễn Hùng Sơn, Trần Văn Tài – KHMTK3-Đại học Công
nghiệp Hà nội thực hiện
1.3

Các mục tiêu nghiên cứu của đề tài
Mục tiêu: Đề tài sẽ thực hiện tìm hiểu và nghiên cứu phần mềm Enterprise

Architect nhằm ứng dụng vào cơng việc phân tích và thiết kế các hệ thống thơng tin
bằng phương pháp hướng đơí tượng
Sản phẩm ứng dụng: Báo cáo đề tài và bản phân tích thiết kế mẫu sẽ là tài liệu
tham khảo hữu ích cho giáo viên cũng như sinh viên trong quá trình giảng dạy và
học tập các học phần PTTK HT và HTTT quản lý.
1.4

Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu
 Phần mềm Enterprise Architect
 Lý thuyết phân tích thiết kế HTTT hướng đối tượng
Phạm vi nghiên cứu
 Phần mềm EA phiên bản 7. 5.847 và các HTTT đặc biệt là HTTT quản lý

bán hàng, và HTTT quản lý thư viện.
 Các loại biểu đồ trong phương pháp PTTK hướng đối tượng

1.5

Phương pháp
- Loại dữ liệu: định tính
- Phương pháp thu thập dữ liệu thứ cấp: thu thập
- Phương pháp xử lý dữ liệu: phân tích, so sánh đối chiếu

1.6

Kết cấu của báo cáo
Ngoài lời mở đầu, mục lục, danh mục bảng biểu, hình vẽ, phụ lục, tài liệu tham

khảo, báo cáo được chia thành 4 chương như sau:
Chương 1. Tổng quan về đề tài nghiên cứu


Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng
Chương 3: Nghiên cứu Enterprise Architect trong phân tích và thiết kế các
HTTT
Chương 4: Kết luận


Chương 2. Tổng quan về HTTT và phương pháp phân PTTK hướng đối tượng
2.1 Tổng quan về HTTT
2.1.1 Khái niệm
Khái niệm hệ thống: Hệ thống là một tập hợp có tổ chức gồm nhiều phần tử, có
các mối quan hệ ràng buộc lẫn nhau và cùng hoạt động hướng tới một mục đích

chung.
Các phần tử của hệ thống là các thành phần hợp thành hệ thống và được hiểu theo
nghĩa rộng:
- Các phần tử có thể rất đa dạng, chẳng hạn trong hệ thống mặt trời thì các
phần tử là mặt trời, quả đất,…; có khi các phần tử lại là những đối tượng trừu tượng
như là một phương pháp, một lập luận, một quy tắc, … như trong các hệ thống tư
tưởng. Như vậy các phần tử có thể là rất khác biệt về bản chất, không những giữa
các hệ thống khác nhau mà có thể ngay trong cùng một hệ thống.
- Các phần tử không nhất thiết là sơ đẳng mà có thể là những thực thể phức tạp
và có thể được xem như những hệ thống. Bởi vậy, hệ thống thường có tính phân
cấp: hệ thống được hợp thành từ nhiều hệ thống con, và mỗi hệ thống con lại được
hợp thành từ những hệ thống nhỏ hơn.
Khái niệm HTTT: HTTT là tập hợp người, thủ tục và các nguồn lực để thu thập,
lưu trữ, xử lý và phân phối thông tin trong một tổ chức, doanh nghiệp (DN).
HTTT có thể là một hệ thống khơng chính thức nếu nó dựa vào truyền miệng,
hoặc là một hệ thống chính thức nhưng thủ cơng nếu dựa vào các cơng cụ như giấy,
bút. Trong khi đó, hệ thống thơng tin hiện đại là hệ thống tự động hóa dựa vào máy
tính và các cơng nghệ thơng tin khác. Với hệ thống này, các thành phần cấu tạo của
nó bao gồm: các phần cứng, phần mềm, các hệ mạng, con người và dữ liệu.
Ngày nay HTTT đã được ứng dụng trong mọi lĩnh vực khác nhau của đời sống
xã hội. Tùy theo quan điểm mà có thể phân loại các HTTT theo các tiêu chí khác
nhau. Ví dụ như xét về mặt mục đích ứng dụng hay chức năng nghiệp vụ, HTTT có
thể được phân chia thành: HTTT tài chính kế toán, HTTT Marketing, HTTT quản
lý kinh doanh và sản xuất, HTTT nguồn nhân lực, HTTT văn phòng. Nếu xét theo
quy mơ tích hợp từ hệ thống con, thì HTTT có thể được chia thành: hệ thống quản
lý nguồn lực, hệ thống quản lý chuỗi cung ứng, hệ thống quản lý quan hệ khách


hàng, hệ thống quản lý tri thức. Hay nếu xét theo các cấp quản lý trong một tổ chức
DN, HTTT có thể phân loại thành: hệ thống xử lý giao dịch, hệ thống thông tin

quản lý, hệ thống hỗ trợ ra quyết định, hệ thống chuyên gia.
Khái niệm hệ thống thông tin quản lý: là HTTT nhằm cung cấp các thông tin
cần thiết cho sự quản lý, điều hành của một tổ chức, DN. Hạt nhân của HTTT quản
lý là một cơ sở dữ liệu chứa các thông tin phàn ánh tình trạng hiện thời và hoạt
động kinh doanh hiện thời của DN. Từ thông tin thu thập được từ mơi trường của
DN kết hợp với thơng tin có trong cơ sở dữ liệu, HTTT quản lý sẽ tạo ra các thông
tin mà nhà quản lý cần.
2.1.2 Các thành phần của HTTT
Mỗi một HTTT được cấu thành từ các yếu tố: phần cứng, phần mềm, cơ sở dữ
liệu, mạng, con người.
Phần cứng: Phần cứng gồm các thiết bị được sử dụng trong quy trình xử lý
thơng tin. Phần cứng là các thiết bị hữu hình có thể nhìn thấy và cầm nắm được.
Dựa trên chức năng và cách thức hoạt động, người ta phân biệt các thiết bị phần
cứng ra thành thiết bị nhập/ thiết bị xuất, thiết bị xử lý, thiết bị lưu trữ.
Phần mềm: Là tập các chỉ lệnh theo một trật tự xác định nhằm điểu khiển thiết bị
phần cứng tự động thực hiện một công việc nào đó. Phần mềm được biểu diễn thơng
qua ngơn ngữ lập trình. Phần mềm sử dụng bởi hệ thống thơng tin được chia ra
thành: phần mềm hệ thống (hệ điều hành), phần mềm ứng dụng ( hệ soạn thảo văn
bản, bảng tính, hệ quản trị cơ sở dữ liệu…), và phần mềm chuyên dụng trong các
lĩnh vực ngân hàng, kế toán,…
Cơ sở dữ liệu: Cơ sở dữ liệu là một tập hợp dữ liệu có tổ chức, có liên quan
được lưu trữ trên các thiết bị lưu trữ thứ cấp để có thẻ thỏa mãn u cầu khai thác
thơng tin đồng thời của nhiều người sử dụng hay nhiều chương trình ứng dụng với
mục đích khác nhau. Chức năng của cơ sở dữ liệu trong một hệ thống thông tin:
- Lưu trữ thông tin
- Đáp lại các truy vấn tức thời
- Thống kê, phân tích, dự báo
- Thiết lập báo cáo…



Mạng: Mạng máy tính là một tập hợp các máy tính và thiết bị được nối với nhau
thơng quan các đường truyền vật lý theo một kiến trúc nào đó nhằm chia sẽ các dữ liệu
và tài nguyên mạng.
Con người: Là chủ thể điều hành và sử dụng hệ thống thông tin. Trong một
HTTT phần cứng và phần mềm được coi là đối tượng trung tâm cịn con người
đóng vai trò quyết định. Con người là chủ thể, trung tâm thu thập, xử lý số liệu,
thơng tin để máy tính xử lý. Công tác quản trị nhân sự HTTT trong doanh nghiệp là
cơng việc lâu dài và khó khăn nhất. Nguồn lực con người ở đây được chia thành hai
nhóm chính:
+ Người xây dựng và bảo trì hệ thống là nhóm người làm nhiệm vụ phân tích, lập
trình, khảo sát, bảo trì.
+ Nhóm sử dụng hệ thống là các cấp quản lý, người thiết lập các mục tiêu, xác định
nhiệm vụ, tạo quyết định.

Hình 2.1.Sơ đồ tổng quát các thành phần của HTTT
Các thành phần của hệ thống thông tin có các mối liên hệ với nhau. Mối liên kết
giữa các thiết bị trong một hệ thống thông tin bằng các dây dẫn là những mối liên
hệ của hệ thống có thể nhìn thấy được. Ngược lại, phần lớn các mối liên kết giữa
các yếu tố cấu thành nên hệ thống thơng tin là khơng thể nhìn thấy được. Chúng
được hình thành và diễn ra khi hệ thống hoạt động. Chẳng hạn, như việc lấy dữ liệu


từ các cơ sở dữ liệu, và việc truyền dữ liệu đi xa hàng trăm cây số, việc lưu trữ dữ
liệu trên các thiết bị.
2.1.3 Quy trình phân tích và thiết kế HTTT
Quy trình phân tích thiết kế hệ thống thông tin gồm các giai đoạn sau: Lập kế
hoạch, phân tích hiện trạng, phân tích khả thi, đặc tả, thiết kế, lập trình, kiểm thử,
khai thác, bảo trì. Các giai đoạn cụ thể được trình bày như sau
 Lập kế hoạch
Thực hiện một dự án tin học hóa có thể rất tốn kém,địi hỏi nhiều cơng sức và

thời gian trước khi mang lại lợi nhuận. Các nhân tố thường ảnh hưởng đến việc lập
kế họach là: Thời gian, mức đầu tư (investment),những yếu tố không chắc chắn của
dự án,nguồn nhân lực (số lượng,trình độ, khả năng… của người thiết kế và những
người sử dụng cuối), những tình huống bất ngờ, những đánh giá sai lệch thực tế…
Người ta thường cấu trúc hóa việc lập kế hoạch bằng cách:
- Tách riêng các phân bổ nhân lực, thời gian và kinh phí.
- Lập dự án tổng thể, kế hoạch cho một giai đoạn và các kế hoạch chi tiết.
- Song song với việc lập kế hoạch là việc kiểm tra, báo cáo định kỳ.
Kết quả của giai đoạn lập kế hoạch là xác định rõ ràng các phân hệ,chức năng
của chúng trong HTTT tương lai, xác định các khả năng ứng dụng trên mạng hoặc
truyền thơng,bố trí cơng việc theo nhóm chun gia, phân chia kinh phí…
 Phân tích hiện trạng
Phân tích(hay khảo sát) hiện trạng là giai đoạn phân tích các hoạt động của
HTTT vật lý hiện hữu. Mục tiêu cần đạt được là làm sao có được các thơng tin (liên
quan đến những yêu cầu đặt ra trong bước lập kế hoạch) với độ tin cậy cao và chuẩn
xác nhất, mới nhất.
Có nhiều phương pháp phân tích hiện trạng:
- Phỏng vấn,trực tiếp hoặc gián tiếp,các đối tượng liên quan (giám đốc,nhân
viên, vị trí làm việc…)
- Lập phiếu điều tra,thăm dị.
- Quan sát, thu nhập mẫu biểu.
Mỗi phương pháp đều có ưu điểm, nhược điểm riêng và được áp dụng sao cho
phù hợp với tình hình thực tế. Sau khi có được các kết quả phân tích hiện trạng,


phân tích viên phải biết cách tổng hợp các dữ liệu,các xử lý thu nhập được và hợp
thức hóa.
 Phân tích khả thi
Giai đoạn này có vai trị quyết định vì nó sẽ dẫn đến các lựa chọn quyết định
HTTT tương lai cùng các bảo đảm tài chính, bao gồm 4 bước như sau:

Bước 1: Phân tích,phê phán HTTT hiện hữu nhằm làm rõ các điểm yếu hoặc
mạnh. Sắp xếp các vấn đề cần giải quyết theo thứ tự mức độ quan trọng của chúng.
Bước 2 : Xác định các mục tiêu mới của các dự án,khả năng sinh lãi,thời gian
trả lãi… nếu như việc này chưa được thực hiện ở giai đoạn lập kế hoạch.
Bước 3 : Xác định một cách tổng quát các giải pháp về chi phí triển khai phân
hệ (dự án),chi phí hoạt động trong tương lai,kết hợp phân tích ưu điểm và khuyết
điểm của từng giải pháp.
Bước 4: Lựa chọn những người chịu trách nhiệm phù hợp với giải pháp nào đó
đã xác định.Nếu khơng tìm được những người như vậy hoặc chi phí ước tính cao so
với mục tiêu đề ra thì phải quay lên bước 2. Bước 4 trong trường hợp này thường
lặp đi lặp lại nhiều lần.
 Đặc tả
Giai đoạn này thực hiện việc mô tả chi tiết kỹ thuật các thành phần bên trong hệ
thống,bao gồm:
- Kiến trúc dữ liệu (data architecture) và xử lý kiểu dữ liệu tương ứng, các chỉ
dẫn về tên (identifiers) dữ liệu, các sơ đồ, biểu đồ hay đồ thị.
- Giao diện giữa Hệ thống thông tin (HTTT) và Người sử dụng (NSD) : xác
định HTTT cung cấp những gì cho NSD và ngược lại, NSD có thể khai thác được
những gì từ HTTT?
- Các cơng việc và các cài đặt cần thực hiện.
- Diễn biến tiến trình từ mức ý niệm đến lúc thể hiện: triển khai kế hoạch,
phân cơng nhóm làm việc, v.v..
Kết quả của đặc tả là tập hợp các văn bản hồ sơ hay tư liệu về q trình phân
tích và thiết kế HTTT
 Thiết kế
Mục tiêu của giai đoạn này là xác định:


- Kiến trúc chi tiết của HTTT,liên quan đến các giao diện với người sử dụng
và các quy tắc quản lý, cấu trúc dữ liệu.

- Thiết kế các chương trình, chuẩn bị lập trình.
- Quy cách thử nghiệm chương trình, sử dụng các thư viện.
- Quy cách khai thác, ứng dụng bảo trì, hướng dẫn sử dụng…
- Các phương tiện và thiết bị liên quan.
 Lập trình
Giai đoạn này là thể hiện vật lý của HTTT bằng việc chọn công cụ phần mềm
để xây dựng các tệp dữ liệu (database files), viết các chương trình, chạy thử, kiểm
tra, ráp nối, lập hồ sơ hướng dẫn, chú thích chương trình.
 Thử nghiệm
Giai đoạn này bao gồm việc định nghĩa các thử nghiệm các chương trình, thử
nghiệm hệ thống, hồn thiện q trình đào tạo người sẽ sử dụng hệ thống, sửa chữa
các chương trình nguồn, hồn thiện các văn bản báo cáo và hướng dẫn sử dụng.
Việc thử nghiệm cho phép kết quả nhận được là phù hợp với các đặc tả ban đầu.
Các phương pháp thử nghiệm được nghiên cứu chi tiết trong lĩnh vực công nghệ
phần mềm (Software Engineering).
Các yếu tố liên quan đến thử nghiệm bao gồm:
-

Kế hoạch thử nghiệm.

-

Danh mục (thư viện) thử nghiệm.

-

Dữ liệu thử nghiệm.

-


Các công cụ thử nghiệm.

 Khai thác
Đây là giai đoạn quyết định đến kết quả tương lai của HTTT.Tùy theo kết quả
khai thác, người sử dụng sẽ quyết định có sử dụng HTTT vừa xây dựng để thay thế
HTTT thủ công hay khơng?
 Bảo trì
Giai đoạn này gồm các cơng việc: Bảo trì,cải thiện và thích nghi hóa HTTT với
những thay đổi nội tại cũng như với môi trường xung quanh. Nếu có kết quả phân
tích ý niệm chính xác, xây dựng mơ hình phù hợp và thể hiện vật lý hồn hảo thì


việc bảo trì HTTT sẽ dễ dàng. Ngược lại sẽ dẫn đến chi phí bảo trì tốn kém, khó
làm thỏa mãn yêu cầu của người sử dụng.
2.1.4 Các phương pháp PTTK HTTT
Có 3 phương pháp phân tích thiết kế HTTT chủ yếu là: phương pháp thiết kế hệ
thống cổ điển (thiết kế phi cấu trúc), phương pháp phân tích thiết kế hệ thống bán
cấu trúc, phương pháp phân tích thiết kế hệ thống có cấu trúc
Phương pháp thiết kế hệ thống cổ điển ( thiết kế phi cấu trúc)
 Đặc điểm:
- Gồm các pha: Khảo sát, thiết kế, viết lệnh, kiểm thử đơn lẻ, kiểm thử trong
hệ con, kiểm thử trong toàn hệ thống.
- Việc hoàn thiện hệ thống được thực hiện theo hướng “bottom-up” (từ dưới
lên) và theo nguyên tắc tiến hành tuần tự từ pha này tới pha khác.
 Nhược điểm
- Gỡ rối, sửa chữa rất khó khăn và phức tạp. Ví dụ trong giai đoạn kiểm thử
(test) nếu có lỗi nào đó xuất hiện ở giai đoạn cuối pha kiểm thử. Lúc đó, tuỳ theo
mức độ nghiêm trọng của lỗi, có thể buộc phải sửa đổi hàng loạt các mođun. Khi
một lỗi được phát hiện, khó chẩn đốn mođun nào (trong số hàng trăm, hàng ngàn
mơ đun) chứa lỗi.

- Vì thực hiện theo nguyên tắc tuần tự các pha nên sau khi đã kết thúc một
pha, người ta có thể khơng cần phải bận tâm đến nó nữa. Nếu ở pha trước cịn lỗi thì
các pha sau sẽ phải tiếp tục chịu ảnh hưởng của lỗi đó. Mặt khác hầu hết các dự án
thường phải tuân thủ theo một kế hoạch chung đã ấn định từ trước vì vậy kết quả sẽ
khó mà được như ý với một thời gian quy định.
Phương pháp phân tích thiết kế hệ thống bán cấu trúc
 Đặc điểm:
Một loạt các bước “bottom-up” như viết lệnh và kiểm thử được thay thế bằng
giai đoạn hoàn thiện “top-down”. Nghĩa là các modun mức cao được viết lệnh và
kiểm thử trước rồi đến các modun chi tiết ở mức thấp hơn.
Pha thiết kế cổ điển được thay bằng thiết kế có cấu trúc.
 Nhược điểm:


Người thiết kế liên lạc rất ít với phân tích viên hệ thống và cả hai khơng có liên
hệ nào với người sử dụng. Do vậy, q trình phân tích và thiết kế gần như là tách ra
thành hai pha độc lập
Phương pháp phân tích thiết kế hệ thống có cấu trúc
 Đặc điểm:
Các hoạt động có thể thực hiện song song, mỗi hoạt động có thể cung cấp những
sửa đổi phù hợp cho một hoặc nhiều hoạt động trước đó.
Các phương pháp hướng chức năng
Phương pháp SADT (Structured Analysis and Design Technie) của Mỹ dựa theo
phương pháp phân rã một hệ thống lớn thành các hệ thống con đơn giản hơn. Kỹ
thuật chủ yếu của SADT là dựa trên sơ đồ luồng dữ liệu, từ điển dữ liệu, ngôn ngữ
mơ tả có cấu trúc, ma trận chức năng. Nhưng SADT chưa quan tâm một cách thích
đáng đối với mơ hình chức năng của hệ thống.
Phương pháp MERISE (Method pour Rassembler les Idees Sans Effort) của
Pháp dựa trên các mức bất biến (mức trừu tượng hóa) của hệ thống thơng tin như
mức quan niệm, mức tổ chức, mức vật lý và có sự kết hợp với mơ hình.

Phương pháp CASE (Computer-Aided System Engineering) – phương pháp
phân tích và thiết kế tự động nhờ sự trợ giúp của máy tính.
Phương pháp phân tích thiết kế hướng đối tượng
Phương pháp HOOD (Hierarchical Object Oriented Design) là phương pháp
được lựa chọn để thiết kế các hệ thống thời gian thực. Phương pháp này u cầu
phần mềm phải được mã hóa bằng ngơn ngữ lập trình ADA. Do vậy phương pháp
này chỉ hỗ trợ cho việc thiết kế các đối tượng mà không hỗ trợ cho các tính năng kế
thừa và phân lớp.
Phương pháp RDD (Responsibility Driven Design) dựa trên việc mơ hình hóa
hệ thống thành các lớp. Các công việc mà hệ thống phải thực hiện được phân tích và
chia ra cho các lớp của hệ thống.Các đối tượng trong các lớp của hệ thống trao đổi
các thông báo với nhau nhằm thực hiện công việc đặt ra. Phương pháp RDD hỗ trợ
cho các khái niệm về lớp, đối tượng và kế thừa trong cách tiếp cận hướng đối
tượng.


Phương pháp OMT (Object Modelling Technique) là một phương pháp được
xem là mới nhất trong cách tiếp cận hướng đối tượng. Phương pháp này đã khắc phục
được một số nhược điểm của các phương pháp tiếp cận hướng đối tượng trước mắc
phải.
2.2 Phương pháp PTTK hướng đối tượng
Hiện nay tồn tại rất nhiều phương pháp mơ hình hóa (phân tích và thiết kế) các
hệ thống thông tin. Và mỗi một phương pháp mơ hình hóa là sự kết hợp của ba
thành phần gồm: một ký pháp, một tiến trình (hoặc chu trình) và một (hay một số)
cơng cụ hỗ trợ(là phần mềm hỗ trợ cho q trình mơ hình hóa)). Trong đó, ký pháp
bao gồm một số khái niệm và mơ hình dùng để biểu diễn các khái niệm cùng với
các kỹ thuật triển khai hay biến đổi các mô hình đó; Tiến trình bao gồm các bước đi
lần lượt, các hoạt động cần làm, các sản phẩm qua từng giai đoạn, các điều hành
tiến trình đó và các đánh giá chất lượng của các kết quả thu được; Công cụ hỗ trợ là
các phần mềm hỗ trợ cho quá trình mơ hình hóa.

2.2.1 Các khái niệm cơ bản về mơ hình
UML là ngơn ngữ mơ hình hóa. Nó được sử dụng để hiển thị, đặc tả, xây dựng
và làm tài liệu các vật phẩm của phân tích hình thức và thiết kế trong quá trình xây
dựng hệ thống phần mềm theo phương pháp hướng đối tượng. UML là ngôn ngữ
chuẩn để viết kế hoạch chi tiết phần mềm, được dùng để mơ hình hóa các hệ thống,
cho phép biểu diễn nhiều hướng nhìn khác nhau của hệ thống trong q trình phát
triển hệ thống. Nó phù hợp cho việc mơ hình hóa các hệ thống như hệ thống thơng
tin doanh nghiệp, các ứng dụng phân tán trên nền Web, hệ thống nhúng thời gian
thực,… Như mọi ngôn ngữ mô hình khác, UML có các ký pháp (các biểu tượng sử
dụng trong mơ hình hay các phần tử cơ bản để xây dựng mơ hình) và tập các luật sử
dụng nó (bao gồm các quy tắc liên kết các phần tử mơ hình và một số cơ chế chung
sử dụng cho ngơn ngữ).
Các phần tử cơ bản của mơ hình trong UML.
Các khối để hình thành mơ hình UML bao gồm ba loại: phần tử, quan hệ và
biểu đồ. Trong đó:
- Phần tử là khái niệm trừu tượng trong mơ hình. Chúng bao gồm bốn loại:
phần tử cấu trúc – là các danh từ trong mơ hình. Chúng là bộ phận tĩnh của mơ hình


để biểu diễn các thành phần khái niệm hay vật lý. Ví dụ như lớp, giao diện, trường
hợp sử dụng, nút (node); phần tử hành vi - là các động từ trong mơ hình. Chúng là
bộ phận động của mơ hinh để biểu diễn hành vi theo thời gian và khơng gian, ví dụ
như tương tác, trạng thái; phần tử nhóm – là bộ phận tổ chức của mơ hình UML.
CHỉ có một phần tử thuộc loại này đó là gói (package); phần tử chú thích – là bộ
phận chú giải của mơ hình UML.
- Quan hệ có chức năng gắn kết các phần tử lại với nhau. Có bốn loại quan hệ
trong UML, bao gồm: quan hệ phụ thuộc (dependency)- là quan hệ ngữ nghĩa giữa
hai phần tử trong đó thay đổi phần tử độc lập sẽ tác động đến ngữ nghĩa của phần tử
phụ thuộc; quan hệ kết hợp (association) – là quan hệ cấu trúc để mô tả tập liên kết,
khi đối tượng của lớp này gửi/ nhận thông điệp đến/ từ đối tượng của lớp kia thì

chúng được gọ là có quan hệ kết hợp; quan hệ khái quát hóa (generalization) – là
quan hệ đặc biệt hóa/ khái quát hóa mà trong đó đối tượng cụ thể sẽ kế thừa các
thuộc tính và phương thức của đối tượng tổng quát ; quan hệ hiện thực hóa –là quan
hệ ngữ nghĩa giữa giao diện và lớp/thành phần hiện thực, giữa UC và hợp tác hiện
thực UC.
- Biểu đồ là biểu diễn đồ họa tập các phần tử mơ hình. Có thể hiểu biểu đồ là
ánh xạ của hệ thống, chúng được dùng để biểu diễn hệ thống đang xây dựng dưới
các góc độ quan sát khác nhau. Các loại biểu đồ cơ bản trong UML gồm có: Biểu
đồ Use case – chỉ ra tương tác giữa các UC và tác nhân, chúng dùng để biểu diễn
các chức năng của hệ thống; biểu đồ lớp – chỉ ra tương tác giữa các lớp trong hệ
thống, chúng được xem như kế hoạch chi tiết của các đối tượng; biểu đồ tuần tự -chỉ
ra luồng chức năng xuyên qua các UC, chúng được dùng để mô tả tương tác giữa
các đối tượng và tập trung vào mô tả trật tự các thông điệp theo thời gian; biểu đồ
cộng tác – chỉ ra các thông tin như biểu đồ tuần tự nhưng nó tập trung vào cấu trúc
tổ chức của các đối tượng gửi và nhận thông điệp; biểu đồ trạng thái – mơ tả vịng
đời của đối tượng từ khi nó được sinh ra đến khi bị phá hủy, chúng cung cấp cách
thức mơ hình hóa các trạng thái khác nhau của đối tượng; biểu đồ thành phần – mô
tả các thành phần phần mềm trong hệ thống và quan hệ giữa chúng; biểu đồ triển
khai –chỉ ra bố trí vật lý của mạng và các thành phần của hệ thống sẽ đặt ở đâu.
2.2.2 Tiến trình phát triển phần mềm


Chu trình phát triển phần mềm được xác định thơng qua tập các hoạt động cần
thực hiện để chuyển đổi các yêu cầu của khách hàng (người sử dụng) thành hệ
thống phần mềm. Có năm bước chính cần thực hiện trong q trình phát triển phần
mềm. Đó là: xác định các yêu cầu, phân tích hệ thống, thiết kế hệ thống, lập trình và
kiểm thử hệ thống, vận hành và bảo trì hệ thống. Có thể thực hiện các bước trên
theo nhiều phương pháp khác nhau. Quâ đó số bước đề xuất của các phương pháp
cũng có thể khác nhau. Các dự án có thể thực hiện theo những mơ hình khác nhau
như mơ hình thác nước, mơ hình tạo ngun mẫu, mơ hình xoắn ốc,... Mỗi mơ hình

có ưu và nhược điểm riêng. Và dù sử dụng mơ hình nào, đối với phương pháp phân
tích và thiết kế hướng đối tượng, các bước trong chu trình phát triển sẽ được thực
hiện cụ thể như sau:
Giai đoạn xác định các yêu cầu và phân tích hệ thống: Từ các yêu cầu của
khách hàng, chúng ta xác định được các mục tiêu của phần mềm cần phát triển, tức
là các chức năng mà hệ thống cần thực hiện. Và để đặc tả chi tiết các yêu cầu của hệ
thống, quá trình cần thực hiện: hiểu rõ miền xác định của bài toán, nắm bắt các yêu
cầu, phân loại, thẩm định và nghiên cứu tính khả thi của hệ thống. Tài liệu đặc tả
các yêu cầu này được sử dụng để trao đổi với người sử dụng và để thảo luận giữa
các nhóm thành viên trong dự án phát triển phần mềm. Và cơng cụ để thực hiện
cơng việc này đó là biểu đồ ca sử dụng trong UML.
Giai đoạn phân tích hệ thống hướng đối tượng: giai đoạn này sẽ thực hiện mơ
tả mơ hình khái niệm thơng qua các đối tượng thực và các khái niệm của bài toán
ứng dụng nhằm trả lời các câu hỏi: hệ thống gồm những thành phần, bộ phận nào,
và hệ thống cần thực hiện những cái gì. Và nhiệm vụ của người phân tích hướng đối
tượng đó là tìm kiếm các đối tượng, khái niệm trong lĩnh vực bài toán và xác định
mối quan hệ của chúng trong hệ thống. Kết quả chính của pha phân tích này đó là
biểu đồ lớp, biểu đồ trạng thái, biểu đồ trình tự và biểu đồ cộng tác .
Giai đoạn thiết kế hệ thống hướng đối tượng: Dựa vào các đặc tả u cầu và
phân tích nói trên, giai đoạn này sẽ tổ chức hệ thống thành tập các đối tượng tương
tác tác với nhau và mô tả được cách để hệ thống thực thi nhiệm vụ của bài tốn. Và
để đạt được mục tiêu đó người thiết kế sẽ cần thực hiện: xây dựng các thiết kế kế
chi tiết mô tả các thành phần của hệ thống ở mức cao để phục vụ cho việc cài đặt,


đồng thời đưa ra được kiến trúc của hệ thống nhằm đảm bào hệ thống có thể thay
đổi, có tính mở, dễ bảo trì,...phù hợp với nhu cầu phát triển của công nghệ và xu thế
phát triển của lĩnh vực ứng dụng. Kết quả của giai đoạn này được thể hiện trong các
biểu đồ: biểu đò lớp chi tiết, biểu đồ hành động, biểu đồ thành phần và biểu đồ triển
khai.

Giai đoạn lập trình và kiểm thử chương trình: trong giai đoạn này, mỗi thành
phần đã được thiết kế sẽ được lập trình thành những mơ đun chương trình. Mỗi mô
đun này sẽ được kiểm thử theo các tài liệu đặc tả của giai đoạn thiết kế. Sau đó các
mơ đun sẽ được tích hợp với nhau thành hệ thống hồn chỉnh và nó sẽ được kiểm
tra xem có đáp ứng được các yêu cầu của khách hàng không. Kết thúc giai đoạn này
là phần mềm cần phải xây dựng.
Giai đoạn vận hành và bảo trì hệ thống: giai đoạn này bắt đầu bằng việc cài
đặt hệ thống phần mềm trpong môi trường sử dụng của khách hàng sau khi sản
phẩm đã được giao cho họ. Và sau đó hệ thống sẽ được nâng cấp, hoàn thiện liên
tục nhằm nâng cao hiệu quả của hệ thống và đảm bảo sự thích nghi đối với sự thay
đổi của mơi trường hoặc phù hợp với các chính sách, quy chế mới.
2.2.3 Cơng cụ trợ giúp
Các công cụ trợ giúp là các phần mềm hỗ trợ cho q trình phát triển hệ thống.
Khơng có cơng cụ hỗ trợ xun suốt mọi giai đoạn và mọi công việc phát triển hệ
thống, mà thường mỗi cơng cụ hỗ trợ cho một phần của q trình đó. Đó có thể là:
Cơng cụ hỗ trợ cho ngơn ngữ lập trình dùng để: soạn thảo và biên dịch chương
trình, gỡ lỗi và kiểm định chương trình, xây dựng và làm nguyên mẫu các giao diện
người dùng, ... Ví dụ như các trình biên dịch hỗ trợ lập trình hướng đối tượng như,
Visual Basic, Visual C++, Java,...
Công cụ hỗ trợ ngơn ngữ mơ hình hóa dùng để: Sản sinh, biến đổi và điều chỉnh
các mơ hình và biểu đồ, kiểm tra cú pháp, sự chặt chẽ và đầy đủ của các mơ hình,
kiểm thử và đánh giá các mơ hình, mơ phỏng và thực hiện mơ hình (Sinh mã code
cho khung sườn chương trình từ mơ hình), tái tạo lại mơ hình từ các phần mềm sẵn
có. Hiện nay có nhiều bộ cơng cụ, mơi trường hỗ trợ mơ hình hóa hệ thống như:
Rational Rose, StarUML, Enterprise Architect, Eclipse,....


Cơng cụ hỗ trợ tiến trình phát triển hệ thống dùng để: Dẫn dắt và hỗ trợ trực
tuyến cho việc thực hiện các giai đọan, chỉ rõ công việc phải làm, sản phẩm tạo ra,
hỗ trợ sự làm việc theo nhóm, hỗ trợ tiến trình lặp, tích hợp được với các công cụ

khác, trợ giúp việc quản lý dự án, giúp nhà quản lý dự án lên kế hoạch và theo dõi
quá trình thực thi của dự án.


Chương 3. Nghiên cứu Enterprise Architect trong phân tích và thiết kế các
HTTT
3.1 Sơ lược về EA
3.1.1 Lịch sử phát triển và đặc điểm
Enterprise Architect là công cụ thiết kế và mơ hình hóa hệ thống dựa trên ngơn
ngữ UML được phát triển bởi cơng ty Sparx System. Nó thực hiện mơ hình hóa đầy
đủ tất cả các giai đoạn của chu trình phát triển phần mềm từ thu thập u cầu, phân
tích, thiết kế mơ hình, kiểm thử, điều khiển sự thay đổi và bảo trì cho đến thực thi
hệ thống. EA được dùng để phân tích và thiết các hệ thống phần mềm, mơ hình hóa
các tiến trình kinh doanh và mơ hình hóa các lĩnh vực dựa trên ngành nghề khác
nhau như: hàng không, ngân hàng, phát triển web, kiến trúc, tài chính, y học, quân
đội, nghiên cứu, giao thơng, ... Và nó cũng được dùng rộng rãi và hiệu quả trong
công tác đào tạo và giảng dạy ở các trường cao đẳng, đại học và các cơng ty trên
tồn thế giới. Phiên bản đầu tiên của EA được phát hành vào năm 2000 và nó được
thiết kế như là cơng cụ mơ hình hóa cho phiên bản UML 1.1. Từ phiên bản đầu tiên,
đến nay qua 17 năm, EA đã phát triển và cho ra đời nhiều phiên bản. Trong đó
phiên bản mới nhất 13.0 được phát hành vào ngày 20 tháng 10 năm 2016. Mỗi
phiên bản đều có các phiên bản dành cho các đối tượng khác nhau từ người dùng cá
nhân, chuyên gia cho đến các tổ chức, doanh nghiệp. EA được sử dụng rộng rãi bởi
nó khơng chỉ có chức năng tạo mơ hình kiến trúc của các hệ thống mà cịn xử lý
(process) sự thực thi của các mơ hình đó thơng qua vịng đời phát triển ứng dụng.
Hơn nữa EA ngồi hỗ trợ mơ hình hóa hệ thống theo UML, nó còn hỗ trợ các chuẩn
khác như SysML, BOMN, .... và các nền tảng, kiến trúc khác nhau như Zachman,
UPDM, SOMF,...
Hiện nay EA có các phiên bản dành cho các đối tượng khác nhau. Cụ thể:
Phiên bản Ultimate: là phiên bản EA đầy đủ cho những người dùng, tổ chức có

kinh nghiệm. Phiên bản này được thiết kế cho những công dự án làm việc đa miền,
đa lĩnh vực cung cấp các hỗ trợ chuyên sâu cho kinh doanh, cho kiến trúc phần
mềm và cho phát triển hệ thống trong một mơi trường duy nhất. Nó cho phép người
dùng đi xuống mức thấp nhất trong thiết kế và xây dựng hệ thống thông qua ngôn
ngữ SysML và sinh mã nguồn theo chuẩn và ngơn ngữ mơ tả phần cứng. Ngồi


những tính năng nổi bật như trong các phiên bản khác, trong phiên bản này người
dùng kinh doanh có thể sử dụng ngôn ngữ BPEL, sinh các luật và thực thi UML.
Phiên bản Systems Engineering: là phiên bản dùng cho phát triển các hệ thống
kiến trúc, hệ thống nhúng và thời gian thực. Phiên bản này cũng cung cấp các tính
năng sinh code và hỗ trợ các ngơn ngữ mơ tả phần cứng và mô phỏng SysML, tuy
nhiên không đầy đủ cho tất cả các phiên bản
Phiên bản Business & Software Engineering: là phiên bản được thiết kế cho các
chuyên gia phát triển phần mềm, chun gia mơ hình hóa kinh doanh, những người
quản lý dự án, và những người liên quan đến thiết kế và xây dựng các dịch vụ kinh
doanh và phần mềm chất lượng. Phiên bản này cung cấp các tính năng như sinh
code từ các mơ hình UML, BPEL, kịch bản,..., tuy nhiên khơng hỗ trợ nhiều ngôn
ngữ như phiên bản Ultimate
Phiên bản Corporate: là phiên bản hỗ trợ các nhóm, tổ chức lớn với độ an toàn
và truy cập cơ sở dữ liệu từ xa đối với các hệ quản trị như MySQL, SQL Server,...
Phiên bản Professional: là phiên bản hỗ trợ đầy đủ cho việc mơ hình hóa UML
cho các nhóm, các nhà phân tích và phát triển hệ thống, từ việc sinh mã nguồn,
đồng bộ hóa các thành phần mơ hình với mã nguồn, đến kiến trúc dữ liệu với các hệ
quản trị khác nhau hay các công nghệ MDG. Tuy nhiên các kho dữ liệu của phiên
bản này bị giới hạn với tệp có định dạng . EAP
Phiên bản Desktop: là phiên bản dùng cho những người dùng cá nhận trong quá
trình mơ hình hóa phân tích và thiết kế bằng UML. Phiên bản này cho phép người
dùng mơ hình hóa UML, nhập/ xuất XMI, sinh các tài liệu, quản lý tích hợp phiên
bản và khả năng mở rộng mơ hình.

Ngồi ra, người dùng có thể dùng thử 30 ngày với một số cấu hình trong phiên
bản Trial, hoặc đọc/xem các dự án (mà không được phép chỉnh sửa) thông qua
phiên bản miễn phí Lite.
3.1.2 Tính năng
EA là cơng cụ hữu hiệu cho việc đặc tả và xây dựng các dự án phần mềm và các
dự án tiến trình kinh doanh. Sử dụng EA có sự hỗ trợ của UML và các chuẩn liên
quan, người dùng có thể mơ hình hóa các hệ thống phần mềm và kinh doanh phức


×