Tải bản đầy đủ (.pdf) (32 trang)

Bài thuyết trình Công nghệ phần mềm: Chương 5 - Thiết kế phần mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.58 MB, 32 trang )

Chương 5:
Thiết Kế Phần Mềm

1


Th.S NGUYỄN VĂN THẨM

GIÁO VIÊN 
HƯỚNG DẪN

1
2
3
4

THÀNH VIÊN
NHÓM:

TRẦN THỊ BÍCH

NGUYỄN ĐỨC
HÒA

NGUYỄN VĂN HÙNG
NGUYỄN ĐỨC
DŨNG

2



ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

N
I Ộ
DUNG

CHIẾN LƯỢC THIẾT KẾ
THIẾT KẾ KIẾN TRÚC ỨNG DỤNG
THIẾT KẾ CƠ SỞ DỮ LIỆU

3


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

Xây dựng ứng dụng phần mềm là một dây chuyền các chuyển 
đổi
Phân tích

Mà ở đó: 

Thiết kế

 

What
What

How
How

4


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

5


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

Thiết kế kiến 
trúc

Thiết kế dữ liệu
Thiết kế phần 
mềm là quá trình 
thiết kế cấu trúc 
phần mềm dựa trên 
những tài liệu đặc 
tả
 Thiết kế 

giao diện

Thiết kế
 thuật toán

6



  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM
Tầm quan trọng của thiết kế:
 

Thiết kế là giai đoạn quan trọng nhất
Quá trình thiết kế tốt là cơ sở để quản lý và giảm chi phí cho 
công việc bảo trì phần mềm sau này.
7


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM
Mối liên quan của thiết kế phần mềm với công nghệ phần mềm 

được thể hiện qua sơ đồ:

8


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM
Thiết kế phần mềm là hoạt động được xác lập dựa trên 2 

mặt:

Quản lý và Kỹ thuật
Mối quan hệ giữa 2 khía cạnh kỹ thuật và quản lý được thể 
hiện như sau: 

 

9



  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

Trong tiến trình thiết kế:
Mô hình để 
biểu diễn 
công việc 
thiết kế

Đồ thị

 
 
  Các đỉnh của đồ thị để biểu diễn các thực thể
 Các cạnh là các mối liên hệ giữa chúng
 

10


  1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM

 Tiến trình thiết kế:

 
 
 
11



 2. CHIẾN LƯỢC THIẾT KẾ

Hướng
 chức năng

Cách tiếp 
cận hướng 
chức năng 
hay hướng 
đối tượng 
là bổ sung 
và hỗ trợ 
cho nhau 
chứ không 
phải là đối 
kháng

Hướng
 đối tượng

Mỗi chiến 
lược đều 
có ưu và 
nhược 
điểm riêng 
phụ thuộc 
vào ứng 
dụng của 
phát triển


Kỹ sư 
phần mềm 
sẽ chọn 
cách tiếp 
cận thích 
hợp nhất 
cho từng 
giai đoạn 
thiết kế

12


 2. CHIẾN LƯỢC THIẾT KẾ
Hướng chức năng

Hướng đối tượng

 Đây là cách tiếp cận truyền 
thống.
 Quan tâm chủ yếu tới những 
thông tin mà hệ thống sẽ giữ gìn.
–> Chúng ta hỏi người dùng xem họ 
sẽ cần những thông tin nào, rồi 
chúng ta thiết kế ngân hàng dữ liệu 
để chứa những thông tin đó, cung 
cấp Forms để nhập thông tin và in 
báo cáo để trình bày các thông tin.
–> Tập trung vào thông tin và không 

mấy để ý đến những gì có thể xảy 
ra với những hệ thống đó và cách 
hoạt động (ứng xử) của hệ thống là 
ra sao???

Trong thế giới thực, đối tượng là 
thực thể tồn tại như con người, xe, 
máy tính, … Trong ngôn ngữ lập 
trình, đối tượng có thể là màn hình, 
điều khiển,..
Lối tiếp cận hướng đối tượng là 
một lối tư duy theo lối ánh xạ các 
thành phần trong bài toán vào các đối 
tượng ngoài đời thực. 
–>Với lối tiếp cận này, chúng ta chia 
ứng dụng thành các thành phần nhỏ, 
gọi là các đối tượng, chúng tương 
đối độc lập với nhau. Sau đó ta có 
thể xây dựng ứng dụng bằng cách 
chắp các đối tượng đó lại với nhau.
13


 2. CHIẾN LƯỢC THIẾT KẾ

Ưu 
điểm

Hướng chức năng


Hướng đối tượng

 Đơn giản
 Là phương pháp tốt cho 
việc thiết kế ngân hàng dữ 
liệu và nắm bắt thông tin

 Việc thay đổi chức năng, tiến hóa 
chức năng không làm thay đổi đến cấu 
trúc tĩnh của phần mềm.
 Tính tái sử dụng: bạn có thể tạo 
các thành phần (đối tượng) một lần và 
dùng chúng nhiều lần sau đó.
–> giảm thiểu lỗi và các khó khăn 
trong việc bảo trì, giúp tăng tốc độ 
thiết kế và phát triển phần mềm.

Không phù hợp với hệ 
thống thường xuyên thay 
Nhượ đổi.
c điểm Có thể khiến cho việc 
thiết kế ứng dụng phát 
sinh nhiều khó khăn.

Cách nhìn tự nhiên nhiều hệ thống 
là hướng chức năng nên việc thích 
nghi cách nhìn hướng đối tượng đôi 
khi là khó khăn
Còn tương đối chứ chín muồi và 
đang được thay đổi mau chóng

14


THIẾT KẾ KIẾN TRÚC ỨNG DỤNG
Thiết kế kiến trúc cung cấp cho chúng ta b
ản đặc tả về kiến 
 

trúc hệ thống, bao gồm những hệ thống con nào, tương tác 
với nhau ra sao, framework hỗ trợ điều khiển tương tác giữa 
các hệ thống con như thế nào …
Thiết kế kiến trúc luôn được tiến hành trước khi có các đặc 
tả chi tiết về hệ thống.
Kết quả của thiết kế kiến trúc ứng dụng là tài liệu thiết kế 
kiến trúc

 
 

 
15


THIẾT KẾ KIẾN TRÚC ỨNG DỤNG
Mô hình kho 
dữ liệu
Mô hình 
luồng dữ liệu

Mô hình

 điều khiểu

Các mô hình 
thiết kế ứng 
dụng
Mô hình 
khách­ phục 
vụ

Mô hình
 đối tượng
Mô hình máy 
trừu tượng

16


THIẾT KẾ KIẾN TRÚC ỨNG DỤNG
Mô hình

Kho dữ liệu

Đặc điểm

Mọi dữ liệu được lưu trữ tại 1 CSDL trung tâm có thể được 
truy cập bởi mọi phân hệ.
Phù hợp cho các ứng dụng khi dữ liệu được tạo bởi 1 phân 
hệ và được sử dụng bởi các phân hệ khác

Thành phần chính gồm:

Khách – phục     ­ Một tập các server độc lập phục vụ cho các phân hệ.
vụ
   ­ Một tập các khách hàng yêu cầu dịch vụ. 
   ­ Một mạng cho phép khách hàng truy cập đến các dịch vụ
Máy trừu 
tượng

Mô hình đối 
tượng

Tổ chức hệ thống thành nhiều lớp.
Mỗi lớp được coi như 1 máy trừu tượng và cung cấp một tập 
các dịch vụ.
Thường được sử dụng để mô hình hóa giao diện của hệ 
thống con
Hệ thống được phân thành các đối tượng giao tiếp với nhau.
Phân tích hướng đối tượng chỉ ra các lớp đối tượng liên quan, 
17
các thuộc tính và hoạt động của chúng


THIẾT KẾ KIẾN TRÚC ỨNG DỤNG
Mô hình
Mô 
hình 
điều 
khiển

Điều 
khiển 

tập 
trung

Đặc điểm
Gọi – Trả  Mô hình này phù hợp với các mô hình thủ tục 
lời
Top­Down.
 
Quản lý

Thích hợp với các hệ thống đồng thời.
Hệ thống được thiết kế như là 1 bộ quản trị 
và điều khiển việc khởi động, kết thúc.

Mô hình  Mô hình  Về nguyên tắc, 1 sự kiện được thông báo cho 
hệ 
phát tin
các phân hệ. Và phân hệ này sẽ tự quyết việc 
thống 
trả lời.
điều 
Mô hình  Có 1 hệ thống bên ngoài được sử dụng riêng 
khiển  điều khiển  cho việc theo doi các ngắt bên ngoài và được 
bởi sự 
ngắt
chuyển tới các phân hệ tương ứng.
kiện
Mô  Hệ thống được phân hóa thành các module chức năng.
hình  Chúng nhận dữ liệu, chuyển hóa dữ liệu này rồi đưa ra kết quả.
luồng  Mỗi bước của quy trình giống như 1 phép biến đổi, xử lý dữ liệu đầu 

dữ  vào và tạo dữ liệu đầu ra.
18


THIẾT KẾ KIẾN TRÚC ỨNG DỤNG

 Bài 4.3 / SGK / 194 : Hãy đề xuất 1 mô hình điều khiển thích hợp cho hệ 

thống:
  ­ Bộ điều khiển của tivi có thể nhận tín hiệu từ 1 đơn vị điều khiển từ xa.
­>  Mô hình điều khiển ngắt
  ­ Hệ thống thanh toán lương, xử ký theo lô. Lấy thông tin về thời gian làm việc, 
hệ số lương, in ra bảng lương và chuyển thong tin vào tài khoản.
­>  Mô hình điều khiển quản lý
 Bài 4.4 / SGK / 194 : Hãy đề xuất 1 mô hình điều khiển thích hợp cho hệ 
thống:
  ­ Hệ thống bán vé tàu hỏa tự động
­>  Mô hình luồng dữ liệu
  ­ Hệ thống hội nghị trực tuyến, cho phép các dạng dữ liệu như âm thanh, hình 
ảnh, văn bản,…có thể được truyền tới người sử dụng 1 cách đồng thời.
­>  Mô hình phát tin
19


THIẾT KẾ CƠ SỞ DỮ LIỆU
Mục tiêu: mô tả cách thức lưu trữ dữ liệu của phần mềm bên 

trong máy tính.
Kết quả của quá trình thiết kế dữ liệu là:
     ­  Danh sách các bảng (Table).

     ­  Mối quan hệ giữa các bảng.
     ­  Danh sách các thuộc tính, khóa chính.
     ­  Danh sách các miền giá trị toàn vẹn
Có hai dạng lưu trữ chính mà người thiết kế cần phải cân 
nhắc và lựa chọn. 
     ­  Lưu trữ dưới dạng tập tin 
     ­  Lưu trữ dưới dạng cơ sở dữ liệu 

20


THIẾT KẾ CƠ SỞ DỮ LIỆU
 Sơ đồ logic hay mô hình vật lý là sơ đồ cho phép thể hiện hệ 

thống các bảng dữ liệu cùng với quan hệ mối nối liên kết giữa 
chúng.

Tên
Các qui ước :                             : đối tượng, quan hệ, lớp 
                                   
                                                      : xác định duy nhất  
                                                      : xác định duy nhất theo cả 2 
chiều
Mô hình vật lý được xây dựng dựa trên mô hình ERD đã có ở 

giai đoạn phân tích.

21



THIẾT KẾ CƠ SỞ DỮ LIỆU
Các bước chuyển đổi từ mô hình ERD sang mô hình vật lý: 
Bước

Mô hình ERD                            Mô hình vật lý

Bước 1:

Chuyển các tập thực thể thành lược đồ quan hệ
Chuyển các mối liên hệ

Bước 2 : 

1 ­ 1

N ­ 1

N ­ N

Khóa của tập thực 
thể nào cũng thành 
khóa cuả LĐQH

Khóa bên nhiều 
thành khóa của 
LĐQH

Thuộc tính khóa của 
tất cả các tập thực 
thể trở thành khoá 

của LĐQH

Bước 3 :

Gộp các LĐQH có chung khóa thành 1 lược đồ

Bước 4 :

Chuẩn hóa các LDQH về dạng chuẩn 3NF
22


THIẾT KẾ CƠ SỞ DỮ LIỆU

Ph
Phươ
ương pháp thi
ng pháp thiếết k
t kếế CSDL
 CSDL
 

Trực tiếp

www.themegallery.com

Gián tiếp

23



THIẾT KẾ CƠ SỞ DỮ 
LIỆU
PP Trực tiếp

PP Gián tiếp

Áp dụng khi thực hiện phần mềm 
không thông qua giai đoạn phân tích. 
Thiết kế phần mềm là quá trình 
chuyển đổi từ các yêu cầu (kết quả giai 
đoạn xác định yêu cầu) đến mô hình 
phần mềm tương ứng. 
Mục tiêu chính của việc thiết kế là 
mô tả các thành phần của phần mềm 
(thành phần giao diện, thành phần xử 
lý, thành phần dữ liệu) tương ứng với 
các yêu cầu của phần mềm (yêu cầu 
chức năng nghiệp vụ, yêu cầu chức 
năng hệ thống, yêu cầu phi chức năng)
Cách tiếp cận này sẽ rất khó khăn 
với các phần mềm có qui mô lớn,phức 
www.themegallery.com
tạp

Áp dụng với các qui trình có giai đoạn 
phân tích. 
Thiết kế phần mềm là quá trình 
chuyển từ mô hình thế giới thực (kết 
quả giai đoạn phân tích) đến mô hình 

phần mềm tương ứng. 
Mục tiêu chính của việc thiết kế là 
mô tả các thành phần của phần mềm 
(thành phần giao diện, thành phần xử 
lý, thành phần dữ liệu) tương ứng với 
các mô hình của thế giới thực (mô hình 
xử lý, mô hình dữ liệu). 
Cách tiếp cận này sẽ rất thuận lợi 
trong đa số trường hợp với các phần 
mềm qui mô lớn. 
24


THIẾT KẾ CƠ SỞ DỮ 
LIỆU
Các bước thiết kế CSDL
PP trực tiếp

PP gián tiếp

Bước 1: Vẽ sơ đồ logic dữ liệu
Bước 2: Lập danh sách các 
bảng thuộc tính
Bước 3: Lập danh sách bảng 
miền giá trị toàn vẹn

Bước 1: Xây dựng mô hình 
ERD
Bước 2: Chuyển mô hình ERD 
sang mô hình logic dữ liệu

Bước 3: Vẽ sơ đồ logic dữ liệu
Bước 4: Lập danh sách các 
bảng dữ liệu
Bước 5: Lập danh sách bảng 
thuộc tính
Bước 6: Lập danh sách bảng 
miền giá trị toàn vẹn

www.themegallery.com

25


×