Hệ thống được tổ chức theo mơ hình dữ liệu tập trung.
Tất cả các dữ liệu (tiến trình mẫu, các sản phẩm vào ra của hệ thống) đều
được lưu trữ trên Database Server (sử dụng hệ quản trị SQL Server 2000). Mỗi User sử dụng máy Client của mình đăng nhập vào hệ thống và thực hiện cơng việc của mình. Sau khi kết thúc cơng việc, tất cả các dữ liệu được lưu trữ lại trên Server. Hình 4 Nguyên lý tổ chức hệ thống 3.6.Nguyên lý vận hành hệ thống: Hệ thống quản lý qui trình nghiệp vụ
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Hệ thống được vận hành theo cơ chế tuần tự, dựa vào trạng thái các hoạt động, luồng điều khiển và các cổng điều khiển. Chương trình hỗ trợ vận hành ba loại cổng chính:
Cổng AND: Khi tất cả các luồng tuần tự đi vào cổng được kích hoạt thì tất cả các hoạt động sau cổng sẽđược kích hoạt đồng thời.
Cổng OR:Khi một luồng tuần tự đi vào cổng được kích hoạt thì tất cả các luồng tuần tự sau cổng nếu thõa điều kiện sẽđược kích hoạt.
Cổng Xor_DATABASE: Chỉ cĩ duy nhất một luồng tuần tự sau cổng thõa
điều kiện đựơc kích hoạt.
Các biểu thức điều kiện dựa vào trạng thái mở rộng của hoạt động, sản phẩm, và chương trình chỉ hỗ trợ loại điều kiện tựđộng (auto).
Hình 5 Nguyên lý vận hành hệ thống
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Hình 6 Quy trình tổng quan
Chương 4. Phân tích yêu cầu hệ thống 4.1.Các thành phần hỗ trợ trong luận văn:
eXPDL hỗ trợ mơ tả tốt 18/20 mẫu luồng cơng việc đã được cơng bố. Tuy nhiên , trong khuơn khổ luận văn, chúng em khơng thể hỗ trợ hết tất cả các mẫu cơng việc trên. Sau đây là một số thành phần mà chúng em hỗ trợ, được phân chia theo đối tượng trong mơ hình:
Activity: Hỗ trợ điều kiện lặp kiểu "Standard". Đối với process chỉ
hỗ trợ ở mức đơn giản, khơng hỗ trợ "Transaction" và "Compensation". Hỗ trợ cơ chế lặp theo "Timer"
Gateway: Hỗ trợ 3 loại Gateway: AND, OR, Xor_DATABSED
Event:Hỗ trợ 2 loại sự kiện là : StartEvent và EndEvent, tuy nhiên chỉ hỗ trợở mức đơn giản nhất: loại "NONE".
Atomic: hỗ trợ loại "AUTO".
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
UserDefinedType
Product: chỉ hỗ trợ loại sản phẩm là "DOCUMENT".
SequenceFlow: Hỗ trợ điều kiện dựa trên trạng thái mở rộng của Product và Activity.
ExecuteRelation: Chương trình hỗ trợ quan hệ thực thi thơng qua việc người dùng tự thiết lập lúc chạy dự án. Do tập tin phát sinh của cơng cụ mơ hình hĩa eXPDL khơng lưu trữ quan hệ này.
Role
Các đối tượng khác như: Model, Organization, Tool, IntermediateEvent được lưu trữ lại để phát triển tiếp hệ thống về sau.
4.2.Các chức năng chính:
4.2.1. Quản lý quy trình mẫu:
Chức năng này cho phép các tổ chức cĩ thể tạo mới các quy trình nghiệp vụ từ
tập tin mơ hình hĩa. Các quy trình này cĩ thể được tái sử dụng trong nhiều dự án khác nhau.
4.2.2. Khởi tạo dự án:
Trong đề tài chúng em phân chia dự án theo hai loại: dự án được khởi tạo từ
quy trình mẫu (template project) và dự án được khởi tạo khơng theo quy trình mẫu (none template project).
Template project: là dự án được khởi tạo từ quy trình mẫu cĩ sẳn.
None template project: Là dự án do người dùng tạo mới ở dạng “dự án rỗng”, sau đĩ thêm các đối tượng cần thiết cho quy trình vào dự án. Thời gian cĩ hạn nên chúng em chưa hỗ trợ hết các loại đối tượng cho loại dự án này. Chức năng này chỉ áp dụng cho các dự án đơn giản. Sau đây là một các đối tượng mà chương trình hỗ trợ:
• Activity: Thêm cơng việc vào dự án, đây là các cơng việc nguyên tố.
• Process:Thêm quy trình con vào một quy trình nào đĩ, nếu thêm quy trình vào dự án thì được xem là quy trình chính của dự án. Khi thêm một quy trình thì chương trình tựđộng thêm hai sự kiện bắt đầu và kết
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
thúc cho quy trình. Do chương trình chưa hỗ trợ các loại sự kiện nên các sự kiện được thêm mặc định cĩ kiểu là “NONE”.
• Product: Thêm các sản phẩm vào trong dự án.
• Gateway: Thêm các cơng điều khiển vào trong dự án. Chương trình hỗ
trợ 3 loại cổng điều khiển là : AND, OR, Xor_DATABASED với ý nghĩa theo đặc tả ngơn ngữ eXPDL.
• SequenceFlow: Thêm các luồng điều khiển. Các luồng điều khiển
được thêm vào trong từng quy trình cụ thể. Người dùng phải đảm bảo thiết lập đúng luồng cơng việc, chương trình chưa hỗ trợ kiểm tra tính
đúng đắn của luồng cơng việc. Cĩ thể xác lập điều kiện cho luồng điều khiển thơng qua trạng thái mở rộng của cơng việc và sản phẩm.
• UserDefinedType: Thêm các kiểu dữ liệu do người dùng tự định nghĩa. Thường được dùng để quy định trạng thái mở rộng cho cơng việc, sản phẩm.
• Expression: Thiết lập các biểu thức điều kiện. 4.2.3. Quản lý dự án:
Để dự án cĩ thể thực hiện được người quản lý dự án phải thực hiện phân cơng nhân sự, tài nguyên cho dự án. Ngồi ra khi dự án đang thực hiện người quản lý dự án cĩ thể thực hiện điều chỉnh nhân sự, thời gian cho kịp tiến độ thực hiện dự
án. Hệ thống hỗ trợ các chức năng sau:
• Phân cơng nhân viên thực hiện trong từng cơng việc cụ thể, và quyền của nhân viên đối với cơng việc đĩ :
o View: Nhân viên đĩ chỉ được xem các thơng tin cơng việc mà khơng được phép cập nhật hay thực hiện bất kỳ thay đổi nào đối với cơng việc.
o Edit: Nhân viên được thực hiện cơng việc (đây là quyền mặc
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
• Đối với “none template project” người quản lý cĩ thể quy định các sản phẩm vào/ra của từng cơng việc.
• Trong từng cơng việc, thực hiện phân quyền cho nhân viên đối với từng sản phẩm của cơng việc:
o Upload: Nhân viên được phép upload và download sản phẩm (đây là quyền mặc định).
o Download: Nhân viên chỉ được phép download mà khơng được phép upload. Điều này tránh việc upload bừa bãi gây khĩ khăn cho cơng việc và hệ thống.
• Cung cấp các tài nguyên (dưới dạng tập tin là chủ yếu) cho các sản phẩm.
• Quy định khoảng thời gian thực hiện cơng việc. Mặc định các cơng việc
được thực hiện theo luồng tuần tự đã được định nghĩa trước nếu người quản lý khơng quy định thời gian thực hiện cụ thể.
• Theo dõi tiến độ thực hiện dự án, bao gồm: theo dõi tiến độ chung hoặc tiến độ của từng cơng việc cụ thể.
4.2.4. Thực hiện dự án:
Giúp người dùng thực hiện cơng việc của mình. Người dùng cĩ thể tham gia thảo luận nhĩm trong cơng việc của mình thơng qua “forum” trực tiếp trên cơng việc.
Quản lý luân chuyển tựđộng sản phẩm qua các cơng việc trong dự án. 4.2.5. Các chức năng quản trị:
• Quản lý thơng tin các thành viên: Tìm kiếm thành viên, thay đổi thơng tin cá nhân.
• Thêm thành viên mới.
• Phân quyền cho các thành viên trong hệ thống.
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Manage User Account
Search User Account
Manage Template Admin (f rom Actors) Run Activity UserActivity Manage Product Member Register Login Update User Info
User
Setup template Project Edit Project
Delete Project
Project Report Search Project Project Manager
Setup none template project
Hình 7 Mơ hình Use Case
4.4.Đặc tả Actor:
Admin: Người quản trị hệ thống, cĩ vai trị thiết lập các vai trị trong hệ thống,
đây là Actor cĩ quyền cao nhất hệ thống.
Project Manager: Người quản lý dự án. Chịu trách nhiệm khởi tạo và vận hành một dự án, tạo mới một quy trình nghiệp vụ.
Member: Thành viên, là actor cĩ quyền thấp nhất trong hệ thống, chỉ được phép thực hiện các cơng việc do Project Manager phân cơng.
4.5.Đặc tả Use Case:
4.5.1. Manage Template (Quản lý quy trình mẫu):
Tĩm tắt:Use case này cho phép người quản lý dự án cĩ thể thêm mới hoặc hủy bỏ 1 quy trình nghiệp vụđã được định nghĩa.
Dịng sự kiện :
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Use case này bắt đầu khi Admin muốn thêm hay hủy 1 số quy trình nghiệp vụ
cĩ sẳn trong tổ chức.
1. Hệ thống yêu cầu “Admin” chọn chức năng muốn thực hiện (“Delete
template”,”Add new template”).
2. Sau khi “Admin” chọn chức năng thực hiện, một trong các luồng phụ sau
được thực hiện.
Nếu chọn “Add new template”, luồng phụ Add new template được thực hiện. Nếu chọn “Delete template”, luồng phụ Delete template được thực hiện.
• Add new template(Thêm 1 quy trình nghiệp vụ mới): 1. Hệ thống yêu cầu nhập các thong tin sau:
Name(Tên, Bắt buộc phải cĩ)
File(File mơ hình hĩa quy trình nghiệp vụ, bắt buộc) Mơ tả(Description)
Created date (Ngày tạo)
2. Sau khi “Admin” nhập thong tin cần thiết vào. Hệ thống lưu lại thơng tin trên và phát sinh ra 1 số ID cho Template.
• Delete template(Xĩa template khởi hệ thống): 1. Hệ thống yêu cầu chọn template từ danh sách cĩ sẳn.
2. Hệ thống hiển thị thong tin của template: Ngày tạo, người tạo. 3. Người dung nhấn nút xĩa.
4. Hệ thống nhắc nhở người dùng xác nhận thao tác xĩa. 5. Người dùng xác nhận thao tác xĩa.
6. Hệ thống xĩa template ra khởi cơ sở dữ liệu.
Dịng sự kiện khác:
• Thao tác xĩa bị hủy:
Nếu trong luồng phụ “Delete template”, người dùng khơng xác nhận xĩa template thì thao tác xĩa bị hủy và Dịng dự kiện chính được bắt đầu lại từđầu.
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
- Nếu đã cĩ ít nhất 1 project đã được tạo từ Template này, hệ thống hiển thị
thơng báo: Tên project, trạng thái project của những project khởi tạo từ
template này. Hệ thống nhắc nhở người dùng “Nếu xĩa Template thì các project bị xĩa theo”.
- Nếu người dùng xác nhận, thì hệ thống xĩa tự động xĩa các project liên quan và xĩa Template
- Nếu người dùng khơng xác nhận, thao tác xĩa bị hủy bỏ, Dịng sự kiện chính được bắt đầu lại từđầu.
o Khơng tồn tại template nào:
Một thơng báo lỗi cho người dùng. Sau khi người dùng đọc xong và xác nhận, Use case kết thúc.
Các yêu cầu đặc biệt:
Khơng cĩ.
Điều kiện tiên quyết:
Người dùng phải đăng nhập vời quyền là “Admin”.
Post-Condition:
Nếu Use case thành cơng 1 template được them vào hoặc xĩa khỏi hệ thống, use case kết thúc.
Ngược lại trạng thái hệ thống khơng thay đổi.
Điểm mở rộng:
Khơng cĩ.
4.5.2. Setup template project (Tạo mới dự án theo mẫu cĩ sẵn): Tĩm tắt:
Use case cho phép PM khởi tạo mới 1 dự án theo 1 mẫu template.
Dịng sự kiện:
Dịng sự kiện chính:
Use case bắt đầu khi PM muốn tạo mới 1 dự án.
1. Hệ thống load tất cả các Template cĩ sẳn trong cơng ty. 2. Hệ thống yêu cầu PM nhập các thơng tin của project:
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Name :Tên project, bắt buộc.
Description :Mơ tả ngắn gọn về dự án.
Template :Chọn 1 template từ danh sách cĩ sẳn, bắt buộc.
Start date: Ngày bắt đầu thực hiện dự án.
Finish date: Ngày kết thúc dự án (Cĩ tính tương đối).
3. Hệ thống ghi nhận thơng tin khởi tạo project, phát sinh 1 số ID duy nhất cho Project.
4. Hệ thống phân tích cấu trúc file Template, lưu xuống CSDL. 5. Trả lại cho PM số ID của project.
6. Dịng sự kiện chính được bắt đầu lại.
Dịng sự kiện khác:
• Template khơng tồn tại:
Nếu khơng tồn tại Template nào, Use case kết thúc.
o Ngày kết thúc khơng hợp lệ:
Nếu ngày kết thúc trùng ngày bắt đầu, hệ thống thơng báo lỗi cho PM, yêu cầu
PM nhập lại ngày kết thúc, hoặc cĩ thểđể trống. Các yêu cầu đặc biệt: Khơng cĩ. Điều kiện tiên quyết: PM phải đăng nhập vào hệ thống. Post-Condition:
Nếu Use case thành cơng, 1 dự án mới được them vào hệ thống. Ngược lại, trạng thái hệ thống khơng thay đổi.
Điểm mở rộng:
Khơng cĩ.
4.5.3. Setup none template project (Tạo mới dự án khơng theo mẫu): Tĩm tắt:
Use case cho phép PM tạo mới 1 dự án khơng theo quy trình mẫu. Tất cả các cơng việc, sản phẩm đều do PM tựđịnh nghĩa.
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Dịng sự kiện:
Dịng sự kiện chính:
Use case khi PM khởi tạo 1 dự án khơng theo quy trình mẫu cĩ sẳn. 1. Hệ thống yêu cầu PM nhập các thơng tin của project:
Name :Tên project, bắt buộc.
Description :Mơ tả ngắn gọn về dự án.
Template :Chọn 1 template từ danh sách cĩ sẳn, bắt buộc.
Start date: Ngày bắt đầu thực hiện dự án.
Finish date: Ngày kết thúc dự án (Cĩ tính tương đối). 2. Hệ thống phát sinh ra ID cho người dùng.
Các yêu cầu đặc biệt:
Khơng cĩ.
Điều kiện tiên quyết:
PM phải đăng nhập vào hệ thống.
Post-Condition:
Nếu Use case thành cơng, 1 dự án mới được thêm vào hệ thống. Ngược lại, trạng thái hệ thống khơng thay đổi.
Điểm mở rộng:
Khơng cĩ.
4.5.4. Delete Project: (Xĩa dự án) Tĩm tắt:
Use case cho phép PM hủy bỏ Project đã triển khai.
Dịng sự kiện:
Dịng sự kiện chính:
Use case bắt đầu khi PM muốn hủy các Project mà do mình triển khai. 1. Hệ thống yêu cầu PM nhập vào số ID của project.
2. Hệ thống hiển thị các thơng tin của project. 3. Người dùng thực hiện thao tác xĩa.
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
5. Người dùng xác nhận thao tác xĩa.
6. Hệ thống xĩa project ra khỏi hệ thống: Thơng tin riêng , các cơng việc trong project.
7. Dịng sự kiện chính được thực hiện lại.
Dịng sự kiện khác:
• Khơng tìm thấy project:
Tong dịng sự kiện chính, nếu khơng tìm thấy project nào, hệ thống hiển thị
thơng báo lỗi. PM cĩ thể nhập vào số ID khác, hoặc hủy bỏ thao tác, Use case kết thúc.
• Thao tác xĩa bị hủy:
Nếu trong dịng sự kiện chính, PM khơng xác nhận thao tác xĩa thì thao tác xĩa bị hủy và dịng sự kiện chính bắt đầu lại từđầu. Các yêu cầu đặc biệt: Khơng cĩ. Điều kiện tiên quyết: PM phải đăng nhập vào hệ thống. Post-Condition:
Nếu Use case thành cơng, 1 dự án bị xĩa khỏi hệ thống. Ngược lại, trạng thái hệ thống khơng thay đổi.
Điểm mở rộng:
Khơng cĩ
4.5.5. Project Report (báo cáo dự án): Tĩm tắt:
Use case cho phép PM xem thơng tin hoạt động của 1 dự án. Nếu project chưa hồn thành: Xem tiến trình thực hiện dự án Nếu project đã hồn thành: Xem bản báo cáo của dự án
Dịng sự kiện:
Nghiên cứu và xây dựng ứng dụng hỗ trợ vận hành tiến trình nghiệp vụ (BPML) trên mơi trường WEB
Use case bắt đầu khi PM muốn xem quá trình thực hiện dự án hay bản báo cáo tổng kết dự án đã hồn thành.
1. Hệ thống yêu cầu PM nhập số ID của Project. 2. Hệ thống hiển thị thơng tin riêng của dự án.
3. Hệ thống hiển thị danh sách các cơng việc(Activity), tiến độ thực hiện, danh sách các nhân viên tham gia cơng việc đĩ, Các sản phẩm vào và ra của dự án(đến thời điểm hiện tại)
4. Đối với các cơng việc đã hồn thành, Hệ thống tính số ngày hồn thành trước thời hạn.
5. PM cĩ thể chuyển sang chế độ “edit”, Use case “Edit Project”
được thực hiện, hoặc cĩ thể huỷ tác vụ -> Use case kết thúc.
Dịng sự kiện khác:
• Khơng tìm thấy Project:
Trong dịng sự kiện chính, nếu hệ thống khơng tìm thấy project, 1 thơng báo lỗi
được gửi đến PM, PM cĩ thể nhập vào 1 ID khác hoặc hủy tác vụ -> Use case kết thúc. Các yêu cầu đặc biệt: Khơng cĩ. Điều kiện tiên quyết: PM phải đăng nhập vào hệ thống. Post-Condition:
Use case khơng làm thay đổi trạng thái hệ thống.