Hiện nay, đã có các phần mềm ứng dụng vào công tác Quản lý KH&CN như: - iSTM được thiết kế bởi Công ty Cổ phần Phần mềm S.D.T nhằm hỗ trợ công tácQuản lý KH&CN của các sở KHCN tại các tỉ
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO TỔNG KẾT
ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CỦA SINH VIÊN THAM GIA
CUỘC THI SINH VIÊN NGHIÊN CỨU KHOA HỌC NĂM HỌC 2013 – 2014
NGHIÊN CỨU ỨNG DỤNG PHÂN TÍCH, THIẾT KẾ HỆ
THỐNG THÔNG TIN QUẢN LÝ
Thuộc nhóm ngành khoa học: Khoa học kĩ thuật và công nghệ
Họ và tên sinh viên: Nguyễn Cao Hoài Phương Giới tính: Nam Dân tộc: Kinh
Lớp, khoa: Đại học (liên thông) K.1 - Công nghệ thông tin
Ngành học: Kĩ thuật phần mềm
Giảng viên hướng dẫn: Th.S Đinh Thị Thu Hương
Trang 2TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT Độc lập – Tự do – Hạnh phúc
THÔNG TIN KẾT QUẢ NGHIÊN CỨU
1 Thông tin chung:
- Tên đề tài: Nghiên cứu ứng dụng phân tích, thiết kế hệ thống thông tin quản lý
- Sinh viên thực hiện: Nguyễn Cao Hoài Phương
- Lớp, khoa: Đại học (liên thông) k.1 Kĩ Thuật Phần Mềm, Công Nghệ Thông Tin
- Người hướng dẫn: Th.S Đinh Thị Thu Hương
2 Mục tiêu đề tài:
- Nghiên cứu các phương pháp và vai trò của phân tích, thiết kế hệ thống thông tin
quản lý
- Ứng dụng vào chức năng: in ấn, kết xuất dữ liệu trong hệ thống Quản lý hồ sơ
KH&CN trường Đại học Thủ Dầu Một
- Cung cấp tài liệu tham khảo cho SV học các học phần: Phân tích, thiết kế hệ thống
và Đồ án môn học
3 Tính mới và sáng tạo:
- Đề tài đã đánh giá vai trò của việc phân tích, thiết kế hệ thống trong quy trình xây
dựng phần mềm
4 Kết quả nghiên cứu:
- Tài liệu tham khảo cho SV học các học phần: Phân tích, thiết kế hệ thống và đồ ánmôn học
- Demo chức năng in
5 Đóng góp về mặt kinh tế - xã hội, giáo dục và đào tạo, an ninh, quốc phòng và khả năng áp dụng của đề tài:
- Giáo dục đào tạo: SV có thêm tài liệu tham khảo khi học 2 học phần Phân tích, thiết
kế hệ thống và Đồ án môn học
- Phát triển kinh tế - xã hội: Góp phần nâng cao chất lượng đào tạo nguồn nhân lực
CNTT
- Khả năng áp dụng của đề tài: SV học chuyên ngành CNTT và các ngành gần.
6 Công bố khoa học của SV từ kết quả nghiên cứu của đề tài: Bài báo gửi tạp chí
Đại học Thủ Dầu Một (chờ phản biện)
Bình Dương, Ngày tháng năm 2014
Cán bộ hướng dẫn
Ths Đinh Thị Thu Hương
Sinh viên chịu trách nhiệm chính
thực hiện đề tài
(chữ ký, họ và tên)
Nguyễn Cao Hoài Phương
Trang 3TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT Độc lập – Tự do – Hạnh phúc
THÔNG TIN VỀ SINH VIÊN CHỊU TRÁCH NHIỆM CHÍNH THỰC HIỆN ĐỀ TÀI
I SƠ LƯỢC VỀ SINH VIÊN:
Họ và tên: Nguyễn Cao Hoài Phương
Sinh ngày: 18 tháng 06 năm 2014
Nơi sinh: Bình Dương
Lớp: Kĩ Thuật Phần Mềm LT K.1 .Khóa: 2013 – 2014
Khoa: Công Nghệ Thông Tin
Địa chỉ liên hệ: An Hòa – Hòa Lợi – Bến Cát – Bình Dương
Điện thoại: 0945858428 Email: NnguyenCaoHoaiPhuong@gmail.com
II QUÁ TRÌNH HỌC TẬP (kê khai thành tích của sinh viên từ năm thứ 1 đến năm
đang học):
* Năm thứ 1:
Ngành học: Kĩ Thuật Phần Mềm Khoa: Công Nghệ Thông Tin
Kết quả xếp loại học tập: Giỏi
Sơ lược thành tích:
* Năm thứ 2:
Ngành học: Kĩ Thuật Phần Mềm Khoa: Công Nghệ Thông Tin
Kết quả xếp loại học tập: Giỏi
Sơ lược thành tích:
Xác nhận của lãnh đạo khoa
(ký, họ và tên)
Th.S Nguyễn Thị Ánh Tuyết
Bình Dương, Ngày … tháng … năm 2014
Sinh viên chịu trách nhiệm chính
Trang 4DANH SÁCH CÁC KÝ TỰ, CÁC CHỮ VIẾT TẮT VI DANH MỤC CÁC BẢNG VII DANH MỤC CÁC HÌNH VẼ VIII
MỞ ĐẦU 1
1 Tổng quan tình hình nghiên cứu thuộc lĩnh vực đề tài 1
2 Lý do chọn đề tài 1
3 Mục tiêu đề tài 2
4 Phương pháp nghiên cứu 3
5 Đối tượng và phạm vi nghiên cứu 3
6 Bố cục của đề tài 3
CHƯƠNG 1 GIỚI THIỆU KHÁI QUÁT VỀ CÁC MÔ HÌNH PHÂN TÍCH, THIẾT KẾ 4
HỆ THỐNG THÔNG TIN 4
1.1 Khái niệm về hệ thống 4
1.1.1 Định nghĩa hệ thống 4
1.1.2 Khái niệm hệ thống thông tin quản lý 4
1.2 Khái quát tiến trình phát triển hệ thống thông tin 4
1.2.1 Mô hình vòng đời phần mềm 4
1.2.2 Phương pháp phát triển 6
1.2.2.1 Phương pháp hướng cấu trúc 6
1.2.2.2 Phương pháp hướng đối tượng 7
1.2.3 Công cụ hỗ trợ phát triển hệ thống 8
1.2.3.1 Một số mô hình phân tích theo hướng cấu trúc 8
1.2.3.2 Công cụ phát triển hệ thống theo hướng đối tượng Uml (Uniflied modul Language ) 13
1.3 Vai trò của việc phân tích, thiết kế hệ thống 18
1.4 Thực trạng SV khoa CNTT học môn Phân tích thiết kế hệ thống 19 CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ CHỨC NĂNG IN ẤN CỦA HỆ THỐNG QUẢN LÝ HOẠT ĐỘNG KHOA HỌC TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT 22
2.1 Quy trình xây dựng chức năng in ấn 22
2.2 Giới thiệu hệ thống 22
2.2.1 Hoạt động nghiệp vụ 22
2.2.2 Yêu cầu hệ thống 23
2.2.3 Yêu cầu bảo mật 23
2.3 Phân tích hệ thống sử dụng công cụ UML 23
2.3.1 Biểu đồ hoạt động và chuyển trạng thái của hệ thống 23
2.3.2 Biểu đồ use case 24
2.3.3 Biểu đồ lớp 26
2.3.4 Sơ đồ cấu trúc hệ thống 28
2.4 Thiết kế hệ thống sử dụng công cụ UML 29
2.4.1 Biểu đồ cộng tác 29
2.4.2 Biểu đồ triển khai hệ thống 29
2.4.3 Mô hình CSDL 30
Trang 5CHƯƠNG 3 GIAO DIỆN CHỨC NĂNG IN ẤN 31
3.1 Chức năng đăng nhập 31
3.2 Chức năng quản lý người dùng 32
3.3 Chức năng của chủ nhiệm đề xuất nhiệm vụ khoa học 33
3.4 Chức năng của đơn vị 34
3.4.1 Đăng kí lý lịch khoa học 34
3.4.2 Chức năng in lý lịch khoa học 35
3.4.3 Chức năng đăng kí đề xuất nhiệm vụ khoa học 36
3.4.4 Chức năng in đề xuất nhiệm vụ khoa học 36
3.5 Chức năng của Phòng KH&CN 37
3.5.1 Chức năng xem danh sách hội đồng xét duyệt đề cương 37
3.5.2 Chức năng hiển thị hội đồng nghiệm thu 38
3.5.3 Chức năng xem danh sách báo cáo định kì 38
3.5.4 Chức năng thống kê đề xuất nhiệm vụ khoa học theo năm 39
3.5.5 Chức năng thống kê đề xuất nhiệm vụ khoa học theo Đơn vị 40
3.5.5 Chức năng in giấy chứng nhận hoàn thành nhiệm vụ khoa học 40
3.5.6 Cập nhật tình trạng của nhiệm vụ khoa học 41
3.5.7 Đăng công văn thông báo 41
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 44
TÀI LIỆU KHAM THẢO 46
Trang 6DANH SÁCH CÁC KÝ TỰ, CÁC CHỮ VIẾT TẮT
For Standardization
Trang 7DANH MỤC CÁC BẢNG
Bảng 1 – 1 Những thành phần biểu diễn mô hình luồng dữ liệu 10
Bảng 1 – 2 Các phần tử mô hình trong biểu đồ use case 13
Bảng 1 – 3 Các kiểu lớp trong UML 14
Bảng 1 – 4 Tóm tắt các phần tử mô hình UML trong biểu đồ lớp 14
Bảng 1 – 5 Các dạng message trong biểu đồ tuần tự 15
Bảng 1 – 6 Các phần tử mô hình UML trong biểu đồ trạng thái 16
Bảng 1 – 7 Các phần tử của biểu đồ hoạt động 16
Bảng 1 – 8 Các ký hiệu của biểu đồ thành phần 17
Bảng 1 – 9 Các ký hiệu của biểu đồ triển khai hệ thống 18
Bảng 1 – 10 Thống kê kết quả điểm thi kết thúc học phần 19
Bảng 1 – 11 Thống kê kết quả điểm thi kết thúc học phần 19
Trang 8DANH MỤC CÁC HÌNH VẼ
Hình 1 – 1 Mô hình phát triển phần mềm Scrum (agile) 5
Hình 1 – 2 Sơ đồ phân cấp chức năng của hệ thống in ấn 9
Hình 1 – 3 Sơ đồ nhiều mức của DFD 12
Hình 1 – 4 Quy tắc vẽ DFD (cột bên phải là vẽ đúng) 12
Hình 1 – 5 Biểu đồ biểu diễn kết quả điểm học phần PTTKHT 20
Hình 2 – 1 Quy trình xây dựng chức năng in ấn 22
Hình 2 – 2 Biểu đồ hoạt động và chuyển trạng thái của hệ thống 24
Hình 2 – 3 Biểu đồ use case thể hiện hoạt động của tác nhân phòng khoa học công nghệ 25
Hình 2 – 4 Biểu đồ use case thể hiện hoạt động của tác nhân Đơn vị 26
Hình 2 – 5 Biểu đồ use case thể hiện hoạt động của tác nhân người thực hiện nghiên cứu 26
Hình 2 – 6 Biểu đồ lớp người dùng và quyền truy cập 26
Hình 2 – 7 Biểu đồ lớp đăng kí và thay đổi lý lịch khoa học của người thực hiện 27 Hình 2 – 8 Biểu đồ lớp đăng kí và thay đổi đề tài nghiên cứu 28
Hình 2 – 9 Sơ đồ cấu trúc của hệ thống 29
Hình 2 – 10 Biểu đồ cộng tác miêu tả chức năng báo cáo danh sách đề tài 29
Hình 2 – 11 Biểu đồ cộng tác miêu tả chức năng báo cáo danh sách người thực hiện 29
Hình 2 – 12 Mô hình triển khai hệ thống 30
Hình 2 – 13 Mô hình CSDL 30
Hình 3 – 1 Giao diện đăng nhập của chương trình Quản lý hồ sơ 31
Hình 3 – 2 Giao diện của người dùng chưa được cấp quyền 32
Hình 3 – 3 Giao diện của người dùng để thay đổi mật khẩu 32
Hình 3 – 4 Màn hình chính của người dùng đã được cấp quyền Admin 32 Hình 3 – 5 Menu các chức năng quản lý người dùng 33
Hình 3 – 6 Chức năng thêm người dùng mới 33
Hình 3 – 7 Danh sách người dùng hệ thống 33
Hình 3 – 8 Giao diện danh sách nhiệm vụ nghiên cứu hiển thị theo Đơn vị 34
Hình 3 – 9 Giao diện chức năng nhập thông tin báo cáo định kì 34
Hình 3 – 10 Giao diện đăng kí lý lịch khoa học của người thực hiện 35
Hình 3 – 11 Giao diện danh sách người sử dụng 35
Hình 3 – 12 Giao diện chức năng in lý lịch khoa học 36
Hình 3 – 13 Giao diện đăng kí đề xuất nhiệm vụ khoa học 36
Hình 3 – 14 Giao diện danh sách nhiệm vụ nghiên cứu 37
Hình 3 – 15 Giao diện chức năng in đề xuất nhiệm vụ khoa học 37
Hình 3 – 16 Giao diện danh sách nhiệm vụ nghiên cứu 38
Trang 9Hình 3 – 17 Giao diện load Quyết định thành lập hội đồng xét duyệt đề cương 38 Hình 3 – 18 Giao diện danh sách nhiệm vụ nghiên cứu 38 Hình 3 – 19 Giao diện nhập load Quyết định thành lập hội đồng đánh giá nghiệm thu 38 Hình 3 – 20 Giao diện danh sách báo cáo định kì của nghười thực hiện.39 Hình 3 – 21 Giao diện in báo cáo định kì 39 Hình 3 – 22 Thống kê đề xuất nghiên cứu theo năm 39 Hình 3 – 23 Giao diện khi in thống kê đề xuất nhiệm vụ khoa học theo năm 40 Hình 3 – 24 Thống kê đề xuất nhiệm vụ khoa học theo Đơn vị 40 Hình 3 – 25 Giao diện khi in thống kê đề xuất nhiệm vụ khoa học theo năm 40 Hình 3 – 26 Giao diện giấy chứng nhận hoàn thành nhiệm vụ khoa học 41 Hình 3 – 27 Giao diện cập nhật tình trạng của đề tài 41 Hình 3 – 28 Giao diện đăng công văn thông báo 42 Hình 3 – 29 Giao diện quản lý công văn – thông báo 42 Hình 5 – 30 Giao diện dành cho khách cần đọc công văn – thông báo 43 Hình 5 – 31 Giao diện hiện chi tiết công văn thông báo 43
Trang 10MỞ ĐẦU
1 Tổng quan tình hình nghiên cứu thuộc lĩnh vực đề tài
CNTT là một trong những ngành phát triển nhanh hiện nay, cùng với một sốngành công nghệ cao khác đang làm biến đổi cơ bản đời sống kinh tế, văn hoá, xã hộicủa thế giới hiện đại
Ứng dụng và phát triển CNTT nhằm góp phần giải quyết một phần công việccủa con người, phát triển nhanh và hiện đại hoá các ngành kinh tế, tăng cường nănglực cạnh tranh của các doanh nghiệp, hỗ trợ có hiệu quả cho quá trình chủ động hộinhập kinh tế quốc tế, nâng cao chất lượng cuộc sống, đảm bảo an ninh, quốc phòng vàtạo khả năng thực hiện sự nghiệp công nghiệp hoá, hiện đại hoá
Hiện nay, đã có các phần mềm ứng dụng vào công tác Quản lý KH&CN như:
- iSTM được thiết kế bởi Công ty Cổ phần Phần mềm S.D.T nhằm hỗ trợ công tácQuản lý KH&CN của các sở KHCN tại các tỉnh/thành và các trường Đại học với cáctính năng: Quản lý đề xuất; Quản lý thuyết minh; Quản lý thực hiện; Phân bổ kinhphí; Báo cáo hoạt động nghiên cứu; Quản lý tổ chức - nhân sự; Quản lý Hội đồng vàcác tính năng Quản lý hệ thống khác
- Phần mềm Quản lý NCKH của Công ty TNHH phần mềm Hoàng Hà có các tínhnăng: Từ đề xuất, giải trình thông tin, xét duyệt đến quá trình nghiệm thu; Quản lýthông tin lý lịch khoa học cán bộ nghiên cứu; Tìm kiếm thông tin nhanh gọn chínhxác, hỗ trợ lập báo cáo nhanh theo yêu cầu; Hỗ trợ in ấn, báo cáo các mẫu biểu; Phânquyền, phân cấp tới từng chức năng của chương trình
- Phần mềm quản lý đề tài, dự án của Trung tâm Thông tin công nghệ Thái Nguyên đãtừng bước tin học hoá các hoạt động Quản lý khoa học như: Quản lý danh mục đề tài
dự án đã và đang triển khai theo từng năm, từng lĩnh vực; Quản lý các nguồn kinh phíthực hiện; Quản lý tiến độ thực hiện; Tiến độ cấp kinh phí và đánh giá kết quả; Quản
lý gói hồ sơ liên quan đến từng đề tài dự án; Báo cáo tổng kết KHCN hàng năm, 5năm; Kết xuất các báo cáo thông kê tháng, quý, năm, giai đoạn, tiến trình xử lý côngviệc; Hỗ trợ tra cứu đề tài dự án theo nhiều tiêu chí
Các phần mềm trên đều là những hệ thống thông tin quản lý Để một phầnmềm hoạt động ổn định thì việc phân tích thiết kế hệ thống đóng vai trò rất quan trọng
2 Lý do chọn đề tài
Quy trình phát triển phần mềm gồm các bước tổng quát sau: thu thập yêu cầu,phân tích thiết kế, lập trình và kiểm thử Trong đó, giai đoạn phân tích thiết kế đượcchia làm hai giai đoạn:
Trang 11- Phân tích thiết kế tổng thể: giao đoạn này thiết kế tổng thể của sản phẩm Giai đoạnnày tập trung vào thiết kế chức năng, thuộc tính chất lượng và các ràng buộc.
- Phân tích thiết kế chi tiết: sử dụng ngôn ngữ, giải thuật, cấu trúc dữ liệu, công cụtest… để thực thi những gì được thiết kế trên giai đoạn phân tích thiết kế tổng thể.Chính vì thế, giai đoạn phân tích thiết kế có vai trò quan trọng nhất trong toànquy trình phát triển phần mềm vì đây giai đoạn thể hiện toàn bộ các chức năng, cấutrúc và một sản phẩm phần mềm như thật chỉ còn đợi trải qua các pha tiếp theo Do dó,
SV học các chuyên ngành CNTT cần nhận thức rõ môn Phân tích thiết kế hệ thống làrất quan trọng và cần thiết để học tốt các môn học tiếp theo, cũng như thực hiện tốt Đồ
án chuyên ngành, khóa luận tốt nghiệp
Mặt khác, SV học môn học này gặp những khó khăn như:
- Thứ nhất, về giáo trình, tài liệu liên quan đến môn Phân tích thiết kế hệ thống đượcviết bằng ngôn ngữ tiếng Anh Do dó, mất nhiều thời gian để đọc hiểu nên khó có đủthời gian để đáp ứng được yêu cầu môn học với 2 tín chỉ
- Thứ hai, bài giảng bằng tiếng việt của giảng viên thường diễn tả khái quát các vấn
đề của bài học nên SV cần có một tài liệu để tham khảo
- Thứ ba, từ yêu cầu của bài toán thì SV không thể chuyển các yêu cầu nghiệp vụ đósang các chức năng cụ thể khi làm đồ án chuyên ngành do không nắm được cácphương pháp phân tích và cách sử dụng các công cụ phát triển hệ thống nên gặp rấtnhiều khó khăn và lúng túng không biết bắt đầu như thế nào
Chính vì vậy, mà em chọn đề tài “Nghiên cứu ứng dụng phân tích, thiết kế hệthống thông tin quản lý” để có được tài liệu tham khảo hỗ trợ cho SV chuyên ngànhCNTT trường TDMU khi học môn học này nhằm nâng cao kỹ năng phân tích, thiết kếkhi xây dựng một phần mềm
Báo cáo gồm các chương:
- Chương 1: Giới thiệu khái quát về các mô hình phân tích, thiết kế hệ thống thôngtin
- Chương 2: Phân tích thiết kế chức năng in ấn của hệ thống Quản lý hoạt động khoahọc trường TDMU
- Chương 3: Giao diện chức năng in ấn
3 Mục tiêu đề tài
- Nghiên cứu các phương pháp và vai trò của phân tích, thiết kế hệ thống thông tin
quản lý
- Ứng dụng vào chức năng: in ấn, kết xuất dữ liệu trong hệ thống quản lý hồ sơ
KH&CN trường TDMU
Trang 12- Cung cấp tài liệu tham khảo cho SV học các học phần: Phân tích, thiết kế hệ thống và
Đồ án môn học
4 Phương pháp nghiên cứu
- Phương pháp nghiên cứu tài liệu: Nghiên cứu lý thuyết mô hình phân tích, thiết kếhướng cấu trúc và mô hình phân tích thiết kế theo hướng đối tượng
- Phương pháp khảo sát và điều tra: Lấy ý kiến của cán bộ, chuyên viên phòng KH &CN
- Phương pháp thực nghiệm: Thiết kế, lập trình và demo chức năng in ấn, kết xuất dữliệu
5 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu:
+ Các phương pháp phân tích, thiết kế hệ thống thông tin
+ Công nghệ Dotnet (ASP.NET) để thiết kế giao diện, lập trình các chức năng
+ Yêu cầu nghiệp vụ về chức năng in ấn, kết xuất dữ liệu của công tác Quản lý hồ sơKH&CN tại trường TDMU
- Phạm vi nghiên cứu: Tìm hiểu một số phương pháp phân tích, thiết kế hệ thống.
Chọn mô hình phân tích, thiết kế hệ thống thông tin quản lý và lý do chọn; Xây dựngchức năng in và kết xuất dữ liệu; Thử nghiệm tại phòng KHCN trường TDMU
Trang 131.1.2 Khái niệm hệ thống thông tin quản lý
Hệ thống thông tin quản lý: Bao gồm các hệ thống thông tin hỗ trợ các hoạt động nghiệp vụ và quản lý của các doanh nghiệp, các tổ chức Ví dụ: các hệ thốngquản lý nhân sự, hệ thống kế toán, hệ thống tính cước và chăm sóc khách hàng, hệthống quản lý thư viện, hệ thống đào tạo trực tuyến
1.2 Khái quát tiến trình phát triển hệ thống thông tin
Tiến trình phần mềm là phương cách sản xuất ra phần mềm với các thành phầnchủ yếu bao gồm: mô hình vòng đời phát triển phần mềm, phương pháp phân tích,thiết kế, các công cụ hỗ trợ cho phát triển phần mềm và những người trong nhóm pháttriển phần mềm
Như vậy, tiến trình phát triển phần mềm nói chung là sự kết hợp cả hai khíacạnh kỹ thuật (vòng đời phát triển, phương pháp phát triển, các công cụ và ngôn ngữ
sử dụng…) và khía cạnh quản lý (quản lý dự án phần mềm)
1.2.1 Mô hình vòng đời phần mềm
Mô hình vòng đời phần mềm (hay quy trình phát triển phần mềm) là các bướcphát triển một sản phẩm phần mềm cụ thể Một vòng đời phát triển phần mềm thường
có các pha cơ bản sau:
- Pha xác định yêu cầu: Khám phá các khái niệm liên quan đến việc phát triển phần
mềm, xác định chính xác yêu cầu và các ràng buộc của khách hàng với sản phẩm phầnmềm đó
- Pha phân tích: Mô tả chức năng của sản phẩm, các input của sản phẩm và các
output được yêu cầu; khám phá các khái niệm trong miền quan tâm của sản phẩm vàbước đầu đưa ra giải pháp xây dựng hệ thống
- Pha thiết kế: Xác định cụ thể phần mềm sẽ được xây dựng như thế nào Pha thiết kế
bao gồm hai mức là thiết kế kiến trúc và thiết kế chi tiết
- Pha cài đặt tích hợp: Cài đặt chi tiết và tích hợp hệ thống phần mềm dựa trên kết
quả của pha thiết kế
- Pha bảo trì: Tiến hành sửa chữa phần mềm khi có các thay đổi Đây là pha rất quan
trọng, tiêu tốn nhiều thời gian và chi phí nhất trong tiến trình phát triển phần mềm
- Pha loại bỏ: thực hiện loại bỏ phần mềm hoặc thay thế phần mềm bởi một phần
mềm hoàn toàn mới
Để hiểu rõ mô hình vòng đời phần mềm ta xem mô hình Scrum (agile) một môhình phổ biến hiện nay:
Trang 14Hình 1 – 1 Mô hình phát triển phần mềm Scrum (agile)
Đó là một quy trình phát triển phần mềm theo mô hình linh hoạt (agile) Côngnghệ Agile cung cấp rất nhiều phương pháp luận, quy trình và các thực nghiệm để choviệc phát triển phần mềm trở nên nhanh chóng và dễ dàng Hiện nay tại Việt Nam, quytrình này đang được thử nghiệm tại các đội ngũ phát triển phần mềm của một số công
ty lớn.Scrum theo mô hình vòng đời phát triển phần mềm
Scrum chia dự án thành các vòng lặp phát triển gọi là các sprint Mỗi sprintthường mất 2- 4 tuần (30 ngày) để hoàn thành Nó rất phù hợp cho những dự án cónhiều sự thay đổi và yêu cầu tốc độ cao
Một sprint hoàn thành một số chức năng, mục đích nào đó trong toàn bộ hệthống Các tác vụ trong sprint được chia ra thành các danh mục, đội làm việc sẽ pháttriển và đánh giá lại sao cho đạt được mục đích ban đầu trong khoảng thời gian đề ra
Thành phần chính quan trọng của scrum là các role (vai trò) và các cuộc traođổi đánh giá Có các role chính là:
Product Owner: Là người làm những công việc bắt đầu cho dự án, tạo ra các yêucầu trong quá trình phát triển dự án Phân tích mục tiêu, giải phóng các kế hoạch
Scrum Master: Họ phải đảm bảo các sprint được hoàn thành đúng mục đích, bảo vệđội làm việc và loại bỏ các trở ngại
Đội làm việc ở scrum: Thường từ 5-9 người, tùy theo quy mô dự án nó có thể có rấtnhiều đội, nhiều người tham gia Sẽ không có những lập trình viên (programmer),người thiết kế (designer), kiểm thử viên (tester),… thường thấy ở các dự án phần mềmtruyền thống Các đội làm việc sẽ tiến hành cài đặt các chức năng được mô tả trongbản yêu cầu Họ tự quản lý, tổ chức và điều chỉnh đội làm việc của mình sao cho hiệuquả lớn nhất Tất cả các thành viên có ảnh hưởng như nhau đến sự thành công hoặcthất bại của toàn bộ hệ thống hoặc các hệ thống nhỏ hơn trong đó
Trang 15Có 2 pha là lập kế hoạch và kết thúc sẽ xác định các tiến trình cần thiết gồm các
dữ liệu đầu vào, đầu ra thật đầy đủ Có một số vòng lặp phát triển trong pha kế hoạch
Kế hoạch lập ra ban đầu chỉ là tương đối và sẽ có sự điều chỉnh [5]
Ưu điểm của mô hình Scrum:
Nó rất phù hợp cho những dự án có nhiều sự thay đổi và yêu cầu tốc độ cao
Dự án không được cố định từ đầu về thời gian hoàn thành hay những yêu cầu mà nó
sẽ được xác định khi phát triển thực tế
Khả năng trao đổi giữa khách hàng và nhà phát triển, giữa những thành viên trongđội được đặt lên mức cao do sau mỗi vòng lặp phát triển thì tiến hành tổng kết côngviệc thực hiện của các thành viên
Chất lượng sản phẩm tốt và giảm rủi ro sản xuất, chi phí thấp
Tốc độ phát triển nhanh, tiết kiệm thời gian Việc chuẩn bị hành động cho nhữngthay đổi trong quá trình phát triển tốt hơn vì hầu như hàng ngày luôn có những buổihọp đánh giá lại ở những vòng lặp phát triển
Các bugs (lỗi) và các vấn đề được phát hiện sớm
Nhược điểm của mô hình Scrum:
Đôi khi nhóm hoạt động không ổn định do các lý do khách quan hay chủ quan từcác thành viên khiến cho tốc độ làm việc của nhóm chậm lại mà dự án dự kiến hoànthành trong vài tháng hoặc vài năm ví dụ như: bệnh, thôi việc…
Với các thành viên có kinh nghiệm thì xuyên chéo các chức năng
1.2.2 Phương pháp phát triển
1.2.2.1 Phương pháp hướng cấu trúc
Đặc trưng của phương pháp hướng cấu trúc là phân chia chương trình chínhthành nhiều chương trình con, mỗi chương trình con nhằm đến thực hiện một côngviệc xác định
Trong phương pháp hướng cấu trúc, phần mềm được thiết kế dựa trên một tronghai hướng: hướng dữ liệu và hướng hành động
- Cách tiếp cận hướng dữ liệu xây dựng phần mềm dựa trên việc phân rã phần mềmtheo các chức năng cần đáp ứng và dữ liệu cho các chức năng đó Cách tiếp cận hướng
dữ liệu sẽ giúp cho những người phát triển hệ thống dễ dàng xây dựng ngân hang dữliệu
- Cách tiếp cận hướng hành động lại tập trung phân tích hệ phần mềm dựa trên cáchoạt động thực thi các chức năng của phần mềm đó
Cách thức thực hiện của phương pháp hướng cấu trúc là phương pháp thiết kế
từ trên xuống (top-down) Phương pháp này tiến hành phân rã bài toán thành các bài
Trang 16toán nhỏ hơn, rồi tiếp tục phân rã các bài toán con cho đến khi nhận được các bài toán
có thể cài đặt được ngay sử dụng các hàm của ngôn ngữ lập trình hướng cấu trúc
Phương pháp hướng cấu trúc có ưu điểm là tư duy phân tích thiết kế rõ ràng,chương trình sáng sủa, dễ hiểu Tuy nhiên, phương pháp này có một số nhược điểmsau:
- Không hỗ trợ việc sử dụng lại Các chương trình hướng cấu trúc phụ thuộc chặt chẽvào cấu trúc dữ liệu và bài toán cụ thể, do đó không thể dùng lại một modul nào đótrong phần mềm này cho phần mềm mới với các yêu cầu về dữ liệu khác
- Không phù hợp cho phát triển các phần mềm lớn Nếu hệ thống thông tin lớn, việcphân ra thành các bài toán con cũng như phân các bài toán con thành các modul vàquản lý mối quan hệ giữa các modul đó sẽ là không phải là dễ dàng và dễ gây ra cáclỗi trong phân tích và thiết kế hệ thống, cũng như khó kiểm thử và bảo trì
1.2.2.2 Phương pháp hướng đối tượng
Cách tiếp cận hướng đối tượng là một lối tư duy theo cách ánh xạ các thànhphần trong bài toán vào các đối tượng ngoài đời thực Với cách tiếp cận này, một hệthống được chia tương ứng thành các thành phần nhỏ gọi là các đối tượng, mỗi đốitượng bao gồm đầy đủ cả dữ liệu và hành động liên quan đến đối tượng đó
Các đối tượng trong một hệ thống tương đối độc lập với nhau và phần mềm sẽđược xây dựng bằng cách kết hợp các đối tượng đó lại với nhau thông qua các mốiquan hệ và tương tác giữa chúng Các nguyên tắc cơ bản của phương pháp hướng đốitượng bao gồm:
- Trừu tượng hóa (abstraction): các thực thể phần mềm được mô hình hóa dưới dạng
các đối tượng Các đối tượng này được trừu tượng hóa ở mức cao hơn dựa trên thuộctính và phương thức mô tả đối tượng để tạo thành các lớp Các lớp cũng sẽ được trừutượng hóa ở mức cao hơn nữa để tạo thành một sơ đồ các lớp được kế thừa lẫn nhau.Hoặc có thể tồn tại những lớp không có đối tượng tương ứng, gọi là lớp trừu tượng.Như vậy, nguyên tắc cơ bản để xây dựng các khái niệm trong hướng đối tượng là sựtrừu tượng hóa theo các mức độ khác nhau
- Tính đóng gói (encapsulation) và ẩn dấu thông tin: các đối tượng có thể có những
phương thức hoặc thuộc tính riêng (kiểu private) mà các đối tượng khác không thể sửdụng được Dựa trên nguyên tắc ẩn giấu thông tin này, cài đặt của các đối tượng sẽhoàn toàn độc lập với các đối tượng khác, các lớp độc lập với nhau và cao hơn nữa làcài đặt của hệ thống hoàn toàn độc lập với người sử dụng cũng như các hệ thống khác
sử dụng kết quả của nó
- Tính modul hóa (modularity): các bài toán sẽ được phân chia thành những vấn đề
nhỏ hơn, đơn giản và quản lý được
Trang 17- Tính phân cấp (hierarchy): cấu trúc chung của một hệ thống hướng đối tượng là
dạng phân cấp theo các mức độ trừu tượng từ cao đến thấp
Ưu điểm nổi bật của phương pháp hướng đối tượng là đã giải quyết được cácvấn đề nảy sinh với phương pháp hướng cấu trúc, cụ thể:
- Hỗ trợ sử dụng lại mã nguồn: Chương trình lập trình thường được chia thành các
gói là các nhóm của các lớp đối tượng khác nhau Các gói này hoạt động tương đốiđộc lập và hoàn toàn có thể sử dụng lại trong các hệ thống thông tin tương tự
- Phù hợp với các hệ thống lớn: Phương pháp này không chia bài toán thành các bài
toán nhỏ mà tập trung vào việc xác định các đối tượng, dữ liệu và hành động gắn vớiđối tượng và mối quan hệ giữa các đối tượng Các đối tượng hoạt động độc lập và chỉthực hiện hành động khi nhận được yêu cầu từ các đối tượng khác Vì vậy, phươngpháp này hỗ trợ phân tích, thiết kế và quản lý một hệ thống lớn, có thể mô tả các hoạtđộng nghiệp vụ phức tạp bởi quá trình phân tích thiết kế không phụ thuộc vào số biến
dữ liệu hay số lượng thao tác cần thực hiện mà chỉ quan tâm đến các đối tượng tồn tạitrong hệ thống đó
1.2.3 Công cụ hỗ trợ phát triển hệ thống
1.2.3.1 Một số mô hình phân tích theo hướng cấu trúc
* Mô hình phân rã chức năng
BFD (business functional diagram) mô hình phân rã chức năng là sơ đồ hìnhhọc dùng để mô tả sự phân rã có thứ bậc các chức năng của hệ thống từ tổng thể đếnchi tiết Mỗi nút trong biểu đồ là một chức năng, các chức năng có quan hệ bao hàmvới nhau
Dựa trên một số tính chất sau:
- Tính thực chất của mỗi chức năng: mỗi chức năng được phân rã từ một chức năng ởmức trên phải là một bộ phận thật sự tham gia thực hiện chức năng phân rã ra nó
- Tính đầy đủ của mỗi chức năng: Phải đảm bảo thực hiện được chức năng mức trên
đã phân rã ra chúng
- Bố trí, sắp xếp các chức năng: Mộ hệ thống nhỏ thông thường có 3 mức Mỗi chứcnăng con nên đặt trên cùng một hàng
- Ký hiệu: chức năng được ký hiệu bằng hình chữ nhật bên trong có tên chức năng
- Đặt tên cho các chức năng: Mỗi chức năng nên có một tên riêng nhưng phải thểhiện bao quát chức năng con
- Mô tả chi tiết chức năng lá: Các chức năng cuối cùng của một BFD là chức năng lá.Các chức năng này thực hiện trực tiếp công việc của hệ thống
Trang 18Hình 1 – 2 Sơ đồ phân cấp chức năng của hệ thống in ấn
* Mô hình luồng dữ liệu
DFD (Data flow diagram) Biểu đồ luồng dữ liệu là một sơ đồ hình học nhằmdiễn tả các luồng tài liệu thông qua các chức năng của hệ thống
Những hỗ trợ của mô hình luồng dữ liệu:
- Xác định yêu cầu của người dùng
- Lập kế hoạch và minh họa những phương án cho người phân tích và người dùngxem xét
- Trao đổi giữa người phân tích và người dùng trong hệ thống
- Làm các tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống
Bảng 1 – 1 Những thành phần biểu diễn mô hình luồng dữ liệu
Quá trình
Thực thể
Kho dữ liệu Tên khodữ liệu Tên kho dữliệu
Dòng dữ liệu
- Luồng dữ liệu (Data Flow):
+ Mô tả dữ liệu di chuyển từ một vị trí này đến một vị trí khác
+ Một luồng dữ liệu được mô tả bởi mũi tên với tên dữ liệu kèm theo, chiều mũi tênchỉ hướng di chuyển của dữ liệu
+ Tên của luồng dữ liệu thể hiện trạng thái logic của thông tin chứ không phải dạngvật lý của nó
1
Mô tả quá trình
Dữ liệu
Mô tả quátrình
Mô tả quátrình
Tên thực thểtrong/ngoài Tên thực thểtrong/ngoài Tên thực thểtrong/ngoài
Trang 19- Kho dữ liệu (Data Store):
+ Là nơi dữ liệu được lưu trữ trong hệ thống
+ Về mặt vật lý, kho dữ liệu là các tập tin dữ liệu trong máy tính hoặc những tập tàiliệu lưu trữ văn phòng
+ Biểu diễn các dữ liệu lưu trữ ở nhiều vị trí, không gian khác nhau
+ Kho dữ liệu là các dữ liệu được lưu giữ nên mang tên nó, người ta thường lấy têncủa vật mang nó làm tên của dữ liệu
- Tiến trình (Process) - Chức năng: Là một công việc hoặc một hành động có tácđộng lên dữ liệu làm cho chúng di chuyển, thay đổi hoặc phân phối
- Tác nhân ngoài (extenal entity):
+ Là một cá nhân hoặc một tổ chức ở bên ngoài lĩnh vực nghiên cứu của hệ thống mà
có tác động đến hệ thống
+ Có thể hiểu tác nhân ngoài là điểm công tác ngoài
- Tác nhân trong (intenal entity):
+ Là nơi thu nhận, phát sinh, lưu trữ và xử lý thông tin
+ Có thể hiểu tác nhân trong là điểm công tác trong
- Căn cứ vào việc phân rã chức năng của một BFD, chúng ta có thể mô tả một DFDtheo nhiều mức khác nhau:
+ Mức 0 (mức bối cảnh): chỉ gồm một DFD, trong đó có một chức năng duy nhất còngọi là chức năng tổng quát của hệ thống, trao đổi các luồng thông tin với các tác nhânngoài
+ Mức 1 (mức đỉnh): Cũng chỉ gồm một DFD, và các mức 2, 3, 4…
- Mỗi mức được gồm nhiều DFD được thành lập như sau: Cứ mỗi chức năng ở trên,
ta thành lập một DFD ở mức dưới, gọi là biểu diễn ở mức con Các chức năng củaDFD này được xây dựng như sau:
+ Phân rã chức năng đó thành nhiều chức năng con
+ Vẽ lại các luồng dữ liệu vào ra chức năng trên
+ Nghiên cứu các quan hệ về dữ liệu giữa các chức năng con, nhờ đó bổ sung cácluồng dữ liệu nội bộ hoặc kho dữ liệu nội bộ
Lưu ý: Các chức năng được đánh số theo ký pháp dấu (.) để tiện triển khai từ trên
xuống
- Có thể dựa vào các bước sau đây để xây dựng một DFD:
+ B1: Vẽ biểu đồ chức năng nghiệp vụ BFD của hệ thống
+ B2: Liệt kê tất cả các tập thực thể được sử dụng trong hệ thống
+ B3: Vẽ biểu đồ luồng dữ liệu DFD ở các mức, bắt đầu từ mức 0, 1, 2… Với mỗitiến trình của mỗi biểu đồ vừa nhận được ở mức n-1 thì vẽ DFD tương ứng, DFD này
có các DFD con là các chức năng lấy từ BFD có cấp tương ứng Đối với mỗi DFD concần xác định: Các luồng dữ liệu đi vào và đi ra từ nó, các nguồn và đích tương ứng (tác
Trang 20nhân, kho dữ liệu, tiến trình con) Đối với mỗi biểu đồ luồng dữ liệu thì vẽ từ trái sangphải.
Hình 1 – 3 Sơ đồ nhiều mức của DFD
- Mọi DFD phải bắt đầu và/hoặc kết thúc từ một quá trình Trong hình vẽ dưới đây,cột bên trái là vẽ sai vì vi phạm quy tắc, cột bên phải là vẽ đúng quy tắc
Hình 1 – 4 Quy tắc vẽ DFD (cột bên phải là vẽ đúng)
- Hạn chế của mô hình luồng dữ liệu:
321
322323
324
Trang 21+ Không chỉ ra được yếu tố thời gian (Ví dụ:Thông tin chuyển từ tiến trình này sangtiến trình khác hết bao nhiêu thời gian)
+ Không xác định được trật tự thực hiện các chức năng
+ Không chỉ ra được yếu tố định lượng đối với dữ liệu có liên quan (tối đa và tối thiểunhững thông tin là cơ bản trong quá trình phân tích)
1.2.3.2 Công cụ phát triển hệ thống theo hướng đối tượng Uml (Uniflied modul Language )
UML là ngôn ngữ mô hình hóa tổng quát được xây dựng để đặc tả, phát triển vàviết tài liệu cho các khía cạnh trong phát triển phần mềm hướng đối tượng UML giúpngười phát triển hiểu rõ và ra quyết định liên quan đến phần mềm cần xây dựng UMLbao gồm một tập các khái niệm, các kí hiệu, các biểu đồ và hướng dẫn
Các biểu đồ UML:
- Biểu đồ Use Case
Biểu diễn chức năng của hệ thống Từ tập yêu cầu của hệ thống, biểu đồ usecase sẽ phải chỉ ra hệ thống cần thực hiện điều gì để thỏa mãn các yêu cầu của ngườidùng hệ thống đó Đi kèm với biểu đồ use case là các kịch bản (scenario) Có thể nói,biểu đồ use case chỉ ra sự tương tác giữa các tác nhân và hệ thống thông qua các usecase
Sau khi xác định các actor và use case thì các quan hệ sẽ được thiết lập để hoànchỉnh lược đồ Use-case:
- Giữa use case và actor thường có quan hệ liên kết: use case nào được actor nào kíchhoạt
- Giữa các use-case cũng có quan hệ liên kết hoặc tổng quát hoá
Bảng 1 – 2 Các phần tử mô hình trong biểu đồ use case
Use case Biễu diễn một chức
năng xác định của hệthống
Hình elip chứa têncủa use case
Tác nhân Là một đối tượng bên
ngoài hệ thống tươngtác trực tiếp với cácuse case
Biểu diễn bởi mộtlớp kiểu actor (hìnhngười tượng trưng)Mối quan hệ giữa Tùy từng dạng quan Extend và include có
Trang 22nétGeneralization códạng mũi tên tamgiác
Biên của hệ thống Tách biệt phần bên
trong và phần bênngoài hệ thống
Được biểu diễn bởimột hình chữ nhậtrỗng
- Biểu đồ đối tượng (Object diagram)
Biểu đồ đối tượng bao gồm một tập hợp các đối tượng và mối quan hệ giữachúng Đối tượng là một thể hiện của lớp, biểu đồ đối tượng là một thể hiện của biều
đồ lớp
- Biểu đồ lớp (Class diagram)
Trong phương pháp hướng đối tượng, một nhóm đối tượng có chung một sốthuộc tính và phương thức tạo thành một lớp Mối tương tác giữa các đối tượng trong
hệ thống sẽ được biểu diễn thông qua mối quan hệ giữa các lớp
- Các kiểu lớp trong UML: UML định nghĩa một số kiểu lớp đặc biệt dựa trên vai tròcủa nó trong biểu đồ lớp:
Bảng 1 – 3 Các kiểu lớp trong UML
1 Lớp thực thể Lớp đại diện cho các thực thể chức thông tin về các đối tượng
3 Lớp điều khiển Thực hiện các chức năng điều khiển hoạt động của hệ thống
ứng với các chức năng cụ thể nào đó với một nhóm các lớp biên hoặc lớp thực thể xác định.
- Tổng kết các phần tử mô hình UML được sử dụng trong mô hình lớp, ý nghĩa và kíhiệu tương ứng trong các biểu đồ
Bảng 1 – 4 Tóm tắt các phần tử mô hình UML trong biểu đồ lớp
Phần tử mô
hình
Ý nghĩa Cách biểu diễn Kí hiệu trong biểu đồ
Lớp (class) Biểu diễn tên lớp, các thuộc
tính và phương thức của lớp đó
Một hình chữ nhật gồm
3 phần tách biệt
Tên lớp Các thuộc tính Các phương thức Quan hệ kiểu
kết hợp
Biểu diễn quan hệ giữa hai lớp độc lập, có liên quan đến nhau.
Một đường kẻ liền nét (có tên xác định) nối giữa hai lớp
Trang 23Quan hệ gộp Biểu diễn quan hệ kiểu bộ phận
– tổng thể
Đường kẻ liền nét có hình thoi ở đầu
Mũi tên nét dứt
- Biểu đồ tuần tự (Sequence diagram)
Là một dạng biểu đồ tương tác (interaction), biểu diễn sự tương tác giữa các đốitượng theo thứ tự thời gian Nó mô tả các đối tượng liên quan trong một tình huống cụthể và các bước tuần tự trong việc trao đổi các thông báo (message) giữa các đối tượng
đó để thực hiện một chức năng nào đó của hệ thống
Bảng 1 – 5 Các dạng message trong biểu đồ tuần tự
St
t
1 Gọi (call) Mô tả một lời gọi từ đối tượng này
đến đối tượng kia
2 Trả về (return) Trả về giá trị ứng với lời gọi
3 Gửi (send) Gửi một tín hiệu tới một đối tượng
4 Tạo (create) Tạo một đối tượng
5 Hủy (destroy) Hủy một đối tượng
- Biểu đồ cộng tác (Colliboration)
Gần giống như biểu đồ Sequence, biểu đồ Collaboration là một cách khác đểthể hiện một tình huống có thể xảy ra trong hệ thống Nhưng nó tập trung vào việc thểhiện việc trao đổi qua lại các thông báo giữa các đối tượng chứ không quan tâm đếnthứ tự của các thông báo đó Có nghĩa là qua đó chúng ta sẽ biết được nhanh chónggiữa 2 đối tượng cụ thể nào đó có trao đổi những thông báo gì cho nhau
- Biểu đồ trạng thái (Statechart)
Biểu đồ trạng thái được sử dụng để biểu diễn các trạng thái và sự chuyển tiếpgiữa các trạng thái của các đối tượng trong một lớp xác định Nó đặc biệt quan trọngtrong việc mô hình hóa hành vi của một lớp giao diện và nó nhấn mạnh vào các đápứng theo sự kiện của một đối tượng, điều này rất hữu ích khi mô hình hóa một hệthống phản ứng
Trang 24Bảng 1 – 6 Các phần tử mô hình UML trong biểu đồ trạng thái
Phần tử
mô hình
biểu đồ
Trạng thái Biểu diễn một trạng
thái của đối tượngtrong vòng đời củađối tượng đó
Hình chữ nhật vòng ởgóc, gồm 3 phần: tên, cácbiến, và các hoạt động
Mũi tên liền nét với mũitên gọi là biểu diễn củachuyển tiếp đó
- Biểu đồ hoạt động (Activity)
Là một dạng đặc biệt của biểu đồ trạng thái Nó chỉ ra luồng đi từ hoạt động nàysang hoạt động khác trong một hệ thống Nó đặc biệt quan trọng trong việc xây dựng
mô hình chức năng của hệ thống và nhấn mạnh tới việc chuyển đổi quyền kiểm soátgiữa các đối tượng
Bảng 1 – 7 Các phần tử của biểu đồ hoạt động
Hoạt động Mô tả một hoạt động gồm tên
hoạt động và đặc tả của nóTrạng thái khởi đầu
Phân cách nhau bởi mộtđường kẻ dọc từ trênxuống dưới biểu đồ
- Biểu đồ thành phần (Component)
Trang 25Chỉ ra cách tổ chức và sự phụ thuộc của các thành phần (component) Nó liênquan tới biểu đồ lớp, trong đó một thành phần thường ánh xạ tới một hay nhiều lớp,giao diện, hay thành phần sẵn có.
Bảng 1 – 8 Các ký hiệu của biểu đồ thành phần
Thành phần Mô tả một thành phần của biểu đồ,
mỗi thành phần có thể chứa nhiều lớphoặc nhiều chương trình con
Giao tiếp Mô tả giao tiếp gắn với mỗi thành
phần Các thành phần trao đổi thôngtin qua các giao tiếp
Gói (package) Được sử dụng để nhóm một số thành
phần lại với nhau
- Biểu đồ triển khai hệ thống (deployment)
Biểu diễn cấu trúc cài đặt và triển khai hệ thống dưới dạng các Nodes và cácmối quan hệ giữa các node đó Thông thường các modes được liên kết với nhau thôngqua liên kết truyền thông như các kết nối mạng, liên kết TCP – IP, macroware… vàđược đánh số theo thứ tự thời gian tương tự như biểu đồ cộng tác
Bảng 1 – 9 Các ký hiệu của biểu đồ triển khai hệ thống
Các nodes (hay
các thiết bị)
Biểu diễn các thành phần không có bộ vi
xử lý trong biểu đồ triển khai hệ thốngCác bộ xử lý Biểu diễn các thành phần có bộ vi xử lý
trong biểu đồ triển khai hệ thốngCác liên kết
truyền thông
Nối các thành phần của biểu đồ triểnkhai hệ thống thường mô tả một giaothức truyền thông cụ thể
Với những nội dung tôi trình bày ở trên, có thể thấy rằng tiến trình phát triểnphần mềm gồm có các thành phần quan trọng không thể thiếu: mô hình vòng đời pháttriển phần mềm, phương pháp phân tích, thiết kế, các công cụ hỗ trợ cho phát triểnphần mềm và những người trong nhóm phát triển phần mềm
Trang 261.3 Vai trò của việc phân tích, thiết kế hệ thống
Giai đoạn phân tích thiết kế hệ thống là giai đoạn chuyển những yêu cầu từkhách hàng thành phần mềm máy tính Nó là giai đoạn quan trọng nhất trong tiến trìnhphát triển phần mềm vì nó quyết định vòng đời của hệ thống Do dó, người đảm nhậncông việc này giữ vai trò chủ chốt Trong các hệ thống thông tin vừa và nhỏ một phântích viên có thể là người lập trình cho hệ thống Tuy nhiên, đối với một hệ thống lớnthì bộ phận phân tích viên phải là một tập thể và có đủ khả năng nắm bắt các lĩnh vực
và hoạt động của các yêu cầu được đặt ra từ khách hàng
Đồng thời ở giai đoạn này việc chọn lựa phương pháp và mô hình phân tíchthiết kế cũng có ảnh hưởng không nhỏ đến cấu trúc và tốc độ truy xuất dữ liệu của hệthống
Mặt khác, ngoài việc đáp ứng các yêu cầu nghiệp vụ của người dùng một phầnmềm tốt cần có khả năng thích ứng và mở rộng Vì vậy, phần mềm cần được phân tíchthiết kế tốt để đứng vững trước những biến đổi của môi trường, dù từ phía cộng đồngngười dùng, hay từ phía công nghệ và cũng có thể dễ dàng phát triển theo yêu cầu củangười dùng mà không cần phải sửa chữa nhiều
Nói tóm lại, Phân tích, thiết kế hệ thống thông tin có vai trò rất quan trọng trongquy trình xây dựng phần mềm vì có được cái nhìn đầy đủ, đúng đắn, chính xác về hệthống thông tin sẽ xây dựng trong tương lai nhằm thuận lợi cho việc sửa chữa, bổ sung
và phát triển hệ thống khi có yêu cầu Hơn thế nữa, còn tránh được những sai lầmtrong thiết kế, cài đặt Tuy nhiên, trong thực tế người làm phần mềm chưa coi trọng vàrất lúng túng trong khâu này dẫn đến những sai sót ở phần ý niệm/quan niệm lớn nhấttrong tất các cả các loại sai sót mắc phải
1.4 Thực trạng SV khoa CNTT học môn Phân tích thiết kế hệ thống
Đánh giá kết quả học tập là một quá trình thu thập, phân tích và xử lí các thôngtin về kiến thức, kĩ năng, thái độ của SV theo mục tiêu môn học nhằm đề xuất các giảipháp để thực hiện mục tiêu của môn học đó
Đánh giá bằng thang điểm là hình thức đánh giá dựa trên nhận xét của GV nói
về mức độ hoàn thành các công việc giao trong một học phần, chất lượng học tập đạtđược của SV theo các tiêu chí đã được xác định từ trước
Trong quá trình thực hiện đề tài, tôi đã thực hiện thống kê kết quả môn Phântích thiết kế hệ thống trong 2 năm học Môn học này, được phân bố trong kế hoạch đàotạo bậc Đại học, Cao đẳng ở học kì I cho SV năm thứ 3 với số tín chỉ là 2, hình thứcthi tự luận với thời gian thi 60 phút Kết quả như sau:
- Năm học 2012 – 2013: (23 SV)
Trang 27Bảng 1 – 10 Thống kê kết quả điểm thi kết thúc học phần
Bảng 1 – 11 Thống kê kết quả điểm thi kết thúc học phần
5 10 15 20 25
BIỂU ĐỒ BIỂU DIỄN KẾT QUẢ ĐIỂM THI KẾT THÚC HỌC PHẦN PTTKHTTT
Năm học 2012 - 2013 Năm học 2013 - 2014
Hình 1 – 5 Biểu đồ biểu diễn kết quả điểm thi kết thúc học phần PTTKHT
Từ việc thống kê, nhận thấy điểm thi kết thúc học phần này của SV với mứcđiểm dưới 5 chiếm khá nhiều SV (21 SV 91%) Như vậy, kết quả học tập của SV vớimôn học này thấp Những nguyên nhân có thể dẫn đễn tình trạng trên là:
- Khả năng phân tích tổng hợp, so sánh còn hạn chế, chưa mạnh dạn trong học tập
Do đó, hiểu chưa sâu, khả năng nắm kiến thức còn hạn chế