NGHIÊN CỨU XÂY DỰNG HỆ THỐNG WEBSITE QUẢN LÝ ĐÀO TẠO TÍN CHỈ CHO ĐẠI HỌC ĐÀ NẴNG - Pdf 32

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 736 949, Fax. (84-511) 842 771
Website: itf.ud.edu.vn
, E-mail: [email protected] LUẬN VĂN TỐT NGHIỆP KỸ SƯ
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ NGÀNH : 05115 ĐỀ TÀI :
NGHIÊN CỨU XÂY DỰNG HỆ THỐNG WEBSITE
QUẢN LÝ ĐÀO TẠO TÍN CHỈ CHO ĐẠI HỌC ĐÀ NẴNG
Mã số : 02T4-15
02T4-21
Ngày bảo vệ : 13/06/2007 – 15/06/2007

SINH VIÊN : Lê Văn Minh
Nguyễn Minh Quang
LỚP : 02T4
CBHD : ThS Huỳnh Hữu Hưng
ĐÀ NẴNG, 05/2007


Văn Minh
Nguyễn Minh Quang
LỜI CAM ĐOAN

Tôi xin cam đoan :
1 Những nội dung trong luận văn này là do tôi thực hiện dưới sự
hướng dẫn trực tiếp của thạc sĩ Huỳnh Hữu Hưng.
2 Mọi tham khảo dùng trong
luận văn đều được trích dẫn rõ ràng tên
tác giả, tên công trình, thời gian, địa điểm công bố.
3 Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá,
tôi xin chịu hoàn toàn trách nhiệm.

Sinh viên,
Lê Văn Minh
Nguyễn Minh QuangMỤC LỤC
TỔNG QUAN ĐỀ TÀI ...................................................................................1


I. Xây dựng chương trình ....................................................................................... 45
I.1. Xây dựng dữ liệu ......................................................................................... 45
I.2. Xây dựng giao diện...................................................................................... 56
I.3. Xây dựng gói theo mô hình MVC ............................................................... 58
I.4. Các giải pháp ............................................................................................... 61
II. Kết quả đạt được ................................................................................................. 69
KẾT LUẬN.................................................................................................... 75

I. Đánh giá kết quả ................................................................................................. 75
I.1. Về mặt lý thuyết........................................................................................... 75
I.2. Về mặt chương trình.................................................................................... 75
II. Hướng phát triển ................................................................................................. 76
II.1. Về mặt lý thuyết........................................................................................... 76
II.2. Về mặt chương trình.................................................................................... 76 DANH MỤC HÌNH VẼ

Hình 1 – Cách thức servlet làm việc.......................................................................................... 6
Hình 2 – JDBC kết nối trực tiếp với trình điều khiển ............................................................. 10
Hình 3 – JDBC sử dụng cầu nối ODBC.................................................................................. 10
Hình 4 – JDBC kết nối thông qua cá
c ứng dụng mạng trung gian ......................................... 11
Hình 5 – Mô hình 1 .................................................................................................................11
Hình 6 – Mô hình 2 (MVC)..................................................................................................... 12
Hình 7 – Quy trình sinh viên đăng ký lớp học phần................................................................ 26
Hình 8 – Admin Usecase......................................................................................................... 29
Hình
9 – Activity diagram của usecase admin đăng nhập....................................................... 30

Hình 34 – Thời kh
óa biểu sinh viên ........................................................................................ 47
Hình 35 – Lớp học phần theo kỳ ............................................................................................. 48
Hình 36 – Bố cục trang Web ................................................................................................... 56
Hình 37 – Header..................................................................................................................... 56
Hình 38 – Footer...................................................................................................................... 56
Hình 39 – Right Pane, Giáo viên Left Menu, Sinh viên Left
Menu........................................ 57
Hình 40 – Giáo viên Top Menu............................................................................................... 57
Hình 41 – Admin Top Menu ................................................................................................... 57
Hình 42 – Sinh Viên Top Menu .............................................................................................. 57
Hình 43 – Admin Left Menu................................................................................................... 57 Hình 44 – Nội dung gói AdminInterface................................................................................. 58
Hình 45 – Nội dung gói SinhVienInteface .............................................................................. 58
Hình 46 – Nội dung gói GiaoVienInterface............................................................................. 59
Hình 47 – Nội dung gói BusinessObject ................................................................................. 59
Hình 48 – Nội dung gói
Bean.................................................................................................. 60
Hình 49 – Nội dung gói DataAcessObject .............................................................................. 60
Hình 50 – Nội dung gói Default .............................................................................................. 60
Hình 51 – Đồ thị mô tả học phần và các quan hệ.................................................................... 61
Hình 52 – Kiểm tra xung đột thời kh
óa biểu bằng AND bit (không xung đột)....................... 65
Hình 53 – Kiểm tra xung đột thời khóa biểu bằng AND bit (có xung đột)............................. 65
Hình 54 – Cập nhật quỹ thời gian của sinh viên sau khi đăng ký............................................ 65
Hình 55 –
Cập nhật quỹ thời gian của sinh viên sau khi hủy bỏ lớp học phần........................ 66
Hình 56 – Quy trình ánh xạ dữ liệu......................................................................................... 67

Bảng 9 – Mã của các ngành thuộc đại học Bách Khoa Đà Nẵng ............................................ 23
Bảng 10 – Bảng tblChiTietDiemCuaSinhVien .......................................................................48
Bảng 11 – Bảng tblChiTietKhungChuongTrinh...................................................................... 48
Bảng 12 –
Bảng tblChiTietHocPhan ...................................................................................... 49
Bảng 13 – Bảng tblDiemCuaSinhVien.................................................................................... 49
Bảng 14 – Bảng tblDonVi ....................................................................................................... 49
Bảng 15 – Bảng tblGiaoVien................................................................................................... 50
Bảng 16 – Bảng tblHocKy....................................................................................................... 51
Bảng 17 – Bảng tblHocKyHienHanh ...................................................................................... 51
Bảng 18 –
Bảng tblHocPhan.................................................................................................... 51
Bảng 19 – Bảng tblKhoa.......................................................................................................... 51
Bảng 20 – Bảng tblKhoaHoc................................................................................................... 52
Bảng 21 – Bảng tblKhungChuongTrinh.................................................................................. 52
Bảng 22 – Bảng tblLoaiDiem.................................................................................................. 52
Bảng 23 – Bảng tblLopHocPhan ............................................................................................. 52
Bảng 24 – Bản
g tblLopHocPhan ............................................................................................. 53
Bảng 25 – Bảng tblNganh........................................................................................................ 53
Bảng 26 – Bảng tblNhomLopHocPhan ................................................................................... 53
Bảng 27 – Bảng tblPhongHoc ................................................................................................. 53
Bảng 28 – Bảng tblQuanHe.....................................................................................................53
Bảng 29 – Bảng tblQuanHeHocPhan ...................................................................................... 54
Bảng 30 – Bảng
tblSinhVienDangKy...................................................................................... 54
Bảng 31 – Bảng tblThoiKhoaBieu .......................................................................................... 54
Bảng 32 – Bảng tblThoiKhoaBieuSinhVien ........................................................................... 54
Bảng 33 – Bảng tblSinhVien................................................................................................... 55
Bảng 34 – Biểu diễn quan hệ theo danh sách đỉnh kề ............................................................. 62

Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4
1

TỔNG QUAN ĐỀ TÀI

I. Bối cảnh đề tài
Giáo dục là nền tảng cho sự phát triển của cả một dân tộc, đặc biệt là giáo dục ở bậc đại
học. Người ta thường dùng các chỉ số kinh tế để đánh giá sự phát triển c
ủa một quốc gia, thế
nhưng để đánh giá sự phát triển của cả một dân tộc thì người ta lại xét đến các khía cạnh của
giáo dục đặc biệt là giáo dục đại học. Trên t
hế giới, các quốc gia đã phát triển đều là những
nước có nền giáo dục tiên tiến, với những trường đại học hàng đầu tiêu biểu là Hoa Kỳ, Nhật
Bản, Anh và gần c
húng ta nhất là Singapore.
Nền giáo dục của nước ta đang từng bước cải cách và phát triển. đại học Đà Nẵng là một
trong ba trọng điểm trong việc phát t
riển nền giáo dục đại học của nước ta.
Trong quá trình phát triển của mình, đại học Đà Nẵng đang chuyển dần từ Đào tạo theo
niên chế sang Đào tạo theo
tín chỉ. Quản lý đào tạo tín chỉ tuy là một công việc khó khăn và
phức tạp nhưng công việc này vô cùng quan trọng; quản lý tốt thì chất lượng đào tạo được
nâng cao.
Hiện tại, việc quản lý đào tạo tín chỉ tại Đại học Đà Nẵng đang gặp một số khó khăn, xuất
phát từ nhiều nguyên nhân khác nhau: mới đầu chuyển sang đ
ào tạo tín chỉ, hệ thống quản lý
mới xây dựng, chưa thống nhất,… và việc quản lý này vẫn còn mang nhiều ảnh hưởng của hệ

II. Mục đích
Trong bối cảnh trên, chúng tôi, bằng những kiến thức đã học và sự hướng dẫn tận tình của
giáo viên, chúng tôi thực hiện đề tài này nhằm mục đích nghiên cứu n
hững vấn đề gặp phải
trong việc quản lý đào tạo tín chỉ; từ đó chúng tôi đưa ra những giải pháp khắc phục và cuối
cùng là cụ thể hóa các giải pháp
bằng việc xây dựng một hệ thống website quản lý đào tạo tín
chỉ có đầy đủ chức năng nêu trên. Ngoài ra, khi xây dựng hệ thống website này chúng tôi
mong muốn góp một phần n
hỏ trong sự nghiệp phát triển của giáo dục Việt Nam. Hệ thống
xây dựng không tránh khỏi những hạn chế, chúng tôi mong nhận được ý kiến đóng
góp để
hoàn thiện sau này.
III. Hướng nghiên cứu
III.1. Về mặt lý thuyết
Nghiên cứu việc quản lý đào tạo tín chỉ tại trường Đại học Bách Khoa Đà Nẵng hiện nay.
Nghiên cứu những vấn đề gặp phải của việc quản lý đào tạo tín chỉ.
Nghi
ên cứu lý thuyết xây dựng một hệ thống website tác nghiệp bằng công nghệ Java, cụ
thể là JSP và Servlet.
Đưa ra các định hướng phát triển của đề tài.
III.2. Công cụ xây dựng đề tài
Công cụ nghiên cứu cơ sở lý thuyết: các tài liệu liên quan đến đào tạo tín chỉ do Đại học
Đà Nẵng phát hành, các tài liệu liên quan đến lập trình Java (giáo trình và ebook), các t
rang
web liên quan…
Công cụ xây dựng hệ thống website: Sun Java JDK 1.5, Sun IDE NetBean 4.1, Apache
Tomcat 5.5, Microsoft SQL Server 2000 Service Pack 4, Microsoft Visio 2003 beta.
III.3. Dự kiến kết quả đạt được
Với những công cụ và kiến thức thu thập được, chúng tôi sẽ xây dựng hệ thống website

đăng ký vào một trong các lớp đó. Quá trình
đăng ký này sẽ được kiểm tra chặt chẽ các ràng buộc. Ngoài ra, sinh viên có thể hủy
bỏ một lớp học phần mà mình đã
đăng ký.
− Sinh viên xem thời khóa biểu: Sinh viên xem thời khóa biểu trong học kỳ hiện
hành.
− Nhân viên quản trị upload các danh sách liên quan: Nhân viên quả
n trị (admin)
sau khi đăng nhập sẽ có chức năng upload, chức năng này cho phép upload danh sách
giáo viên, sinh viên, lớp học, phòng học, học phần và các thông tin khác. Các dan
h
sách này được lưu ở dạng file excel và tự động được cập nhật vào cơ sở dữ liệu.
− Nhân viên quản trị cập nhật thông tin: Nhân viên quản trị dễ dàng cập nhật thông
tin của
đối tượng bất kỳ liên quan đến quá trình quản lý đào tạo.
− Nhân viên quản trị xây dựng khung chương trình: Nhân viên quản trị dễ dàng xây
dựng khung chư
ơng trình cho từng khóa học của từng ngành.
− Nhân viên quản trị xây dựng thời khóa biểu: Nhân viên quản trị dễ dàng xây dựng
thời khóa biểu cho từng lớp
học phần mà không lo ngại xung đột thời khóa biểu.
Với kết quả dự kiến đạt được của chương trình, luận văn được tổ chức thành các chương
cụ thể như sau:
Chương 1.
Cơ sở lý thuyết: Giới thiệu tổng quan lý thuyết và công cụ thực hiện để tài.
Trong chương này, chúng tôi trình bày lý thuyết xây dựng một hệ thống website bằng ngôn
ngữ JSP theo mô hình Model View Controller.
Chương 2. Phân tích thiết kế hệ thống: Trong chương này, chúng tôi trình bày về phân
tích hiện trạng, phâ
n tích hệ thống và thiết kế hệ thống.

<html> </html> Cặp thẻ này quy ước mở đầu và kết thúc cho tài liệu HTML. Nội dung của
HTML được đặt giữa hai thẻ này.
<b>, <i> Thẻ định dạng in đậm và in nghiêng của một chuỗi văn bản trong tài liệu.
<h1>, <h2>, <h3> Thẻ định dạng in cỡ chữ cho tiêu đề
<body> </body> Thẻ định dạng phần thân của tài liệu HTML.
<table> </table> Thẻ định dạng một bảng trong tài liệu HTML.
<tr> </tr> Thẻ định dạng một hàng trong bảng của tài liệu HTML
<td> </td> Thẻ định dạng một ô trong một bảng của tài liệu HTML
<br> Thẻ xuống cắt dòng
Bảng 1 –
Một số thẻ (tag) thường sử dụng trong ngôn ngữ HTML

Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

5
I.1.2. Trình duyệt (browser)
Trình duyệt là một chương trình ở phía Client dùng để hiển thị tài liệu HTML. Để có được
tài liệu HTML, trình duyệt sẽ liên hệ với trình chủ Web Server để lấy tài liệu qua mộ
t địa chỉ
Web là Url. Khi nhận được tài liệu, trình duyệt sẽ đọc, phân tích và hiển thị tài liệu theo các
định dạng nhất định như font chữ, màu sắc, hình ảnh, âm thanh thậ
m chí còn thực hiện một số
lệnh tương tác như JavaScript, VBScript.. Người sử dụng có thể nhập dữ liệu và trình duyệt
thông qua các thành phần điều khiển của f
orm như textBox, textArea, checkBox, listBox,...
và yêu cầu trình duyệt gửi về máy chủ xử lý thông qua thao tác được gọi là submit. Với đề tài
này có thể chạy bằng bất cứ trình duyệt nà
o, tuy nhiên, chúng ta nên sử dụng Ms Internet
Explorer phiên bản 4.0 trở về sau để nội dung được hiển thị chính xác hơn.


6
I.1.6. Web Server
Web Server là một máy tính có cài phần mềm Web server, nó nhận các yêu cầu (request)
HTTP từ phía client và trả lời phục vụ các yêu cầu đó bằng dữ liệu tương ứng.
I.1.7. Servlet
Công nghệ Servlet là cơ sở để triển khai các ứng dụng Web sử dụng ngôn ngữ lập trình
Java, là công nghệ quan trọng, cơ bản để triển khai ứng dụng Web: Java Server Page.
Servlet là m
ột lớp Java có thể được load động và được chạy bởi một Web Server đặc biệt.
Một Web Server hiểu được Servlet được gọi là
servlet container hay servlet engine.
Servlet tương tác với client thông qua mô hình request-response dựa trên HTTP. Bởi vì
công nghệ Servlet dựa trên HTTP nên servlet container cũng phải hỗ trợ HTTP hay một giao
thức tương tự như HTTPS (HTTP over SSL) để bảo mật hơn.
Cách thức servlet làm việc: Một Servlet sẽ được nạp bởi servlet container khi lần đầu tiên
servlet được yêu cầu. Servlet sẽ xử lý các yêu cầu người sử dụng v
à trả về hồi đáp đến servlet
container. Sau đó servlet vẫn ở trong bộ nhớ để đợi các yêu cầu khác nó sẽ được unload khi
servlet container thấy bộ nhớ còn ít.

Hình 1 –
Cách thức servlet làm việc

Chu trình sống Servlet:
Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

7
− Nạp Servlet: Một Servlet có thể nạp vào bộ nhớ ở 3 thời điểm khác nhau: khi server

phát triển tạo nội dung HTML, XML hay một số định dạng khác của trang web một cách
năng động, trong khi hồi âm yêu cầu của trình khách. Công nghệ này ch
o phép người ta
nhúng mã Java và một số hành động xử lý đã được định trước (pre-defined actions) vào trong
nội dung tĩnh của trang.
Cú pháp của JSP cho thêm các thẻ
XML mới, gọi là JSP actions - hành động JSP. Những
"hành động JSP" này được dùng để khởi động chức năng sẵn có, là những chức năng đã được
xây dựng tr
ước. Cộng thêm vào đó, công nghệ còn cho phép chúng ta tạo ra các thư viện thẻ
JSP (JSP tag libraries), là những cái đóng vai trò vào việc mở rộng các thẻ
HTML hay XML
tiêu chuẩn. Thư viện thẻ (Tag libraries) là phương pháp mở rộng khả năng của một máy chủ
web trong khi những mở rộng đó không phụ thu
ộc vào hệ nền (về cả cấu trúc máy cũng như
hệ điều hành được dùng).
Trước khi hiển thị ra trình duyệt, tập tin JSP phải được biên dịch thành Servlet, dùng bộ
biên d
ịch JSP (JSP compiler). Bộ biên dịch JSP có thể tạo servlet thành mã nguồn Java trước,
rồi biên dịch mã nguồn ra tập tin .class dùng bộ biên dịch Java, hoặc có thể trực tiếp tạo

byte code cho servlet từ trang JSP.
Một trang JSP có thể được phân thành từng phần nhỏ như sau:
− dữ liệu tĩnh, như HTML
− các chỉ thị JSP (JSP directives) như c
hỉ thị include: <jsp:include>
Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

8

tag library). Chỉ thị này đòi hỏi một tiền tố (prefix) (tương tự như namespace trong
C++), c
ũng như kết nối URI của phần mô tả thư viện thẻ (URI for the tag library
description) phải được xác định.
Các đối tượng chuẩn:
− out (xuất) – JSPWriter sử dụng nó để
ghi dữ liệu vào luồng dữ liệu hồi âm (response
stream).
− page (trang) – Bản thân servlet.
− pageContext (ngữ cảnh của trang) – Một PageContext là một thực thể có chứa dữ liệu
liên kế
t với toàn bộ trang web. Một trang HTML nào đấy có thể được truyền qua
nhiều trang JSP.
− request (yêu cầu) – Đối tượng yêu cầu HTTP.
− response (hồi âm) – Đối tượng hồi âm HTTP.
− session (phiên giao dịch) – Đối tượng phiên giao dịch HTTP. Cái này có thể được
dùng để theo dõi tin tức về một người dùng, từ yêu cầu này đến yêu cầu khác
Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

9
Các thẻ hành động của JSP:
Hành động Giải thích
jsp:include Tương tự như mục đích sử dụng một thủ tục con (subroutine), Java
servlet tạm thời trao nhiệm vụ đặt yêu cầu và hồi âm cho trang
JavaServer (JavaServer Page) chỉ định nào đấy. Qu
yền khống chế sẽ
được hoàn lại cho trang JSP hiện tại, một khi trang JSP kia hoàn
thành nhiệm vụ của nó. Dùng phương pháp này, mã trang JSP được
chia sẻ với n

quả hơn kiểu JDBC-ODBC. Tuy nhiên, bạn phải mua các trình điề
u khiển CSDL đặc thù do
những nhà phát triển cơ sở dữ liệu cung cấp.

Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

10
Hình 2 –
JDBC kết nối trực tiếp với trình điều khiển
I.2.2. Kết nối thông qua cầu nối ODBC (Open Database Connectivity)
ODBC (Open Source Connectivity) là cách kết nối tổng quát nhất đến mọi hệ cơ sở dữ liệu
thông qua trình quản lý ODBC của Windows. Mỗi hệ cơ sở dữ liệu sẽ cung cấp một trình
điều khiển có khả nă
ng đọc hiểu được cơ sở dữ liệu của chúng. Trình điều khiển này sẽ được
đăng ký với bộ quản lý ODBC. Tất cả các lệnh truy xuất cơ sở dữ liệu sau đó được thực thi
bằng lệnh SQL. Java cho bạ
n sử dụng JDBC để gọi ODBC và bằng cách này bạn có thể kiểm
soát nhiều hệ quản trị cơ sở dữ liệu khác nhau. Quan hệ cầu nối JDBC-ODBC được thể hiện
ở hình dưới. Sun cung cấp sẵn thư viện JDBC
-ODBC kèm theo bộ JDK và bạn có thể dùng
miễn phí.
CSDL
Java Application,
Applet, Servlet
JDBC Driver
Database Driver
ODBC

Hình 3 –

Cấu trúc Mô hình 1 rất đơn giản, một request tạo bởi JSP hoặc Servlet và sau đó JSP hoặc
Servlet kia sẽ xử lý request, kiểm tra tính hợp lệ dữ liệu, xử lý các nguyên tắc tác nghiệp và
tạo
ra một response. Mặc dù đơn giản, nhưng Mô hình 1 không thích hợp để phát triển những
ứng dụng lớn bởi vì chắc hẳn một số lượng lớn các hàm sẽ đươc nhân bản trong mỗi trang
J
SP. Không những thế, Mô hình 1 còn không cần thiết phải có sự liên kết giữa bussiness logic
và presentation logic của ứng dụng. Khi kết hợp business logic với presentation logic làm cho
nó khó có t
hể đưa vào một “view” mới hay một điểm truy cập mới trong ứng dụng. Ví dụ như
Nghiên cứu xây dựng hệ thống Website quản lý tín chỉ cho Đại học Đà Nẵng
Lê Văn Minh, Nguyễn Minh Quang, LỚP 02T4

12
trong một giao diện HTML, bạn muốn thêm vào một giao diện mới như Wireless Markup
Language (WML) cho truy cập không dây thì việc đó là rất khó.
II.2. Kiến trúc mô hình 2 (Model – View – Controller) Hình 6 –
Mô hình 2 (MVC)
Mô hình 2 hay mô hình Model – View – Controller (MVC) đã giải quyết nhiều vấn đề cố
hữu của Mô hình 1. Trong mô hình MVC Controller là một S
ervlet trung tâm nhận tất cả các
request từ phía client. Controller sẽ phân loại và xử lý các request. Khi xử lý các request, tầng
Model bên dưới sẽ cung cấp các phương thức cho Controller. Bên tr
ong Model có 2 tầng tách
biệt là Business Logic và Data Manipulation. Business Logic đặc tả tất cả các đối tượng
tương tác trong toàn bộ hệ t
hống còn Data Manipulation đặc tả tất cả các luật và phương thức

trong một số giai đoạn nhất định, dù đó là giai đoạn thiết kế hay giai đoạn xây dựng hoặc chỉ
là một kế hoạch. Nhà thiết kế cần phải tạo ra các mô hình
mô tả tất cả các khía cạnh khác
nhau của sản phẩm. Ngoài ra, một mô hình có thể được chia thành nhiều hướng nhìn, mỗi
hướng nhìn trong số chúng sẽ mô tả một khía cạnh riêng
biệt của sản phẩm hay hệ thống cần
được xây dựng. Một mô hình cũng có thể được xây dựng trong nhiều giai đoạn và ở mỗi giai
đoạn, mô hình sẽ được bổ sung thêm một số chi tiế
t nhất định.
Mô hình thường được mô tả trong ngôn ngữ trực quan, điều đó có nghĩa là đa phần các
thông tin được thể hiện bằng các ký hiệu đồ họa và các kết nối giữa chúng, chỉ
khi cần thiết
một số thông tin mới được biểu diễn ở dạng văn bản; Theo đúng như câu ngạn ngữ "Một bức
tranh nói nhiều hơn cả ngàn từ". Tạo mô hình cho các hệ thống phần mềm trước
khi thực sự
xây dựng nên chúng, đã trở thành một chuẩn mực trong việc phát triển phần mềm và được
chấp nhận trong cộng đồng làm phần mềm giống như trong bất kỳ
một ngành khoa học kỹ
thuật nào khác. Việc biểu diễn mô hình phải thõa mãn các yếu tố sau:

− Chính xác (accurate): Mô tả đúng hệ thống cần xây dựng.
− Đồng nhất (consistent): Các view
khác nhau không được mâu thuẩn với nhau.
− Có thể hiểu được (understandable): Cho những người xây dựng lẫn sử dụng
− Dễ thay đổi (changeable)
− Dễ dàng liên lạc với các mô hình khác.
Có thể n
ói thêm rằng mô hình là một sự đơn giản hoá hiện thực. Mô hình được xây dựng
nên để chúng ta dễ dàng hiểu và hiểu tốt hơn hệ thống cần xây dựng. Tạo mô
hình sẽ giúp cho

ểm
mạnh và điểm yếu riêng. Vì thế, các nhà phát triển phần mềm nhiều kinh nghiệm thường sử
dụng phối hợp các điểm mạnh của mỗi phương pháp ch
o ứng dụng của mình. Trong thực tế,
sự khác biệt giữa các phương pháp đó hầu như không đáng kể và theo cùng tiến trình thời
gian, tất cả nhữn
g phương pháp trên đã tiệm cận lại và bổ sung lẫn cho nhau. Chính hiện thực
này đã được những người tiên phong trong lĩnh vực mô hình hoá hướng đố
i tượng nhận ra và
họ quyết định ngồi lại cùng nhau để tích hợp những điểm mạnh của mỗi phương pháp và đưa
ra một mô hình thống nhất cho lĩnh
vực công nghệ phần mềm.
III.1.3. Sự ra đời của UML
Trong bối cảnh trên, người ta nhận thấy cần thiết phải cung cấp một phương pháp tiệm cận
được chuẩn hoá và thống nhất cho việc mô hình hoá hướng đối tượng. Yê
u cầu cụ thể là đưa
ra một tập hợp chuẩn hoá các ký hiệu (Notation) và các biểu đồ (Diagram) để nắm bắt các
quyết định về mặt thiết kế một cách rõ ràng, rành mạch
. Đã có ba công trình tiên phong nhắm
tới mục tiêu đó, chúng được thực hiện dưới sự lãnh đạo của James Rumbaugh, Grady Booch
và Ivar Jacobson. Chính những cố
gắng này dẫn đến kết quả là xây dựng được một Ngôn Ngữ
Mô Hình Hoá Thống Nhất (Unifield Modeling Language – UML).
UML là một ngôn ngữ mô hình hoá thống nhất có
phần chính bao gồm những ký hiệu hình
học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả các thiết kế của
một hệ thố
ng. Nó là một ngôn ngữ để đặc tả, trực quan hoá, xây dựng và làm sưu liệu cho
nhiều khía cạnh khác nhau của một hệ thống có nồng độ phần mềm cao. UML có thể được sử
dụng làm công cụ giao tiếp giữa người dùng, nhà phân tích, nhà thiết kế và nhà phát triển

ô tả trong tài liệu, nó sẽ
đặc tả các yêu cầu của khách hàng: Anh ta hay chị ta chờ đợi điều gì ở phía hệ thống mà
không hề để ý đến việc chức năn
g này sẽ được thực thi ra sao.
III.2.2. Giai đoạn phân tích
Giai đoạn phân tích quan tâm đến quá trình trừu tượng hóa đầu tiên (các lớp và các đối
tượng) cũng như cơ chế hiện hữu trong phạm vi vấn đề. Sau khi nhà
phân tích đã nhận biết
được các lớp thành phần của mô hình cũng như mối quan hệ giữa chúng với nhau, các lớp
cùng các mối quan hệ đó sẽ được miêu tả bằng c
ông cụ biểu đồ lớp (class diagram) của UML.
Sự cộng tác giữa các lớp nhằm thực hiện các Use case cũng sẽ được miêu tả nhờ vào các mô
hình động (dynamic models) của UML. Trong giai đoạn p
hân tích, chỉ duy nhất các lớp có
tồn tại trong phạm vi vấn đề (các khái niệm đời thực) là được mô hình hóa. Các lớp kỹ thuật
định nghĩa chi tiết cũng như gi
ải pháp trong hệ thống phần mềm, ví dụ như các lớp cho giao
diện người dùng, cho ngân hàng dữ liệu, cho sự giao tiếp, trùng hợp, v.v..., chưa phải là mối
quan tâm của giai đoạn này.
III.2.3. Giai đoạn thiết kế
Trong giai đoạn này, kết quả của giai đoạn phân tích sẽ được mở rộng thành một giải pháp
kỹ thuật. Các lớp mới sẽ được bổ sung để tạo thành một hạ tầng cơ sở kỹ thu
ật: Giao diện
người dùng, các chức năng để lưu trữ các đối tượng trong ngân hàng dữ liệu, giao tiếp với các
hệ thống khác, giao diện với các thiết bị ngoại vi và
các máy móc khác trong hệ thống, .... Các
lớp thuộc phạm vi vấn đề có từ giai đoạn phân tích sẽ được "nhúng" vào hạ tầng cơ sở kỹ
thuật này, tạo ra khả
năng thay đổi trong cả hai phương diện: Phạm vi vấn đề và hạ tầng cơ
sở. Giai đoạn thiết kế sẽ đưa ra kết quả là bảng đặc tả chi tiết cho giai đoạn xây dựng

hư đã được định
nghĩa từ ban đầu trong các biểu đồ này.
III.2.6. Các thành phần của ngôn ngữ UML
Ngôn ngữ UML bao gồm một loạt các phần tử đồ họa (graphic element) có thể được kết
hợp với nhau để tạo ra các biểu đồ. Bởi đây là một ngôn ngữ, nên UML cũng có các nguyên
tắc để
kết hợp các phần tử đó.
Một số những thành phần chủ yếu của ngôn ngữ UML:
− Hướng nhìn (view): Hướng nhìn chỉ ra những khía cạnh khác nhau của h
ệ thống cần
phải được mô hình hóa. Một hướng nhìn không phải là một bản vẽ, mà là một sự trừu
tượng hóa bao gồm một loạt các biểu đồ khác nhau. Chỉ qua việc đị
nh nghĩa của một
loạt các hướng nhìn khác nhau, mỗi hướng nhìn chỉ ra một khía cạnh riêng biệt của hệ
thống, người ta mới có thể tạo dựng nên một bức tranh ho
àn thiện về hệ thống. Cũng
chính các hướng nhìn này nối kết ngôn ngữ mô hình hóa với quy trình được chọn cho
giai đoạn phát triển.
− Biểu đồ (d
iagram): Biểu đồ là các hình vẽ miêu tả nội dung trong một hướng nhìn.
UML có tất cả 9 loại biểu đồ khác nhau được sử dụng trong những sự kết hợp khác
nhau để cung cấ
p tất cả các hướng nhìn của một hệ thống.
− Phần tử mô hình hóa (model element): Các khái niệm được sử dụng trong các biểu
đồ được gọi là các ph
ần tử mô hình, thể hiện các khái niệm hướng đối tượng quen
thuộc. Ví dụ như lớp, đối tượng, thông điệp cũng như các quan hệ giữa các khái niệm
này, bao
gồm cả liên kết, phụ thuộc, khái quát hóa. Một phần tử mô hình thường được
sử dụng trong nhiều biểu đồ khác nhau, nhưng nó luôn luôn chỉ có một ý nghĩa và một

nh là 45 phút.
I.2. Học phần
I.2.1. Định nghĩa
Học phần là khối lượng kiến thức tương đối trọn vẹn, thuận tiện cho người học tích lũy
trong quá trình học tập:
Mỗi học phần thực hành có khố
i lượng từ 1 đến 3 tín chỉ, mỗi học phần lý thuyết hoặc học
phần có cả lý thuyết và thực hành có khối lượng từ 2 đến 5 tín chỉ.
Một học phần phải được bố trí
giảng dạy trọn vẹn và phân bố đều trong một học kỳ. Khoá
luận hay đồ án tốt nghiệp là một học phần đặc biệt, có khối lượng tương đương 10 - 15 tín c
hỉ
(cụ thể xem Điều 28).
Kiến thức trong mỗi học phần được thiết kế kiểu môđun theo từng môn học hoặc được kết
cấu dưới dạng tổ hợp từ nhiều môn học thành mộ
t môn học mới. Mỗi học phần phải được ký
hiệu bằng một mã riêng do trường qui định.
I.2.2. Các loại học phần
− Học phần bắt buộc là học phần chứa đựng những nội dung chính yếu của ngành hay
nhóm ngành đào tạo, mà tất cả mọi sinh viên thuộc ngành hay nhóm ngàn
h đào tạo đó
đều phải theo học và tích luỹ được.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status