You are on page 1of 65

Chương 4

PHÂN TÍCH THIẾT KẾ


THÀNH PHẦN XỬ LÝ
__

THIẾT KẾ HỆ THỐNG
Nội dung

 Thiết kế hệ thống
 Thiết kế form & report
 Thiết kế thử nghiệm

2
Thiết kế hệ thống

 Phân chia hệ thống thành các hệ thống


con
 Xây dựng mô hình thiết kế xử lý hệ thống
 Xây dựng cấu trúc phần mềm hệ thống

3
Phân chia hệ thống thành hệ thống con

 Mục tiêu:
 Giảm thiểu sự phức tạp của một hệ thống lớn, cồng
kềnh,…
 Tạo thuận lợi cho công việc thiết kế: bởi vì phải
chi tiết hoá các nội dung đặt được ở phần tích tích
 Dễ dàng hơn cho quá trình bảo dưỡng hệ thống sau
này

4
Phân chia hệ thống thành hệ thống con

 Tiêu chí phân chia:


 Tính cố kết (cohesion): Sự gằn bó về luận lý hoặc
mục đích của các xử lý trong một hệ thống con.
Tính cố kết càng cao thì càng tốt
 Tính liên kết (coupling): Sự trao đối thông tin và
tác động lẫn nhau giữa các hệ thống con. Sự liên
kết này càng yếu càng tốt

5
Phân chia hệ thống thành hệ thống con

 Tiêu chí phân chia:

Hệ thống con 2
Hệ thống con 1 Xử lý
Xử lý
Xử lý

Dữ liệu
Dữ liệu
Xử lý Xử lý

Xử lý
Xử lý
Hệ thống con 1 Hệ thống con 2 6
Phân chia hệ thống thành hệ thống con

 Các yếu tố gợi ý phân chia:


 Gom theo thực thể: các xử lý liên quan đến một hoặc một
đối tượng thực thể
 Ví dụ: Khách hàng, nhà cung cấp,…
 Gom theo sự kiện giao tác: các xử lý đáp ứng cho một sự
kiện xảy ra.
 Ví dụ: khách hàng đặt hàng, thanh toán, về thời gian như: cuối
ngày, cuối tháng,…
 Gom theo vai trò thực hiện hoặc ví trí tổ chức
 Ví dụ: các hoạt động liên quan đến một phòng, một con người,…
…
7
Phân chia hệ thống thành hệ thống con

 Ví dụ: hệ thống quản lý tồn kho


Phiếu xuất:2
9
Thông tin Thông tin
Thống
1- NVL xuất báo cáo hao Thủ
Hệ thống kê tỉ lệ
hụt kho Hệ thống
Lưu2hoá hao hụt
con quản lý Hệ thống đơn Hệ thống con con quản lý
Thông tin
nhập NVL con (1)quản lý NVL nhập quản lý tồn tồn kho
4
Hoá đơn kho NVL NVL
nhập NVL Số sử dụng, Đối chiếu
số tồn và cập nhật
Hoá đơn NKý tồn kho số tồn, số
NCC sử dụng
Tồn kiểm (4)
HĐ đã Hoá đơn kê
thanh chưa 3
toán 7thanh BPSX
(2) Xác định
Xửtoán

Tồn kho + NVL tồn
thanh
toán hoá tồn tối Thông Hệ thống con
đơn thiểu tin Yêu quản lý xuất
xuất vầu về
Hệ thống (3)
6 NVL NVL
NVL
5 Phiếu xuất:1
con quản lý Lập phiếu
đặt mua Xác định 8
thanh toán NVL cần đặt NVL tồn
Thông
Xử lý xuất
NVL tin
dưới mức NVL
tối thiểu xuất 8
NVL
Phân chia hệ thống thành hệ thống con

 Mô tả hệ thống con:
Hệ thống

Hệ thống con 1 Hệ thống con 2 Hệ thống con 3

Hệ thống: ABC
Dòng dữ liệu vào:

Dòng dữ liệu ra:

STT Hệ thống con Xử lý Kho dữ liệu

9
Phân chia hệ thống thành hệ thống con

 Ví dụ: hệ thống quản lý tồn kho và các hệ


thống con
Hệ quản lý tồn kho

Quản lý nhập NVL Quản lý thanh toán Quản lý tồn kho Quản lý xuất NVL

Các hệ thống con

10
Phân chia hệ thống thành hệ thống con
Hệ thống: ABC
Dòng dữ liệu vào:

Dòng dữ liệu ra:

STT Hệ thống con Xử lý Kho dữ liệu


1 Quản lý nhập NVL - Lưu hoá đơn -Hoáđơn
- Xác định NVL tồn dưới mức tối -NKý tồn kho
thiểu
- Lập phiếu đặt mua NVL
2 Quản lý thanh toán - Xử lý thanh toán hoá đơn -Hoá đơn
3 Quản lý tồn kho -Xác định NVL tồn -Hoáđơn, phiếu xuất
-Đối chiếu và cập nhập số tồn, số sử -NKý tồn kho
dụng
-Thống kê tỉ lệ hao hụt -Phiếu xuất, Nký tồn kho
4 Quản lý xuất NVL -Xử lý xuất NVL -Phiếu xuất

11
Thiết kế hệ thống
 Phân chia hệ thống thành các hệ thống con
 Xây dựng mô hình thiết kế xử lý hệ thống
 Xây dựng cấu trúc phần mềm hệ thống

12
Xây dựng mô hình thiết kế xử lý

 Phân chia hoạt động thủ công và tự động


 Xác định thừa tác viên sử dụng hệ thống
 Thiết kế xử lý trực tuyến – theo lô
 Mô hình hoá xử lý ở mức thiết kế

13
Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động

Hệ thống tổ
chức nghiệp
HTTT
vụ
Môi trường

HTTT tự động hoá

Yêu cầu tự động hoá


(phần mềm)

14
Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động


Xử lý
Xử lý mức quan niệm

Tinh chế thành các


hoạt động chi tiết

Xử lý được phân chia Xử lý Xử lý

Yêu
cầu
tự Xác định chức năng tự Tự động
Thủ công
động động hoá
hoá 15
Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động


 Nguyên tắc phân chia:
 Các xử lý sau khi phân chia sẽ hòan tòan thủ công hoặc
hòan tòan tự động
 Sự phân chia chấp nhận việc trùng lắp nội dung giữa tự

động và thủ công

Kiểm tra và Kiểm tra Lưu đơn Lưu đơn


lưu đơn công nợ hàng vào hàng
hàng khách hàng máy tính

Tự động Tự động Thủ công 16


Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động


 Ví dụ:
Quản lý xuất NVL Tự động Thủ công

Phiếu xuất 4
Thông tin xuất NVL 3
Phiếu xuất
Duyệt
Lập và in phiếu xuất
Quản lý phiếu xuất
BPSX Phiếu xuất
xuất NVL BPSX
Yêu cầu NVL
NVL cần xuất 1
Thông tin xuất NVL 2 Kiểm tra
Yêu cầu NVL Yêu cầu NVL
Phiếu xuất Kiểm tra yêu cầu
tồn kho NVL

Quan niệm NKý tồn kho Vật lý 17


Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động


 Ví dụ:
Quản lý nhập NVL Tự động Thủ công
Hóa đơn 1.1
1 1.2
NCC Đơn hàng Tìm đơn
Lưu hóa So khớp
hàng tương hóa đơn
đơn ứng Hóa đơn
Phiếu đặt Hóa đơn 1.3 1.4 NCC
Hóa đơn Lưu hóa Lưu hóa
đơn đơn gốc
5
6 5
Xác định
Lập phiếu Xác định Hóa đơn gốc Phiếu đặt
Thông tin phiếu đặt
NVL dưới
đặt NVL NVL dưới 6.1 6.2
mức tối
mức tối thiểu Lập và in Xác nhận
thiểu phiếu đặt phiếu đặt
Phiếu đặt
NKý tồn kho NKý tồn kho 18
Quan niệm Vật lý
Xây dựng mô hình thiết kế xử lý

 Phân chia giữa hoạt động thủ công - tự động


 Ví dụ:
Quản lý tồn kho Tự động Thủ công
Sử dụng
3 3
BPSX Xác định Hóa đơn Xác định Số tồn 4.1
tồn kho Đối chiếu số
tồn kho
NVL tồn, số sử
NVL
Phiếu xuất dụng
Sử dụng
Phiếu xuất
Hóa đơn Số tồn, sử dụng BPSX
Bcáo hao hụt
Số tồn NKý tồn kho 4.2
9 4
Lập thống Đối chiếu và Cập nhật số
9
kê tỉ lệ hao cập nhật số tồn, số sử
Lập thống dụng Bcáo hao hụt
hụt tồn, số sử
kê tỉ lệ hao
dụng
hụt

NKý tồn kho 19


Quan niệm Vật lý
Xây dựng mô hình thiết kế xử lý

 Thiết kế các vai trò User (người dùng phần mềm)

Nhân viên tổ chức

Hệ thống tổ
chức nghiệp
HTTT
vụ
Môi trường

HTTT tự động hoá

Thừa tác viên HTTT


20
Xây dựng mô hình thiết kế xử lý

 Thiết kế các vai trò – các hệ thống eCommerce

Hệ thống
HTTT tự
tổ chức
động hóa
nghiệp
Môi trường vụ

21
Xây dựng mô hình thiết kế xử lý

 Thiết kế các vai trò – người dùng hệ thống

Môi trường

Môi trường

Môi trường 22
Xây dựng mô hình thiết kế xử lý
 Thiết kế các vai trò – ví dụ: quản lý nhập NVL
Tự động Thủ công
NV nhập Thủ kho NV nhập Thủ kho
1.1 Hóa đơn 1.2
Tìm đơn So khớp
hàng tương Thông tin đặt hàng tương ứng hóa đơn
ứng
1.4
Đơn hàng Hóa đơn Lưu hóa Phiếu đặt

1.3 Hóa đơn đơn gốc 6.2


NCC
Lưu hóa Xác nhận
đơn 5
Hóa đơn gốc phiếu đặt
Thông Xác định
NVL dưới 6.3 Phiếu đặt đã
tin xác nhận
Hóa đơn mức tối Gởi phiếu
phiếu
thiểu đặt
đặt 6.1
Lập và in
phiếu đặt NKý tồn kho

Phiếu đặt
23
Xây dựng mô hình thiết kế xử lý

 Thiết kế các hình thức khác


 Thiết kế phân bố vị trí tổ chức (không gian hệ thống)
 Thiết kế thời gian xử lý hệ thống
 Thiết kế hình thức: hình thức và phương tiện xử lý, hình
thức trình bày thông tin (form, report,…),…

24
Xây dựng mô hình thiết kế xử lý

 Thiết kế xử lý theo lô – trực tuyến


 Xử lý trực tuyến (on-line processing): là các xử lý thu thập
và phân phối thông tin mới nhất về hệ thống thông qua
một trạm làm việc trực tuyến
 Xử lý trực tuyến thường được thiết kế theo các điều kiện
sau:
 Truy cập và nắm bắt những thông tin xãy ra một cách ngẫu nhiên
 Định dạng và kiểu thông tin là không nhất quán (vd: truy vấn đặc
biệt)
 Thông tin đang tiếp tục thay đổi và thông tin mới nhất là cần thiết
cho xử lý hiện tại và hỗ trợ ra quyết định
 Người dùng ở vị trí dễ dàng truy cập tời HTTT

25
Xây dựng mô hình thiết kế xử lý

 Thiết kế xử lý theo lô – trực tuyến


 Xử lý theo lô (batch processing): được xem như việc xử lý
đầu vào và đầu ra hệ thống theo một thời điểm xác định
hoặc đã định trước.
 Xử lý theo lô thường được thiết kế theo những điều kiện
sau:
 Truy cập thông tin có định kỳ
 Định dạng và lọai thông tin là nhất quán
 Thông tin ổn định trong khỏang thời gian/ hoặc nhu cầu thông tin
của người dùng không cần thiết phải mới nhất
 Người dùng không ở vị trí có thể truy cập HTTT một cách trực
tuyến
 Ví dụ: Tạo báo cáo doanh thu hàng tháng, cuối tháng tính
lương, kiểm tra tồn kho cuối ngày,…
26
Xây dựng mô hình thiết kế xử lý

 Thiết kế xử lý theo lô – trực tuyến


 Ví dụ: quản lý yêu cầu sách NKH

Thủ công Tự động


1 2
Nhận và Lưu PYC
PYC lưu PYC vào CSDL

NKH
PYC CSDL PYC

4
PYC không hợp lệ 3
Thông báo Kiểm tra
các PYC PYC
không hợp
lệ

Thiết kế xử lý theo lô 27
Xây dựng mô hình thiết kế xử lý

 Thiết kế xử lý theo lô – trực tuyến


 Ví dụ: quản lý yêu cầu sách NKH

Thủ công Tự động


1 3
Nhận và Kiểm tra
PYC lưu PYC PYC

NKH Ngân sách


PYC 2
Lưu PYC
3 vào CSDL
PYC không hợp lệ
Thông báo
các PYC
không hợp CSDL PYC
lệ

Thiết kế xử lý trực tuyến 28


Xây dựng mô hình thiết kế xử lý

 Mô hình hóa xử lý mức thiết kế


 Mục tiêu:
 Biểu diễn xử lý hệ thống trong một môi trường cụ thể
 Làm nổi bật các yếu tố vật lý của hệ thống mới sẽ được triển khai
trong mô hình như: hình thức, không gian, thời gian, tổ chức, thủ
công – tự động,…
 Biểu diễn các yêu cầu tự động hóa hệ thống
 Các mô hình: có thể dùng một số mô hình sau
 Mô hình DFD (mức vật lý)
 Flowchart
 Mô hình xử lý tựa Merise

29
Xây dựng mô hình thiết kế xử lý
 Mô hình hóa xử lý mức thiết kế
 Flowchart (Quản lý nhập NVL)
NV nhập Thủ kho Nhà CC
Tìm đơn hàng Hóa đơn
tương ứng Xác định NVL tồn
dưới mức tối thiểu
Đơn hàng Đơn hàng HĐ gốc
NVL tồn
NKý tồn dưới mức tối
So khớp thiểu
đơn Lưu hóa đơn
hàng

Hóa đơn (đã KT) Xác định


Hóa đơn phiếu
đặt
Lập và in phiếu Đơn hàng (đã
Đơn hàng
đặt xác nhận)
Gởi
phiếu Đơn hàng
đặt
30
Xây dựng mô hình thiết kế xử lý

 Mô hình hóa xử lý mức thiết kế


 Mô hình xử lý tựa Merise
Ký hiệu Tên gọi
Biến cố.
Mỗi biến cố có đặc tính là nó thuộc biến cố ngoài môi trường hay biến
cố trong hệ thống, có đặc tính là biến cố vào hay biến cố ra. Đối với
biến cố vào được phân ra làm hai dạng: loại biến cố phát động và biến
cố điều kiện

Tập các biến cố


Tập biến cố gồm hai loại: tập biến cố vào và tập biến cố ra

Điều kiện phát động biến cố

Qui tắc quản lý (QTQL)

31
Xây dựng mô hình thiết kế xử lý

 Mô hình hóa xử lý mức thiết kế


 Mô hình xử lý tựa Merise
Ký hiệu Tên gọi
Qui tắc quản lý có điều kiện ra

ĐK1 ĐK2 …

Dữ liệu. Gồm có hai loại: dữ liệu vào và dữ liệu ra cho


của qui tắc xử lý
Phương tiện biểu diễn dữ liệu trên giấy

32
Xây dựng mô hình thiết kế xử lý
 Mô hình hóa xử lý mức thiết kế
 Mô hình xử lý tựa Merise
Đối tượng Vị trí 1 Vị trí 2 … Vị trí n Đối
X môi tượng Y
trường ngoài môi
trường

33
Xây dựng mô hình thiết kế xử lý
 Mô hình hóa xử lý mức thiết kế
 Mô hình xử lý tựa Merise
 Bảng mô tả chức năng
STT Nguồn Thủ tục Bản chất Vị trí(4) Thời gian
gốc chức (3) thực hiện
NTQL (1) năng(2) (5)

(1): Các thủ tục chức năng được lấy từ nguồn gốc NTQL nào
(2): Là thứ tự các công việc cho qui trình xử lý
(3): Bản chất công việc được thực hiện là thủ công hay tự động
(4): Thủ tục chức năng đó được thực hiện ở vị trí nào.
(5): Bao giờ thì thực hiện công việc đó (thực hiện ngay, cuối ngày,….)

34
Xây dựng mô hình thiết kế xử lý
 Mô hình hóa xử lý mức thiết kế
 Mô hình xử lý tựa Merise – ví dụ:
Nhà CC Thủ kho NV nhập

Kiểm tra đơn hàng


Giao NVL Đơn hàng

Hóa đơn Có Không


Cuối ngày

HĐ không
Xác định NVL tồn HĐ hợp lệ
hợp lệ
dưới mức tối thiểu
NKý tồn
Đ S Lưu hóa đơn

Không có
Có NVL
NVL cần
cần đặt
đặt
Lập đặt NVL Hóa đơn
Xác định phiếu đặt
Đơn hàng ĐH đã lập Đơn hàng
Đơn hàng 35
Xây dựng mô hình thiết kế xử lý
 Mô hình hóa xử lý mức thiết kế
 Mô hình xử lý tựa Merise – ví dụ:
 Bảng mô tả thủ tục chức năng
STT Nguồn gốc NTQL Thủ tục chức năng Bản chất VỊ trí Thời gian
thực hiện
1 Kiểm tra đơn hàng Xác định đơn hàng của Tự động NVnhập Thực hiện
HĐ ngay
2 Kiểm tra đơn hàng So khớp với NVL nhập Thủ công NVNhập Thực hiện
ngay
3 Lưu hóa đơn Lưu hóa đơn Tự động NVNhập Thực hiện
ngay
4 Xác định NVL tồn dưới Xác định NVL tồn dưới Tự động Thủ kho Cuối ngày
mức tối thiểu mức tối thiểu

5 Lập đặt mua NVL Lập đặt mua NVL Tự động NVNhập Cuối ngày
6 Lập đặt mua NVL In phiếu đặt Tự động NVNhập Cuối ngày

7 Xác định phiếu đặt Xác định phiếu đặt Thủ công Thủ kho
36
Thiết kế chức năng phần mềm hệ thống

 Xác định các chức năng phần mềm


 Kiến trúc phần mềm 3 lớp (three-layers)
 Thiết kế biểu đồ cấu trúc phần mềm
 Thiết kế thuật giải

37
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Từ các xử lý tự động hóa: các xử lý được quyết định là tự
động hóa trong sơ đồ vật lý sẽ là ứng viên của chức năng
phần mềm
 1 xử lý  1 chức năng phần mềm
 1 xử lý  n chức năng phần mềm
 N xử lý  1 chức năng phần mềm
 Ví dụ: Quản lý nhập NVL
Tự động Thủ công
Tìm đơn hàng
1.1
1.2
Đơn hàng Tìm đơn
hàng tương
So khớp
hóa đơn Lưu hóa đơn
ứng Hóa đơn

Hóa đơn 1.3 1.4 NCC


Lưu hóa Lưu hóa Lập và in phiếu
đơn đơn gốc
5 đặt
Xác định
Hóa đơn gốc Phiếu đặt
Thông tin phiếu đặt
NVL dưới
6.1 6.2
mức tối
thiểu Lập và in
phiếu đặt
Xác nhận
phiếu đặt
Xác định NVL
Phiếu đặt
tồn dưới mức tt 38
NKý tồn kho
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Từ các xử lý tự động hóa – ví dụ: Quản lý tồn kho

Tự động Thủ công


3
Hóa đơn Xác định Số tồn 4.1 Xác định tồn
tồn kho
NVL
Đối chiếu số kho NVL
tồn, số sử
dụng
Sử dụng
Phiếu xuất Cập nhật số
Số tồn, sử dụng BPSX tồn số sử dụng
NKý tồn kho 4.2

9
Cập nhật số Lập thống kê tỉ
tồn, số sử
Lập thống dụng
lệ hao hụt
Bcáo hao hụt
kê tỉ lệ hao
hụt

39
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Từ các xử lý tự động hóa – ví dụ: Quản lý xuất NVL
Tự động Thủ công

Phiếu xuất 4
3
Phiếu xuất
Duyệt
Lập và in phiếu xuất
phiếu xuất Phiếu xuất
BPSX
Lập và in phiếu
NVL cần xuất 1 xuất
2 Kiểm tra
Yêu cầu NVL Yêu cầu NVL Kiểm tra tồn
Kiểm tra yêu cầu
tồn kho NVL kho

NKý tồn kho

40
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Từcác xử lý tự động hóa – ví dụ: Hệ quản lý tồn kho
NVL

Tìm đơn hàng Xác định tồn Lập và in phiếu


kho NVL xuất
Lưu hóa đơn
Cập nhật số Kiểm tra tồn
Lập và in phiếu tồn số sử dụng kho
đặt
Lập thống kê tỉ
Xác định NVL lệ hao hụt
tồn dưới mức tt

41
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Các chức năng quản trị danh mục số liệu
 Ví dụ:

Nhà cung cấp Nguyên vật liệu


 Các chức năng hệ thống
 An toàn
 Quản lý người dùng
 Đăng nhập
 Đăng xuất
 Quản trị người dùng – nhóm người dùng
 …
 Backup/ restore CSDL
 Mã hóa
 Thông số hệ thống:
 Ví dụ: các thông số thư mục, ngày hệ thống, biến hệ thống,…

42
Thiết kế chức năng phần mềm hệ thống
 Xác định các chức năng phần mềm
 Các chức năng khai thác dữ liệu bổ sung
 Tìm kiếm
 Thống kê, báo cáo,…
 Các tiện ích
 Máy tính, lịch, forum
 Game
 …
 Hướng dẫn sử dụng

43
Thiết kế chức năng phần mềm hệ thống
 Xây dựng cấu trúc chức năng phần mềm
Tìm đơn hàng
HT quản trị
tồn kho
Nhập NVL Nhập hóa đơn
Nghiệp vụ
Lập & in phiếu
đặt NVL
NVL tồn dưới
mức tối thiểu

Lập và in phiếu
Xuất NVL xuất

Xác định tồn


Quản lý tồn NVL kho
Cập nhật số
tồn, số sử dụng
Danh mục Nguyên vật liệu

Nhà cung cấp

Đăng nhập
Hệ thống
Đăng xuất
Quản trị người
dùng 44
Thiết kế chức năng phần mềm hệ thống
 Xây dựng cấu trúc chức năng phần mềm
HT quản trị
tồn kho
Đăng nhập
Hệ thống
Đăng xuất
Quản trị người
dùng

Backup

Restore

Báo cáo – Báo cáo tỉ lệ


thống kê hao hụt NVL

Báo cáo nhập


NVL

Báo cáo xuất


NVL

Hướng dẫn
sử dụng

45
Thiết kế chức năng phần mềm hệ thống
 Giới thiệu về kiến trúc phần mềm
 Kiến trúc client-server

CSDL

Workstation

Client Server
 Client: giao diện và chương trình xử lý được viết trực tiếp trong
giao diện
 Server: quản trị cơ sở dữ liệu
 Hạn chế: Cơ sở dữ liệu phụ thuộc rất lớn vào giao diện
khó cải tiến, bảo trì và tái sử dụng

46
Thiết kế chức năng phần mềm hệ thống
 Giới thiệu về kiến trúc phần mềm
 Kiến trúc client-server: một số mô hình client-server

CSDL CSDL

message Xử lý

Xử lý
message

Giao diện
Giao diện

47
Thiết kế chức năng phần mềm hệ thống
 Giới thiệu về kiến trúc phần mềm
Trả lời tương tác người dùng:chuyển
 Kiến trúc 3 tầng (three-layers):
dịch những hành động của người dùng
tớiThực
một tình
hiệnhuống xử lýtác
các giao phùxửhợp
lý liên quan
Hiển thị các đối tượng tác
đến nghiệp vụ mà không quan tâmnghiệp : đến
trình
hiểnbày
thịmột hìnhnhư
chúng ảnh tốt nhất
nào?cácVàđối
User interface layer Userthế
interface CSDL
tượng
đượctác
lấynghiệp
ở đâu? tới người
layer dùng trong
một giao diện
Business layer Business layer
Chuyển dịch yêu cầu: chuyển dịch tất
Data layer cả các yêu cầu liên quan đến dữ liệu từ
Data layer
tầng tác nghiệp đến một phương thức
truy cập dữ liệu thích hợp (dạng SQL,
Middleware
CSDL truy xuất file,…)
Chuyển dịch kếtSystem
quả software

48
Thiết kế chức năng phần mềm hệ thống
 Giới thiệu về kiến trúc
phần mềm
 Kiến trúc 3 tầng (three-
layers):
 Sự phân tầng tạo ra sự
độc lập dể tiến hóa,
nâng cấp, cải tíến,….

Tạo ra một module trung gian


sẽ làm cho các tầng độc lập lẫn
nhau tốt hơn

49
Thiết kế chức năng phần mềm hệ thống
 Phân chia thành các module
 Module: là một đơn vị của hệ thống được xác định bởi
chức năng của nó, tất cả các lệnh trong module đều
nhằm thực hiện chức năng đó.
 Module có thể là một đoạn chương trình, một thủ tục,
hàm, một method,…
 Module có thể là một form, menu,….

50
Thiết kế chức năng phần mềm hệ thống
 Biểu đồ cấu trúc (structured chart)
 Module

Module gọi Module

B C
A

Module thi
Module
hành

A: giá trị tham số truyền: dữ liệu, cờ hiệu, mẫu tin


B: giá trị kết quả nhận Module nhúng
C: Cờ hiệu

51
Thiết kế chức năng phần mềm hệ thống
 Biểu đồ cấu trúc (structured chart)

Module

A B B C C

Module Module Module

Thứ tụ thực hiện

52
Thiết kế chức năng phần mềm hệ thống
 Biểu diễn cấu trúc chức năng phần mềm dùng biểu
đồ cấu trúc Module điều phối:
gọi phối hợp các thực
thi của các module
khác
Module

Module Module Module

Module Module

Module thực thi: thực thi một đọan mã chương trình


53
Thiết kế chức năng phần mềm hệ thống
 Biểu diễn cấu trúc chức năng phần mềm dùng biểu
đồ cấu trúc Main
UserID UserID UserID

Hiển thị form


Menu của user Menu hệ thống
f_DangNhap

Lập và in hóa Lập và in phiếu NVL tồn dưới Lập và in phiếu Cập nhật số sử
Tồn kho NVL
đơn đặt NVL mức tối thiểu xuất dụng

Báo cáo – Hương dẫn sử


Danh mục Hệ thống
thống kê dụng

54
Thiết kế chức năng phần mềm hệ thống
 Thiết kế chức năng phần mềm (theo kiến trúc 3
tầng) Lập và in hóa
Giao diện đơn

HoaDon Kqua Kqua


Hiển thị Kqua
Nhập HĐơn Thông báo In HĐơn
f_HoaDon
HoaDon

HoaDon

Nghiệp vụ Lưu HĐơn XóaHĐ

Kqua Kqua Kqua

Mẫu tin HoaDon Mẫu tin CTHĐ HoaDon

Truy cập CSDL Xóa_HĐ và


Them_HĐ Them_CTHĐ
CTHĐ

CSDL T_Hóa đơn T_CTHĐ


55
Thiết kế chức năng phần mềm hệ thống
 Thiết kế chức năng phần mềm (theo kiến trúc 3 tầng)

Giao diện In HĐơn


Dliệu hóa đơn in

HoaDon Lọai kết xuất


Lọai kết xuất
Số HĐ
Chọn HĐơn Chọn kết xuất In hóa đơn

Dliệu hóa đơn in

Xác định DL in
Nghiệp vụ HĐ
Dliệu hóa đơn in

Số HĐ

Truy cập CSDL Đọc_Dliệu_HĐ

CSDL
56
Thiết kế chức năng phần mềm hệ thống
 Thiết kế chức năng phần mềm (theo kiến trúc 3 tầng)
Giao diện NVL tồn dưới
Tồn kho NVL mức tối thiểu
DL tồn kho NVL tồn dưới
Ngày mức tới thiểu
Ngày
DL tồn
Ngày Hiển thị NVL tồn
Chọn ngày kho Hiển thị tồn kho
dưới mức t thiểu
Ngày
NVL tồn dưới
mức tới thiểu
Nghiệp vụ Tính tồn kho Xác định NVL tồn
dưới mức tthiểu
DL tồn DL tồn
Ngày
kho kho
Mức tối thiểu
Ngày
Tồn_kho Xđịnh_mức_tối
Truy cập CSDL _thiểu

CSDL
57
Thiết kế chức năng phần mềm hệ thống
 Các mục tiêu trong thiết kế hệ thống
 Hệ thống nên được tổ chức thành một cấu trúc phân cấp
thành các module
 Mỗi module nên điều khiển các chức năng của một số
lượng hợp lý các module mức dưới
 Mỗi module nên độc lập với những cái khác trên ý nghĩa
là không can thiệp vào họat động những module khác,
do đó, số lượng thông tin trao đổi giữa các module nên
giữ ở mức tối thiểu
 Mỗi module nên có một kích thước vừa phải
 Mỗi module chỉ nên đảm nhận một chức năng

58
Thiết kế chức năng phần mềm hệ thống
 Với các mục tiêu trên có các hướng dẫn tưởng ứng sau
 Sự phân chia: phân chia hệ thống thành những phần nhỏ hơn
 Điều khiển module: mỗi module không nên điều khiển nhiều
hơn 7 module
 Coupling: giảm tối đa sự phụ thuộc của các module vào
module khác giảm lượng truyền thông giữa các module
 Kích thước module: mỗi module nên giới hạn từ 50 đến 100
dòng lệnh
 Cohesion: các lệnh trong một module nên gắn liền cùng một
chức năng
 Tái sử dụng: các module ở mức thấp nên được sử dụng bởi
nhiều module ở mức trên
59
Thiết kế chức năng phần mềm hệ thống
 Năm loại coupling
 Data coupling: các module trao đổi với nhau thông qua
cờ dữ liệu đơn hoặc cờ hiệu thông tin
Lập gởi tiền Dữ liệu trao đổi
Số tiền giữa các module
Số Tkhỏan
Số Tkhỏan Số dư
Tình trạng Số tiền
Cập nhật số dư
Thêm phiếu gởi
Tkhỏan
 Stamp coupling: dữ liệu trao đổi giữa các module là một
cấu trúc hoặc tòan bộ mẫu tin
Xác định NVL tồn
dưới mức t thiểu Cấu trúc
Ngày Mức tồn tối thiểu
Dữ liệu tồn kho
Xác định mức tối
Tính_tồn_kho
thiểu
60
Thiết kế chức năng phần mềm hệ thống
 Năm loại coupling
 Control coupling: module này chuyển thông tin điều
khiển đến module khác
 Thông tin điều khiển: cờ hiệu thông báo cho module nhận hành
động nào nên thực hiện

Kiểm tra công nợ Thông tin điều


khách hàng khiển
Công nợ
Tên khách hàng Công nợ
Ghi “công nợ không quá 30 ngày”
Tính công nợ
Hiển thị công nợ
khách hàng

 Common coupling: hai module cùng tham khảo đến một


dữ liệu tòan cục
 Content coupling: module có thể tham khảo đến nội
dung của một module khác
61
Thiết kế chức năng phần mềm hệ thống
 Xếp loại coupling

Tên coupling Xếp hạng phụ thuộc

Data coupling Rất thấp


Stamp coupling Thấp
Control coupling Trung bình
Common coupling Cao
Content coupling Rất cao

62
Thiết kế chức năng phần mềm hệ thống
 Bảy loại cohesion
 Cohesion về chức năng: các lệnh trong một module gắn
liền tới một chức năng hoặc một nhiệm vụ
 Cohesion tuần tự: tuần tự đầu ra của lệnh này chính là
đầu vào của lệnh khác trong một module

Đầu vào
Lệnh 1 Lệnh 3
Đầu ra
Lệnh 2 Lệnh 4

Module

63
Thiết kế chức năng phần mềm hệ thống
 Bảy loại cohesion
 Cohesion trao đổi: các lệnh trong module liên quan với
nhau thông qua việc sử dụng cùng dữ liệu vào hoặc liên
quan đến cùng dữ liệu ra

Đầu vào
Lệnh 1

Đầu ra
Lệnh 2

Lệnh 3
Module

64
Thiết kế chức năng phần mềm hệ thống
 Bảy loại cohesion
 Cohesion thủ tục: các lệnh trong module liên kết với
nhau thông quan dòng điều khiển
 Các lệnh trong module liên quan với nhau thông qua
việc thực hiện cùng thời điểm hoặc gần thời điểm với
nhau
 Cohesion luận lý: bao gồm tập các lệnh nhưng được xác
định từ bên ngòai module chồng lắp các phần chức
năng  khó bảo trì
 Cohesion ngẫu nhiên: tất cả các lệnh không liên quan
đến những cái khác

65

You might also like