Xóa một thành viên khỏi hệ thống

Một phần của tài liệu Tiểu luận Phát triển phần mềm hướng đối tượng GIỚI THIỆU KIẾN TRÚC HƯỚNG DỊCH VỤ (SOA) VÀ CÁCH THỰC HIỆN (Trang 32)

4. Triển khai SOA và Webservice trong ứng dụng thực tế

4.2.21Xóa một thành viên khỏi hệ thống

• QĐ19:

4.3.1 Các thành viên có thể cập nhật tiến độ công việc của họ họ

Các thành viên có thể theo dõi các công việc được giao mà không cần phải vào trực tiếp trang web quản lý dự án của nhóm. Việc cập nhật được xác nhận bởi thành viên có đủ quyền như PM hay team leader.

4.3.2 Yêu cầu hiệu quả

Máy tính: CPU core 2 quad Q8400-2.66Ghz, ram 2x2GB bus 1066

Stt Nghiệp vụ Tốc độ xử lý Dung lượng lưu trữ

Ghi chú

1 Project Tạo dự án Ngay tức thì

2 Sửa dự án Ngay tức thì 3 Xóa dự án Ngay tức thì 4 Khởi đầu (mở) dự án Ngay tức thì 5 Kết thúc (đóng) dự án Ngay tức thì

6 Milestone Tạo milestone Ngay tức thì

7 Sửa milestone Ngay tức thì

8 Xóa milestone Ngay tức thì

9 Bắt đầu (mở) milestone Ngay tức thì 10 Kết thúc (đóng) milestone Ngay tức thì

11 Tasks Tạo task Ngay tức thì

12 Giao (assign) task

cho thành viên

Ngay tức thì

13 Xóa task Ngay tức thì

14 Chỉnh sửa trạng thái

task (mở, đóng …)

Stt Nghiệp vụ Tốc độ xử lý Dung lượng lưu trữ

Ghi chú

15 Messaging Tạo message Ngay tức thì

16 Gửi message Ngay tức thì

17 Xóa message Ngay tức thì

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ì

21 Permission Phân quyền Ngay tức thì

22 Search Tra cứu Ngay tức thì

23 Email notification

Gửi email Ngay tức thì

24 Message Board (adsbygoogle = window.adsbygoogle || []).push({});

Bảng thông báo 25 FileSharing Chia sẻ tập tin

4.3.3 Bảng trách nhiệm yêu cầu hiệu quả

Stt Nghiệp vụ Người

dùng

Phần mềm Ghi chú

1 Project Tạo dự án Thực hiện đúng

yêu cầu

2 Sửa dự án

3 Xóa dự án

4 Khởi đầu (mở) dự án

5 Kết thúc (đóng) dự án

6 Milestone Tạo milestone Thực hiện đúng

yêu cầu 7 Sửa milestone 8 Xóa milestone 9 Bắt đầu (mở) milestone 10 Kết thúc (đóng) milestone

14 Chỉnh sửa trạng thái task (mở, đóng …)

15 Messaging Tạo message Thực hiện đúng

yêu cầu

16 Gửi message

17 Xóa message

18 File manager

Quản lý tập tin Thực hiện đúng

yêu cầu

19 Calendaring Quản lý thời gian Thực hiện đúng

yêu cầu 20 Time

tracking

Theo dõi tiến độ Thực hiện đúng

yêu cầu

21 Permission Phân quyền Cung cấp

tên, password

Thực hiện đúng yêu cầu

22 Search Tra cứu Thực hiện đúng (adsbygoogle = window.adsbygoogle || []).push({});

yêu cầu 23 Email

notification

Gửi email Cung cấp

địa chỉ email Thực hiện đúng yêu cầu 24 Message Board

Bảng thông báo Người

dùng cung cấp thông tin

Thực hiện đúng yêu cầu

25 File Sharing Chia sẻ tập tin Người dùng cung cấp tập tin

Thực hiện đúng yêu cầu

4.3.4 Yêu cầu tiện dụng

dụng

1 Quản lý dự án 15 phút hướng dẫn Tỷ lệ phạm lỗi không quá 2% 2 Quản lý milestone 15 phút hướng dẫn Tỷ lệ phạm lỗi

không quá 2% 3 Quản lý tasks list 5 phút hướng dẫn Tỷ lệ phạm lỗi

không quá 1% 4 Quản lý tin nhắn Không cần hướng

dẫn

Ai cũng sử dụng được dễ dàng 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

8 Phân quyền 15 phút hướng dẫn Tỷ lệ phạm lỗi

không quá 5%

9 Tra cứu Không cần hướng

dẫn

Không cần biết 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

4.3.5 Bảng trách nhiệm yêu cầu tiện dụng

Stt Nghiệp vụ Người dùng Phần mềm Ghi chú

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 (adsbygoogle = window.adsbygoogle || []).push({});

3 Quản lý tasks list Đọc tài liệu hướng dẫn

Thực hiện đúng yêu cầu

4 Quản lý tin nhắn Thực hiện đúng

dẫn yêu cầu

7 Theo dõi tiến độ Thực hiện đúng

yêu cầu

8 Phân quyền Làm theo người

hướng dẫn

Thực hiện đúng yêu cầu

9 Tra cứu Thực hiện đúng

yêu cầu

10 Gửi email thông báo Thực hiện đúng

yêu cầu

11 Bảng thông báo Thực hiện đúng

yêu cầu 12 Chia sẻ tập tin Đọc tài liệu hướng

dẫn

Thực hiện đúng yêu cầu

4.3.6 Yêu cầu tương thích

St t

Nghiệp vụ Đối tượng liên quan Ghi chú

1 Xuất thông tin Ra tập tin PDF

2 Xuất thông tin RSS Xuất tin nhắn, thông báo ra định dạng RSS

4.3.7 Yêu cầu công nghệ

St t

Yêu cầu Mô tả Ghi chú

1 Dễ sửa lỗi Xác định lỗi nhanh Không ảnh

hưởng đến chức năng khác

2 Dễ bảo trì Thêm chức năng mới tương

đối nhanh

Không ảnh hưởng đến chức (adsbygoogle = window.adsbygoogle || []).push({});

năng khác 3 Dễ mang chuyển Thay đổi cơ sở dữ liệu không

quá 4 ngày

4.3.8 Yêu cầu tiến hoá

St t

Nghiệp vụ Tham số cần thay đổi Miền giá trị cần thay đổi

1 Thay đổi thành viên dự án Thành viên Danh sách thành

viên 2 Thay đổi thời gian dự án Thời gian bắt đầu, thời gian

kết thúc,… 3 Thay đổi thời gian

milestone

Thời gian bắt đầu, thời gian kết thúc,…

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,…

5 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)

Thành viên Danh sách thành

viên 7 Thay đổi quy định tập tin Dung lượng cho phép, loại

tập tin

4.3.9 Bảng trách nhiệm yêu cầu tiến hoá

St t

Nghiệp vụ Người dùng Phần mềm Ghi chú

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ết

Kiểm tra và thay đổi thời gian

milestone bắt đầu, thời gian kết thúc …

đổi thời gian 4 Thay đổi thời gian thực

hiện nhiệm vụ (task) (adsbygoogle = window.adsbygoogle || []).push({});

Cho biết thời gian bắt đầu, thời gian kết thúc …

Kiểm tra vài thay đổi thời gian 5 Thay đổi trạng thái

nhiệm vụ (task)

Cho biết trạng thái mới

Kiểm tra và thay đổi trạng thái 6 Thay đổi thành viên

thực hiện nhiệm vụ (task)

Cho biết tên thành viên thay thế

Kiếm tra và thay đổi thành viên 7 Thay đổi quy định tập

tin

Cho biết dung lượng cho phép, loại tập tin cho phép

Kiểm tra và thay đổi quy định. Thực hiện kiểm tra quy định mới.

4.3.10 Yêu cầu an toàn

Stt Nghiệp vụ Đối tượng Ghi chú

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.

4.3.11 Bảng trách nhiệm yêu cầu an toàn

Stt Nghiệp vụ Người dùng Phần mềm Ghi chú

1 Phục hồi Cho biết task,

user, project cần phục hồi

Phục hồi dữ liệu

user, project cần hủy

3 Không cho phép xóa Thực hiện theo

đúng yêu cầu

4.3.12 Yêu cầu bảo mật

Stt Nghiệp vụ Admin Project Manager Team Leader Member 1 Projects x x 2 Milestones x x x x

3 Tasklists (To-do lists) x x x x

4 Messaging / Instant Messaging x x x x

5 Calendaring x x x x

6 File management x x x (adsbygoogle = window.adsbygoogle || []).push({});

7 Time tracking x x x

8 Permissions (role based) x

9 Filesharing x x x

10 Tagging x x x x

11 Messageboard x

12

Excel files from activity logs and

timetracker reports x x

13 PDF export x x

14

Synchronization of calendars via

iCal task export x x x x

15 RSS feeds for messages and tasks x x x x

16 E-mail notification x x x x

17 Multilanguage x x x x

18 Search x x x x

19 Fully themeable x x x x

20

Activity logs and messages in PDF

format x x

21 Full UTF8 support x x x z

1

Quản trị hệ thống

quyền hạn, cung cấp đầy đủ tên công ty, …

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

---oOo--- (adsbygoogle = window.adsbygoogle || []).push({});

4.4. User-case

4.4.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ững hoà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.

4.4.2 Các quy ước

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

4.4.4.1 Danh sách các actor của hệ thống

STT Tên Ý nghĩa

1

Admin Người quản trị có quyền cao nhất của hệ thống, có thể thực hiện mọi tác vụ và sử dụng mọi chức năng mà hệ thống cung cấp.

2

ProjectManager (PM) Người quản trị dự án. Trong phạm vi của EPM, người quản trị dự án là trưởng nhóm. Đây là người thực hiện các tác vụ chính để quản lý nhóm của mình.

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

4.4.4.2 Danh sách các use-case

STT Tên use-case Mô tả

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ành viên mới vào hệ thống.

4 DoiMatKhau Người dùng thay đổi mật khẩu của họ.

5 DoiThongTinTaiKhoan 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 thành viên mới hay xóa tài khoản các thành viên ra khỏi hệ thống.

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. (adsbygoogle = window.adsbygoogle || []).push({});

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áo cá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 ra cá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. Đồng thờ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ác thành viên. Danh sách công việc bao gồm một hay nhiều công việc và được gắn với một milestone nhấ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ệc con trong tasklist đó và phân công cho các thành viên cụ thể.

theo dõi quá trình thực hiện của công việc, phân cô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ủa mì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óa cá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ăng gử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óa vào ô tìm kiếm.

4.5.1 Mục đích

Sau khi phân tích yêu cầu của người dùng, nhóm phát triển bắt đầu tiến hành bước thiết kế hệ thống. Tài liệu này là bản đặc tả khái quát kiến trúc của hệ thống bao gồm mô hình các tầng (layers), các thành phần (components), sơ đồ và đặc tả các lớp sẽ triển khai trong EPM.

4.5.2 Sơ đồ các lớp trong EPM (mức phân tích)

4.5.2.1 Sơ đồ các lớp chính (adsbygoogle = window.adsbygoogle || []).push({});

4.5.2.2 Danh sách các lớp đối tượng và quan hệ

STT Tên lớp/quan hệ Loại Ý nghĩa/Ghi chú

1 DataObject Lớp mô tả chung nhất cho các đối tượng

dữ liệu.

2 User Lớp đối tượng người dùng, miêu tả chung

cho ba loại người dùng chính của hệ thống là: Admin, Project Manager và các

Member (thành viên bình thường). Lớp User kế thừa từ lớp DataObject. 3 DeadlineWork Đại diện cho các công việc được thi hành

trong một khoảng thời gian nhất định (nghĩa là có deadline).

Lớp DeadlineWork kế thừa từ lớp

DataObject.

4 Project Lớp đặc tả cho một dự án CNTT. Dự án là

một dạng công việc được thực hiện trong một khoảng thời gian rõ ràng vì vậy nó được kế thừa từ lớp DeadlineWork.

5 Milestone Đây là lớp đại diện cho một mốc thời gian

của một dự án CNTT. Mỗi dự án có thể có nhiều mốc thời gian khác nhau để phân chia công việc và lập kế hoạch cho dự án. Milestone có quan hệ với một Project và là một đối tượng con chứa trong Project. Một Milestone cũng có hiệu lực trong một khoảng thời gian cụ thể, nên nó cũng được kế thừa từ lớp DeadlineWork.

6 TaskList TaskList – danh sách công việc, là một

danh sách hay tập hợp chứa nhiều công việc con. Nhiệm vụ chính của lớp này là

TaskList có quan hệ với một Milestone và là một đối tượng con chứa trong

Milestone.

TaskList cũng được kế thừa từ lớp

DeadlineWork.

7 Task Đại diện cho một công việc được giao cho

một thành viên trong dự án thực hiện. Task là một phần tử con của TaskList. Task được kế thừa từ lớp DeadlineWork.

8 Role Đại diện cho một phân quyền trong hệ

thống. Một phân quyền định ra các hành động mà một đối tượng người dùng có thể thực hiện được khi sử dụng hệ thống. Người quản trị (Admin hoặc Project Manager) có thể dùng các quyền mặc định của hệ thống hoặc tạo ra các phân quyền mới cho từng dự án.

Role được kế thừa từ lớp DataObject.

9 Action Đại diện cho một hành động hay một tác

vụ được thực thi bởi người người dùng (ví dụ: thêm, xóa, sửa,…)

Action được kế thừa từ lớp DataObject.

10 Module Module là một thành phần trong hệ thống

chẳng hạn như: front end, back end, khu vực quản lý dự án, khu vực quản lý thành viên... Thực sự lớp này chỉ có ý nghĩa cho người quản trị (Admin hoặc Project (adsbygoogle = window.adsbygoogle || []).push({});

bình thường (Member).

Lớp này có 2 nhiệm vụ chính: giúp quản lý dễ dàng các thành phần của hệ thống và

Một phần của tài liệu Tiểu luận Phát triển phần mềm hướng đối tượng GIỚI THIỆU KIẾN TRÚC HƯỚNG DỊCH VỤ (SOA) VÀ CÁCH THỰC HIỆN (Trang 32)