Lời nói đầuQuản lý dự án phần mềm là một công việc rất khó khăn và yêu cầu rất cao đốivới người quản lý cũng như các thành viên của dự án nhằm đảm bảo thành công cho dự án.Và quản lý dự
Trang 1KHOA CÔNG NGHỆ PHẦN MỀM
-PHẦN MỀM QUẢN LÝ DỰ ÁN CNTT EASY PROJECT MANAGEMENT (EPM)
BÁO CÁO CUỐI HỌC KỲ
Môn học: Phát triển phần mềm hướng đối tượng
Giảng viên: Phạm Thi Vương
Trang 2Lời nói đầu
Quản lý dự án phần mềm là một công việc rất khó khăn và yêu cầu rất cao đốivới người quản lý cũng như các thành viên của dự án nhằm đảm bảo thành công cho
dự án.Và quản lý dự án phần mềm yêu cầu cần phải có sự cân bằng giữa các yếu tố :thời gian, tài nguyên và chất lượng Hiện nay, chúng ta có rất nhiều phần mềm hổtrợ trong việc quản lý dự án với chất lượng tốt Tuy nhiên, do cá phần mềm nàymang tính chất phục vụ cho các dự án lớn, nhóm làm việc lớn nên khá cồng kềnh.Trên thực tế, nhu cầu cần những phần mềm quản lý dự án nhỏ gọn là vẫn có Do đó,nhóm 16 đã quyết định phát triền một phần mềm quản lý nhỏ gọn, EPM - EasyProject Management dành cho những dự án nhỏ cùng với số lượng thành viên thấp.Phần mềm EPM là một web ứng dụng chạy trên nền tảng web, và được phát triểndựa trên những kỹ thuật mới : ASP.Net MVC 2.0, LinQ, jQuery, cùng sự hướngdẫn của thầy Phạm Thi Vương Nhóm 16 hy vọng EPM sẽ góp góp vào cộng đồngphát triền phần mềm
TP HCM, 12, 01, 2010
Nhóm 16
Trang 3Mục lục
Lời nói đầu 2
Mục lục 3
1 Đặc tả yêu cầu 9
1.1 Mục đích 9
1.2 Phạm vi của dự án 9
1.3 Yêu cầu chức năng 9
1.3.1 Các yêu cầu về quản lý dự án (project) 9
1.3.2 Tạo dự án (project) mới 12
1.3.3 Chỉnh sửa, xóa một project 13
1.3.4 Thêm, xóa thành viên của một project 13
1.3.5 Liệt kê các project của một thành viên 13
1.3.6 Hiển thị tiến độ của project theo phần trăm (%) 13
1.3.7 Hiển thị các thông tin của project: days left, budget, description 13
1.3.8 Hiển thị calendar kèm theo milestone 14
1.3.9 Thêm một cột mốc (milestone) mới 14
1.3.10 Chỉnh sửa, xóa và đóng một milestone 15
1.3.11 Tạo mới một danh sách công việc (tasklist) 15
1.3.12 Hiển thị danh sách các tasklist và các task tương ứng 15
1.3.13 Chỉnh sửa và xóa một tasklist 16
1.3.14 Tạo mới một công việc (task) 16
1.3.15 Chỉnh sửa, xóa và đóng một task 17
1.3.16 Phân công công việc cho một hay nhiều thành viên 17
1.3.17 Thêm và xóa thành viên khỏi một project 17
1.3.18 Các yêu cầu về quản lý thành viên/người sử dụng (user) 18
1.3.19 Liệt kê tất cả các thành viên 18
1.3.20 Thêm một thành viên mới vào hệ thống 18
1.3.21 Xóa một thành viên khỏi hệ thống 19
Trang 41.4 Yêu cầu phi chức năng 19
1.4.1 Yêu cầu hiệu quả 19
1.4.2 Bảng trách nhiệm yêu cầu hiệu quả 21
1.4.3 Yêu cầu tiện dụng 23
1.4.4 Bảng trách nhiệm yêu cầu tiện dụng 24
1.4.5 Yêu cầu tương thích 25
1.4.6 Yêu cầu công nghệ 25
1.4.7 Yêu cầu tiến hoá 25
1.4.8 Bảng trách nhiệm yêu cầu tiến hoá 26
1.4.9 Yêu cầu an toàn 27
1.4.10 Bảng trách nhiệm yêu cầu an toàn 27
1.4.11 Yêu cầu bảo mật 28
1.4.12 Bảng yêu cầu trách nhiệm bảo mật 29
2 User-case 30
2.1 Mục đích 30
2.2 Các quy ước 30
2.3 Sơ đồ use-case tổng quát 31
2.4 Các actor và các use-case của hệ thống 32
2.4.1 Danh sách các actor của hệ thống 32
2.4.2 Danh sách các use-case 32
2.5 Biểu đồ tuần tự (Sequence Diagram) 36
2.6 Đặc tả các use-case 37
2.6.1 Đăng nhập 37
2.6.2 Đăng xuất 38
2.6.3 Tạo tài khoản mới 39
2.6.4 Đổi mật khẩu 40
2.6.5 Thay đổi thông tin người sử dụng 41
2.6.6 Quản lý các thành viên (người sử dụng) 42
2.6.7 Quản lý các phân quyền (role) của người dùng 43
Trang 52.6.8 Tạo dự án mới 45
2.6.9 Quản lý các dự án 46
2.6.10 Tạo mốc thời gian (milestone) mới 47
2.6.11 Quản lý các mốc thời gian (milestones) 49
2.6.12 Tạo danh sách công việc mới (tasklist) 50
2.6.13 Quản lý các danh sách công việc (tasklists) 51
2.6.14 Tạo công việc mới 53
2.6.15 Quản lý các công việc (tasks) 54
3 Sơ đồ lớp 55
3.1 Mục đích 55
3.2 Sơ đồ các lớp trong EPM (mức phân tích) 55
3.2.1 Sơ đồ các lớp chính 55
3.2.2 Danh sách các lớp đối tượng và quan hệ 56
3.2.3 Mô tả chi tiết các lớp đối tượng 59
3.2.3.1 DataObject 59
3.2.3.2 User 60
3.2.3.3 DeadlineWork 62
3.2.3.4 Project 64
3.2.3.5 Milestone 65
3.2.3.6 TaskList 67
3.2.3.7 Task 69
3.2.3.8 Role 70
3.2.3.9 Action 72
3.2.3.10 Module 73
3.2.3.11 ModuleAction 75
3.2.3.12 TimeTracker 76
4 Thiết kế dữ liệu 78
4.1 Sơ đồ logic 78
4.2 Sơ đồ logic chi tiết: 79
Trang 64.3 Mô tả chi tiết các kiểu dữ liệu trong sơ đồ logic 79
4.3.1 User 79
4.3.2 Project 81
4.3.3 Project Assigned 82
4.3.4 Tasks 83
4.3.5 Tasks Assigned 85
4.3.6 TaskList 86
4.3.7 Milestone 88
4.3.8 Milestone Assigned 89
4.3.9 Role 90
4.3.10 Role Assigned 92
4.3.11 Action 93
4.3.12 Module 93
4.3.13 Module Action 94
5 Thiết kế giao diện 96
5.1 Danh sách các màn hình 96
5.2 Mô tả chi tiết các màn hình 97
5.2.1 Màn hình “Desktop” 97
5.2.1.1 Chức năng 98
5.2.1.2 Các thành phần của giao diện 98
5.2.1.3 Các sự kiện 101
5.2.2 Màn hình “Project” 102
5.2.2.1 Chức năng 103
5.2.2.2 Các thành phần của giao diện 103
5.2.2.3 Các sự kiện 105
5.2.3 Màn hình “Milestone List” 106
5.2.3.1 Chức năng 107
5.2.3.2 Các thành phần của giao diện 107
5.2.3.3 Các sự kiện 107
Trang 75.2.4 Màn hình “Milestone Add/Edit” 108
5.2.4.1 Chức năng 108
5.2.4.2 Các thành phần của giao diện 108
5.2.4.3 Sự kiện 109
5.2.5 Màn hình “Task List” 109
5.2.5.1 Chức năng 109
5.2.5.2 Các thàh phần của giao diện 109
5.2.5.3 Sự kiện 110
5.2.6 Màn hình “User “ 111
5.2.6.1 Chức năng 111
5.2.6.2 Các thành phần của giao diện 111
5.2.6.3 Sự kiện 111
5.2.7 Màn hình “My Project” 112
5.2.7.1 Chức năng 112
5.2.7.2 Các thành phần của giao diện 112
5.2.7.3 Sự kiện 113
5.2.8 Màn hình “Add Project” 113
5.2.8.1 Chức năng 114
5.2.8.2 Các thành phần của giao diện 114
5.2.8.3 Sự kiện 115
5.2.9 Màn hình “User profile” 115
5.2.9.1 Chức năng 116
5.2.9.2 Các thành phần của giao diện 116
5.2.10 Màn hình “Edit user” 117
5.2.10.1 Chức năng 117
5.2.10.2 Các thành phần của giao diện 117
5.2.10.3 Sự kiện: 118
5.2.11 Màn hình “My Task” 119
5.2.11.1 Chức năng 119
Trang 85.2.11.2 Các thàh phần của giao diện 119
5.2.11.3 Sự kiện 120
5.2.12 Màn hình “Add Task List” 121
5.2.12.1 Chức năng 121
5.2.12.2 Các thành phần giao diện 121
5.2.12.3 Sự kiện 122
5.2.13 Màn hình “Add Task” 122
5.2.13.1 Chức năng 122
5.2.13.2 Các thành phần giao diện 123
5.2.13.3 Sự kiện 123
5.2.14 Màn hình “User Administration” 124
5.2.14.1 Chức năng 124
5.2.14.2 Các thành phần của giao diện 124
5.2.14.3 Sự kiện 125
5.2.15 Màn hình “Add User” 125
5.2.15.1 Chức năng 125
5.2.15.2 Các thành phần của giao diện 125
5.2.15.3 Sự kiện 126
Lời kết 127
Tài liệu tham khảo 128
Trang 9Easy Project Management ( E P M ) là một phần mềm hỗ trợ quản lý dự án.
Hệ thống EPM cung cấp một công cụ hỗ trợ đắc lực cho các quản trị viên (Projectmanager - PM) của các nhóm vừa và nhỏ quản lý hiệu quả hơn nhóm của họ, đồngthời giúp cho toàn bộ các thành viên làm quen với quy trình làm việc nhóm
Với EPM, quy trình làm việc của nhóm sẽ trở nên nhịp nhàng và hiệu quả hơnnhờ các chức năng như phân công nhiệm vụ, quản lý thời gian, tạo các milestone(cột mốc), theo dõi và báo cáo kết quả công việc, cùng nhiều chức năng khác Nhờ
đó mức độ rủi ro của dự án sẽ được giảm thiểu và mức độ thành công sẽ cao hơn
Đóng một project khi hoàn
thành
QĐ2
Liêt kê tất cả project của một
thành viên
BM2Hiển thị tiến độ (status) của BM3
Trang 10Stt Tên yêu cầu Biểu mẫu Quy định Ghi chú
các project theo phần trăm %
Hiển thị các thông tin của
project như như bao nhiêu
ngày nữa đền deadline (days
left); ngân sách (budget);
miêu tả sơ lược (description)
Phân công công việc cho một
hay nhiều thành viên
Trang 11Stt Tên yêu cầu Biểu mẫu Quy định Ghi chú
một project
Trich xuất các thông báo ra
định dạng PDF
Hiển thị các tập tin và thư
mục của một project
BM13
Thêm một thành viên mới vào
Time tracker: báo cáo thời
gian của các hoạt động trong
project
BM16
Có thể tra cứu các hoạt động
theo thời gian bắt đầu hoặc
Trang 12 Quy định 1 (QĐ1):
o Tên dự án không được là một chuỗi rỗng;
o Deadline phải lớn hơn ngày hiện tại;
o Một project phải có ít nhất một thành viên
Trang 131.3.6 Hiển thị tiến độ của project theo phần trăm (%)
Trang 14(Những ngày có đánh dấu là các milestone).
BM7:
QĐ5:
o Tên của milestone không được rỗng;
o Deadline phải lớn hơn ngày hiện tại và không được vượt quá deadline của project;
o Chỉ có admin mới có quyền tạo mới một milestone
QĐ6:
o Chỉ có admin mới có quyền chỉnh sửa, xóa và đóng một milestone
BM8:
Trang 15 QĐ7:
o Tên của tasklist không được rỗng
o Chỉ admin mới có quyền tạo tasklist
BM9:
Trang 161.3.13 Chỉnh sửa và xóa một tasklist
QĐ8:
o Chỉ có admin mới có quyền chỉnh sửa và xóa tasklist
BM10:
QĐ9:
o Tên của công việc không được rỗng;
o Deadline phải lớn hơn ngày hiện tại;
o Công việc phải được giao cho ít nhất một người hay một nhóm người;
o Chỉ có admin mới có quyền tạo mới một task
QĐ10:
o Chỉ có admin mới có quyền chỉnh sửa, xóa và đóng một task
QĐ11:
Trang 17o Chỉ có admin mới có quyền phân công công việc cho các thành viên.
QĐ16:
o Chỉ có admin mới có quyền thêm và xóa thành viên khỏi một project
Liệt kê tất cả các thành viên
Trang 18 QĐ18:
o Tên của user không được rỗng và dài không quá 256 ký tự;
o Email không được rỗng và phải hợp lệ;
o Password không được rỗng và dài ít nhất 6 ký tự;
o Cần phải chọn quyền (role) khi tạo một thành viên mới;
o Chỉ có admin mới có quyền tạo mới một thành viên
QĐ19:
o Chỉ có admin mới có quyền xóa một thành viên khỏi hệ thống
Máy tính: CPU core 2 quad Q8400-2.66Ghz, ram 2x2GB bus 1066
Trang 19Stt Nghiệp vụ Tốc độ xử lý Dung lượng
lưu trữ
Ghi chú
18 File manager Quản lý file Tuỳ tốc độ
internet
19 Calendaring Quản lý thời gian Ngay tức thì
20 Time tracking Theo dõi tiến độ Ngay tức thì
Trang 201.4.2 Bảng trách nhiệm yêu cầu hiệu quả
Thực hiện đúngyêu cầu
Trang 2122 Search Tra cứu Thực hiện đúng
Thực hiện đúngyêu cầu
24 Message
Board
dùng cungcấp thông tin
Thực hiện đúngyêu cầu
25 File Sharing Chia sẻ tập tin Người
dùng cungcấp tập tin
Thực hiện đúngyêu cầu
5 Quản lý tập tin 10 phút hướng dẫn Trực quan
6 Quản lý thời gian 10 phút hướng dẫn Trực quan, dễ
xem
7 Theo dõi tiến độ 5 phút hướng dẫn Trực quan
không quá 5%
Trang 22dẫn nhiều về dự án
10 Gửi email thông báo 1 phút hướng dẫn Dễ sử dụng
11 Bảng thông báo Không cần hướng
dẫn
Dễ hiểu, dễ xem
12 Chia sẽ tập tin 5 phút hướng dẫn
1 Quản lý dự án Đọc tài liệu hướng
dẫn
Thực hiện đúng yêu cầu
2 Quản lý milestone Đọc tài liệu hướng
dẫn
Thực hiện đúng yêu cầu
3 Quản lý tasks list Đọc tài liệu hướng
dẫn
Thực hiện đúng yêu cầu
yêu cầu
5 Quản lý tập tin Đọc tài liệu hướng
dẫn
Thực hiện đúng yêu cầu
6 Quản lý thời gian Đọc tài liệu hướng
dẫn
Thực hiện đúng yêu cầu
yêu cầu
hướng dẫn
Thực hiện đúng yêu cầu
Trang 231.4.5 Yêu cầu tương thích
St
t
Nghiệp vụ Đối tượng liên quan Ghi chú
2 Xuất thông tin RSS Xuất tin nhắn, thông báo ra
định dạng RSS
St
t
hưởng đến chức năng khác
đối nhanh
Không ảnh hưởng đến chức năng khác
3 Dễ mang chuyển Thay đổi cơ sở dữ liệu không
4 Thay đổi thời gian thực
hiện nhiệm vụ (task)
Thời gian bắt đầu, thời gian kết thúc,…
Trang 245 Thay đổi trạng thái nhiệm
vụ (task)
Trạng thái (đóng, mở, tạm dừng, khẩn, không quan trọng)
6 Thay đổi thành viên thực
hiện nhiệm vụ (task)
1 Thay đổi thành viên dự
án
Cung cấp tên thành viên cần thay đổi
Kiểm tra và thay đổi thành viên tham gia dự án
2 Thay đổi thời gian dự
án
Cho biết thời gian bắt đầu, thời gian kếtthúc …
Kiểm tra và thay đổi thời gian
3 Thay đổi thời gian
milestone
Cho biết thời gian bắt đầu, thời gian kếtthúc …
Kiểm tra và thay đổi thời gian
4 Thay đổi thời gian thực
hiện nhiệm vụ (task)
Cho biết thời gian bắt đầu, thời gian kếtthúc …
Kiểm tra vài thay đổi thời gian
5 Thay đổi trạng thái
Kiểm tra và thay đổi quy định
Thực hiện kiểm tra quy định mới
Trang 251.4.9 Yêu cầu an toàn
1 Phục hồi Các task đã xóa, các user của hệ thống,
project
2 Hủy thật sự Các task, user, project
3 Không cho phép xóa Các task đã được phân công , các thành
viên đang tham gia các dự án (đang được giao task hoặc đang có dữ liệu liên quan trong hệ thống), các project
đã hoặc đang được tiến hành
user, project cần phục hồi
Phục hồi dữ liệu
user, project cần hủy
Team Leader
Member
Trang 26Stt Nghiệp vụ Admin
Project Manager
Team Leader
Synchronization of calendars via
Ghi nhận và thực hiện đúng
2 Project manager Cung cấp tên và mật khẩu
Ghi nhận và thực hiện đúng
3 Team Leader Cung cấp tên và mật khẩu
Ghi nhận và thực hiện đúng
4 Member Cung cấp tên và mật khẩu
Ghi nhận và thực hiện đúng
Trang 27
-oOo -2. User-case
2.1 Mục đích
Mô tả sự tương tác giữa các tác nhân bên ngoài (actor) và hệ thống Đồng thời
nó cũng thể hiện ứng xử của hệ thống đối với bên ngoài như thế nào, trong nhữnghoàn cảnh nhất định, xét từ quan điểm của người sử dụng
Tóm lại, tài liệu này mô tả các yêu cầu đối với hệ thống, có nghĩa là những gì hệthống phải làm chứ không nhằm mục đích mô tả hệ thống phải làm như thế nào
Sau đây là các quy ước trình bày các usecase trong tài liệu này:
Phần đặc tả usecase được trình bày trong một bảng
Mỗi usecase có một ID riêng biệt
Phần “Mức độ” (priority) chỉ định độ quan trọng của usecase mà hệ thống
cần đáp ứng Có ba mức sau:
o Cao
o Bình thường
o Thấp
Trang 282.3 Sơ đồ use-case tổng quát
Trang 292.4 Các actor và các use-case của hệ thống
3
Member Các thành viên bình thường của hệ
thống Đây là người dưới quyền một PM,thực hiện các công việc theo nhiệm vụđược giao
1 DangNhap Người dùng đăng nhập vào hệ thống để bắt đầu sử
dụng EPM
2 DangXuat Người dùng muốn thoát khỏi hệ thống và kết thúc
phiên làm việc
3
TaoTaiKhoan Quản trị viên (Admin và PM) thêm thành viên
mới vào project mà mình quản lý hay thêm thànhviên mới vào hệ thống
4 DoiMatKhau Người dùng thay đổi mật khẩu của họ
oan
Người dùng thay đổi các thông tin cá nhân (Họtên, email, avatar,…) của họ
6 QuanLyThanhVien Quản trị viên (Admin và PM) có thể thay đổi
thông tin của các thành viên trong hệ thống, thêm
Trang 30thành viên mới hay xóa tài khoản các thành viên
ra khỏi hệ thống
7
QuanLyRole Quản trị viên (Admin và PM) có thể tạo mới một
phân quyền (role), chỉnh sửa các hành động màmột role được phép thực hiện hay xóa một role
8 TaoDuAn Quản trị viên (Admin và PM) tạo mới một dự án
9
QuanLyDuAn Việc quản lý dự án được thực hiện bởi người quản
trị (Admin và PM) bao gồm các công việc: quản
lý chung các dự án, quản lý mốc thời gian, quản lýdanh sách công việc tasklist, quản lý task, quản lýmessage, quản lý tập tin, xuất báo cáo, tra cứu báocáo và tìm kiếm
10
TaoMilestone Việc tạo các mố thời gian (milestone) sẽ giúp cho
người quản trị dự án (Admin và PM) có thể dễdàng theo dõi tiến độ làm việc của nhóm, đặt racác mục tiêu ngắn hạn cũng như dài hạn và xácđịnh được kế hoạch làm việc cho cả nhóm
11
QuanLyMilestone Admin hay PM có thể chỉnh sửa thông tin của các
mốc thời gian, xóa hay thêm một milestone Đồngthời Admin hay PM cũng có thể xem và quản lýcác tasklist có liên quan
12
TaoTasklist Quản trị viên hay trưởng nhóm dự án có thể tạo
danh sách các công việc và phân công cho cácthành viên Danh sách công việc bao gồm một haynhiều công việc và được gắn với một milestonenhất định
13
QuanLyTaskList Admin hay PM có thể thay đổi, chỉnh sửa và xóa
thông tin của một tasklist, đồng thời cũng có thể quán lý các công việc con (task) của tasklist đó.14
TaoTask Sau khi tạo danh sách các công việc, người quản
trị hay trưởng nhóm dự án sẽ tạo các công việccon trong tasklist đó và phân công cho các thành
Trang 31viên cụ thể.
15
QuanLyTask Quản trị (Admin hay PM ) có thể quản lý một
cách tổng quát các công việc con trong từngtasklist: thêm, xóa, sửa các task trong một tasklist,theo dõi quá trình thực hiện của công việc, phâncông task cho các thành viên
16
GuiMessage Người sử dụng có thể gởi thông báo hay tin nhắn
cho môt hay nhiều thành viên trong dự án củamình
17
QuanLyMessage Người dùng có thể xem các tin nhăn mới nhất, trả
lời các tin nhắn nhận được, gửi tin nhắn hay xóacác tin nhắn
18
QuanLyFile Hệ thống EPM cung cấp cho người sủ dụng một
giao diện quản lý tập tin, thư mục đơn giản và dễ
sử dụng
19
ThayDoiCauHinh Chỉ có quản trị viên (Admin) mới có thể thay đổi
các cấu hình hệ thống như giao diện, ngôn ngữhiển thị, cấu hình mail server, cấu hình chức nănggửi email
20
XuatBaoCao Admin hay PM có thể xem báo cáo các công việc
trong dự án đế xem tiến độ dự án Riêng Admin
và PM có thể chỉnh sửa báo cáo
21 TraCuuBaoCao Admin hay PM có thể lọc ra các nội dung cần xem
trong bản báo cáo
22
TimKiem Người sử dụng có thể tìm kiếm các nội dung
chuyên biệt theo yêu cầu bằng cách nhập từ khóavào ô tìm kiếm
Trang 322.5 Biểu đồ tuần tự (Sequence Diagram)
Trang 332.6 Đặc tả các use-case
Tên Use-case DangNhap
Actor:
Người sử dụng (Admin, Project Manager, Member, …)
Tóm tắt (Summary):
Người dùng đăng nhập vào hệ thống để bắt đầu sử dụng EPM
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng phải có một tài khoản của hệ thống EPM
Điều kiện sau khi thực thi Use Case (Post Conditions):
Kịch bản thực thi thành công (Main Success Scenario):
1 Người dùng nhập tên tài khoản và mật khẩu;
2 Người dùng bấm phím Enter hay nhấn nút Login trên màn hình;
3 Hệ thống kiểm tra tính hợp lệ của tài khoản;
4 Hệ thống cho phép người dùng truy cập vào hệ thống: redirect đến trang được yêu cầu (ví dụ: nếu là admin thì hệ thống sẽ redirect đến trang quản trị dự án)
Kịch bản thay thế (Alternative Scenario):
Nếu xác định tên tài khoản hoặc mật khẩu không hợp lệ, hệ thống sẽ cảnh báo để người dùng đăng nhập lại hoặc gợi ý tìm lại mật khẩu nếu người dùng quên mật khẩu
Nếu người dùng đã đăng nhập thành công vào hệ thống mà vẫn gửi requestđăng nhập thì hệ thống sẽ redirect đến trang mặc định
Các yêu cầu đặc biệt (Special Requirements);
Trang 34Các Use-case có liên quan (Relationships):
Use-case đăng xuất
Tên Use-case DangXuat
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Điều kiện sau khi thực thi Use Case (Post Conditions):
Kịch bản thực thi thành công (Main Success Scenario):
1 Người dùng bấm nút “Đăng xuất” (Logout) hay gởi một request logout
khỏi hệ thống;
2 Hệ thống trở về màn hình đăng nhập
Kịch bản thay thế (Alternative Scenario):
Các Use-case có liên quan (Relationships):
Use-case đăng nhập
Trang 352.6.3 Tạo tài khoản mới
Tên Use-case TaoTaiKhoan
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Người dùng có vai trò là quản trị viên cao nhất (Admin) hoặc là trưởng nhóm quản trị dự án (Project Manager)
Điều kiện sau khi thực thi Use Case (Post Conditions):
Kịch bản thực thi thành công (Main Success Scenario):
1 Người quản trị nhập thông tin của thành viên mới cần tạo;
2 Người quản trị nhấn nút “Thêm” (Add);
3 Hệ thống kiểm tra thông tin do người dùng cung cấp;
4 Hệ thống thông báo tài khoản mới đã được tạo
Kịch bản thay thế (Alternative Scenario):
Hệ thống sẽ thông báo lỗi nếu người dùng vi phạm các điều sau:
o Nhập thiếu các trường bắt buộc: tên tài khoản, email, mật khẩu, role;
o Dữ liệu không hợp lệ: tên tài khoản quá dài (hơn 256 ký tự), email không hợp lệ, mật khẩu quá ngắn (ít hơn 6 ký tự)
Trang 36Các Use-case có liên quan (Relationships):
Use-case đăng nhập
Use-case quản lý các thành viên
Tên Use-case DoiMatKhau
Actor:
Người sử dụng (Admin, Project Manager, Member, …)
Tóm tắt (Summary):
Tình huống này xảy ra khi người dùng muốn thay đổi mật khẩu của họ
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Điều kiện sau khi thực thi Use Case (Post Conditions):
Mật khẩu mới được cập nhật vào cơ sở dữ liệu (CSDL)
Kịch bản thực thi thành công (Main Success Scenario):
1 Người dùng nhập mật khẩu cũ;
2 Người dùng nhập mật khẩu mới hai lần;
3 Người dùng bấm phím Enter hay nhấn nút “Lưu” (Save) trên màn
hình;
4 Hệ thống kiểm tra thông tin do người dùng cung cấp;
5 Hệ thống thông báo mật khẩu cập nhật thành công
Kịch bản thay thế (Alternative Scenario):
Nếu mật khẩu cũ không chính xác hoặc hai mật khẩu mới không khớp nhau, hệ thống sẽ cảnh báo cho người dùng
Nếu mật khẩu mới quá ngắn (ít hơn 6 ký tự), hệ thống xuất hiện cảnh báo cho người dùng
Các Use-case có liên quan (Relationships):
Trang 37Use-case đăng nhập.
Use-case thay đổi thông tin người dùng
Tên Use-case DoiThongTinTaiKh
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Điều kiện sau khi thực thi Use Case (Post Conditions):
Thông tin mới của người dùng được cập nhật vào cơ sở dữ liệu (CSDL) vàcập nhật trên giao diện của hệ thống
Kịch bản thực thi thành công (Main Success Scenario):
1 Người dùng chỉnh sửa các thông tin cá nhân;
2 Người dùng bấm phím Enter hay nhấn nút “Lưu” (Save) trên màn
hình;
3 Hệ thống kiểm tra thông tin do người dùng cung cấp;
4 Hệ thống thông báo thông tin cập nhật thành công
Kịch bản thay thế (Alternative Scenario):
Nếu các thông tin người dùng cung cấp không hợp lệ (thiếu các mục bắt buộc, email không hợp lệ,…), hệ thống sẽ cảnh báo và yêu cầu người dùngnhập lại thông tin
Các Use-case có liên quan (Relationships):
Trang 38Use-case đăng nhập.
Use-case đổi mật khẩu
Use-case quản lý các thành viên
Tên Use-case QuanLyThanhVi
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Người dùng có vai trò là quản trị viên cao nhất (Admin) hoặc là trưởng nhóm quản trị dự án (Project Manager)
Điều kiện sau khi thực thi Use Case (Post Conditions):
Thông tin được cập nhật trong toàn hệ thống (CSDL và giao diện)
Kịch bản thực thi thành công (Main Success Scenario):
1 Người quản trị có thể thực hiện một trong các hành động sau:
Thêm thành viên mới: khi đó người dùng thực hiện use-case “Tạo
tài khoản mới”.
Xem danh sách các thành viên mà mình trực tiếp quản lý
Cập nhật thông tin các thành viên: khi đó người dùng thực hiện
use-case “Thay đổi thông tin người dùng”.
Xóa thành viên dưới quyền: hệ thống cảnh báo người dùng và yêu
Trang 39cầu xác thực hành động xóa Người dùng nhấn “OK”: hệ thống xóa tài khoản của thành viên ra khỏi hệ thống Người dùng nhấn
“Cancel”: hệ thống quay lại màn hình làm việc
2 Hệ thống thông báo các thao tác đã thực hiện thành công
Kịch bản thay thế (Alternative Scenario):
Nếu người quản trị vi phạm các điều kiện khi tạo mới hay chỉnh sửa thông tin tài khoản thì hệ thống sẽ thông báo lỗi
Trong một số trường hợp đặc biệt hệ thống sẽ không cho thay đổi hay xóa các thành viên (có quản trị viên khác đang sử dụng thành viên đó, hay các thành viên đó dang chỉnh sửa thông tin của chính họ,…)
Các Use-case có liên quan (Relationships):
Use-case đăng nhập
Use-case tạo tài khoản mới
Use-case thay đổi thông tin người dùng
Tên Use-case QuanLyRole
Các sự kiện kích hoạt use-case (trigger):
Điều kiện tiên quyết (Preconditions):
Người dùng đã đăng nhập vào hệ thống
Người dùng có vai trò là quản trị viên cao nhất (Admin) hoặc là trưởng nhóm quản trị dự án (Project Manager)
Điều kiện sau khi thực thi Use Case (Post Conditions):
Trang 40Thông tin được cập nhật trong CSDL và hiển thị chính xác trên giao diện.
Kịch bản thực thi thành công (Main Success Scenario):
1 Người quản trị có thể thực hiện một trong các hành động sau:
Thêm một role mới: quản trị viên bấm vào nút “Thêm phân quyền” (Add role) Quản trị viên nhập tên của role và cấp các quyền (hành động) mà role đó được phép Người quản trị bấm nút “Thêm” (Add) Hệ thống kiểm tra thông tin và thêm role mới
Xem danh sách các phân quyền mà họ được phép xem
Cập nhật thông tin các role: các thao tác tương tự như khi tạo một role mới
Xóa role: hệ thống cảnh báo người dùng và yêu cầu xác thực hành động xóa Người dùng nhấn “OK”: hệ thống xóa role được chọn Người dùng nhấn “Cancel”: hệ thống quay lại màn hình làm việc
2 Hệ thống thông báo các thao tác đã thực hiện thành công
Kịch bản thay thế (Alternative Scenario):
Nếu người quản trị vi phạm các điều kiện khi tạo mới hay chỉnh sửa thông tin của phân quyền (tên của phân quyền không hợp lệ,…) thì hệ thống sẽ thông báo lỗi
Các Use-case có liên quan (Relationships):
Use-case đăng nhập
Use-case quản lý các thành viên
Use-case tạo tài khoản mới
Tên Use-case TaoDuAn