Giáo trình Công nghệ phần mềm - Chương 4: 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, mà ở đó

phân tích nhằm xác định ứng dụng sẽ thực hiện cái gì (what) còn thiết kế nhằm để trả

lời câu hỏi phần mềm cụ thể sẽ như thế nào (how)? Tức là xác định cách thức thực

hiện những gì đã được đặt ra ở phần phân tích.

Trong ba giai đoạn: thiết kế, cài đặt và bảo trì thì thiết kế là giai đoạn quan

trọng nhất, chịu trách nhiệm đến 80% đối với sự thành công của một sản phẩm. Cài đặt

là việc thực thi nhữnggì đã thiếtkế. Nếu trongquá trìnhcài đặt có xuất hiện vấn đề thì

phảiquaylại sửa bản thiết kế. Quá trìnhthiế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.

pdf24 trang | Chuyên mục: Công Nghệ Phần Mềm | Chia sẻ: dkS00TYs | Lượt xem: 2076 | Lượt tải: 3download
Tóm tắt nội dung Giáo trình Công nghệ phần mềm - Chương 4: Thiết kế phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
này sẽ tự quyết việc trả lời. Mô hình này hiệu quả với các phân hệ được 
phân bố trên các máy tính khác nhau trên mạng. Ưu điểm của nó là việc 
phát triển tương đối đơn giản. Một phân hệ mới xử lý một lớp sự kiện mới 
có thể được tích hợp khi ghi nhận các sự kiện này vào bộ điều khiển sự kiện. 
Mỗi phân hệ có thể kích hoạt mọi phân hệ khác không cần biết tên và vị trí 
của các phân hệ đó. Phân bố trong suốt với các phân hệ. Nhược điểm của 
mô hình này là phân hệ không biết sự kiện có được xử lý hay không và khi 
nào được xử lý. Rất có thể hai phân hệ khác nhau cùng sinh một sự kiện và 
có thể gây xung đột.
• Mô hình điều khiển ngắt: Có một hệ thống bên ngoài được sử dụng riêng 
cho việc theo dõi các ngắt bên ngoài và được chuyển tới các phân hệ tương 
ứng. Mô hình này phù hợp với các hệ thống thời gian. Ưu điểm của nó là 
cho phép đáp ứng nhanh nhất với các sự kiện. Nhược điểm là việc lập trình 
phức tạp.
4.6.2.5. Mô hình đối tượng 
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, các thuộc tính và các hoạt động của 
chúng. Ưu điểm của nó là tính bao đóng cho phép dấu các thực hiện của các đối tượng 
và cho phép dùng lại mã. Tuy nhiên nhược điểm là để sử dụng các dịch vụ, các đối 
tượng phải gọi tường minh các tên và giao diện của các đối tượng khác. Sự thay đổi 
giao diện sẽ làm ảnh hưởng tới các đối tượng khác.
4.6.2.6. Mô hình luồng dữ liệu
Hệ thống được phân hoá thành các module chức năng. Chúng nhận các dữ liệu 
chuyển hoá chúng rồi lại đưa ra kết quả. Trong mô hình luồng dữ liệu, các bộ biến đổi 
xử lý dữ liệu đầu vào và tạo dữ liệu ra. Dữ liệu được chảy tuần tự theo luồng từ bộ 
biến đổi này sang bộ khác. Mỗi bước của quy trình giống như một phép biến đổi. 
Mô hình này có ưu điểm:
• Nó hỗ trợ việc sử dụng lại các biến đổi.
• Nó phù hợp với suy nghĩ của mọi người quan niệm về dữ liệu được xử 
lý theo luồng có đầu vào và đầu ra.
• Thêm các xử lý khác vào hệ thống đơn giản.
• Dễ thực hiện xử lý song song hoặc tuần tự.
81
Chương 4: Thiết kế phần mềm
Nhược điểm của mô hình này là:
• Cần phải có một định dạng chung cho các dữ liệu để có thể xử lý bởi 
mọi bộ biến đổi.
• Các hệ thống tương tác khó được viết theo mô hình luồng dữ liệu. Trong 
khi các giao diện vào và ra theo dạng văn bản có thể dùng mô hình 
luồng dữ liệu thì các giao diện đồ hoạ có các dạng vào ra phức tạp hơn 
dựa trên sự kiện khó có thể áp dụng mô hình luồng dữ liệu.
4.7. THIẾT KẾ GIAO DIỆN NGƯỜI SỬ DỤNG
Khi các hệ thống tin học hoá ngày càng đi vào đời sống con người thì vấn đề 
thiết kế giao diện càng trở nên quan trọng trong việc phát triển phần mềm. Có nhiều 
câu hỏi được đặt ra trong quá trình thiết kế giao diện, như:
+ Ai là người dùng?
+ Người dùng học cách tương tác với hệ thống mới dựa trên máy tính như thế 
nào?
+ Người dùng diễn giải thông tin do hệ thống tạo ra như thế nào?
+ Người dùng trông đợi gì ở hệ thống?...
Để có được hệ thống thân thiện với người sử dụng, có nhiều nhân tố cần được quan 
tâm trong vấn đề thiết kế giao diện.
4.7.1. Nhân tố con người
Nhân tố con người: được dựa vào các yếu tố
- Nền tảng về cảm nhận của con người,
- Mức độ kỹ năng và hành vi con người,
- Nhiệm vụ và nhân tố con người: được phân loại dựa vào mục đích của ứng 
dụng, cụ thể:
• Nhiệm vụ trao đổi: các hoạt động làm cho thông tin được truyền từ nơi 
sản xuất đến nơi tiêu thụ.
• Nhiệm vụ đối thoại: các hoạt động làm cho người sử dụng định hướng và 
điều khiển tương tác với hệ thống dựa trên máy tính.
• Nhiệm vụ nhận biết: các hoạt động được thực hiện một khi đã thu được 
thông tin, các hoạt động liên kết với chức năng của hệ thống.
• Nhiệm vụ điều khiển: các hoạt động cho phép người sử dụng kiểm soát 
thông tin, nhận biết và ra lệnh cho tiến trình thông qua đó các nhiệm vụ 
tổng quát khác xuất hiện.
4.7.2. Phong cách tương tác người - máy
Phong cách tương tác người - máyquan hệ chặt chẽ với lịch sử tiến hóa của máy 
tính, có một số loại giao diện như:
- Giao diện chỉ lệnh vào hỏi,
- Giao diện đơn (menu đơn giản),
- Giao diện trỏ và nhặt (hướng cửa sổ),...
82
Chương 4: Thiết kế phần mềm
 Hiện nay, giao diện thông dụng nhất cho người sử dụng là giao diện hướng cửa 
sổ (X-Window).
4.7.3. Thiết kế giao diện người - máy
Thiết kế giao diện người - máy là một nhiệm vụ quan trọng trong thiết kế phần 
mềm. Hướng dẫn thiết kế giao diện người - máy gồm các vấn đề liên quan:
1. Mô hình thiết kế giao diện được thể hiện qua bốn mô hình: 
+ Mô hình thiết kế,
+ Mô hình người sử dụng: được phân loại cho người mới học, người ít hiểu 
biết và người hiểu biết.
+ Mô hình của người dùng hay cảm nhận hệ thống: tức là hình ảnh của hệ 
thống mà người sử dụng mang trong đầu.
+ Hình ảnh hệ thống: cách biểu lộ bên ngoài của hệ thống dựa trên máy tính 
với mọi thông tin hỗ trợ.
2. Phân tích và mô hình hóa nhiệm vụ: gồm các bước
• Thiết lập các mục tiêu và ý đồ cho nhiệm vụ
• Ánh xạ từng mục tiêu, ý đồ thành dãy các hành động xác định
• Xác định dãy các hành động khi nó sẽ được thực hiện tại mức giao diện
• Chỉ ra trạng thái của hệ thống, tức là giao diện giống thế nào vào lúc 
hành động trong dãy đó được thực hiện
• Xác định các cơ chế điều khiển, như thiết bị và hành động sẵn có cho 
người dùng để thay đổi trạng thái hệ thống.
• Chỉ ra cách thức cơ chế điều khiển này ảnh hưởng đến trạng thái hệ 
thống.
• Chỉ ra cách thức người dùng diễn giải trạng thái của hệ thống từ thông 
tin được cung cấp qua giao diện.
3. Vấn đề thiết kế: có bốn vấn đề
• Thời gian hệ thống đáp ứng,
• Tiện nghi giúp đỡ người dùng,
• Giải quyết thông tin lỗi,
• Gán nhãn chỉ lệnh.
a. Thời gian hệ thống đáp ứng: chứa hai đặc trưng quan trọng là độ dài và độ 
biến thiên. Cần chú ý nếu thời gian đáp ứng quá lâu thì người sử dụng nhàm chán còn 
nếu sự đáp ứng quá nhanh thì người sử dụng dễ mắc sai lầm do vội vã.
b. Tiện nghi giúp đỡ: phải trả lời các câu hỏi
+ Trợ giúp có sẵn với mọi chức năng vào mọi lúc không?
+ Người sử dụng sẽ yêu cầu trợ giúp thế nào?
+ Trợ giúp sẽ được trình bày như thế nào?
+ Người sử dụng sẽ trở về tương tác thông thường thế nào?
+ Thông tin trợ giúp được cấu trúc thế nào?
c. Giải quyết thông báo lỗi: thể hiện ở
+ Thông báo nên mô tả vấn đề mà người dùng có thể hiểu được
83
Chương 4: Thiết kế phần mềm
+ Thông báo nên đưa ra những lời khuyên có tính xây dựng để khôi phục từ 
lỗi
+ Thông báo nên chỉ ra bất kỳ hậu quả lỗi tiêu cực nào để người dùng có thể 
kiểm tra. Ví dụ: không có file dữ liệu.
+ Thông báo nên đi kèm tín hiệu nghe, thấy được
+ Không đưa ra các thông báo hàm ý trách móc người dùng
d. Gán nhãn chỉ lệnh:
+ Mọi tùy chọn đơn có tương ứng với một chỉ thị không?
+ Các lệnh sẽ có dạng nào; các từ gõ vào
+ Việc học và nhớ lệnh khó đến đâu? Có thể làm gì khi quên mất chỉ lệnh.
+ Liệu chỉ lệnh có phù hợp với người dùng hay không?
4. Công cụ cài đặt: các công cụ sẵn có để thiết kế giao diện.
5. Tiến hóa thiết kế
Khi có một mô hình thiết kế giao diện được tạo ra thì áp dụng các tiêu chuẩn 
đánh giá để thiết kế giao diện. Cuộc xét duyệt gồm các vần đề:
+ Độ dài và độ phức tạp của đặc tả viết về hệ thống và giao diện của nó cung 
cấp một chỉ dẫn về khối lượng học tập người dùng hệ thống cần học.
+ Số các chỉ lệnh được xác định và số trung bình các đối số trên chỉ lệnh đưa ra 
một chỉ dẫn về thời gian tương tác và hiệu quả tổng thể của hệ thống.
+ Số các hành động, chỉ lệnh và trạng thái hệ thống được mô hình thiết kế nêu 
ra cũng chỉ ra khối lượng cần nhớ trên người dùng hệ thống.
+ Phong cách tương tác, tiện nghi giúp đỡ và giao thức xử lý lỗi đưa ra một chỉ 
dẫn chung về độ phức tạp của giao diện và mức độ ngưòi dùng sẽ chấp nhận nó.
Quy trình đánh giá thiết kế giao diện được mô tả như sau:
84
Thiết kế giao diện hoàn tất
Thiết kế sơ bộ
Xây dựng giao diện 
bản mẫu 1
Người dùng đánh 
giá giao diện
Xây dựng giao diện 
bản mẫu n
Tiến hành sửa 
đổi thiết kế 
Người thiết kế 
nghiên cứu đánh giá
Chương 4: Thiết kế phần mềm
4.7.4. Hướng dẫn thiết kế giao diện
a. Hướng dẫn về tương tác chung: giao diện phải
• Nhất quán,
• Cho thông tin phản hồi có nghĩa,
• Yêu cầu kiểm chứng mọi hành động phá hủy không tầm thường,
• Cho phép dễ dàng lần ngược nhiều hành động ,
• Tìm kiếm tính hiệu quả trong đối thoại, vận động và ý nghĩa,
• Dung thứ cho sai lầm,
• Phân loại các hoạt động theo chức năng và tổ chức màn hình hài hòa theo 
vùng,
• Cung cấp tiện nghi trợ giúp làm ngữ cảnh,
• Dùng các động từ đơn giản hay cụm từ ngắn để đặt tên chỉ lệnh,...
b. Hướng dẫn về hiển thị thông tin
• Chỉ hiển thị thông tin có liên quan đến ngữ cảnh hiện tại,
• Đừng chôn vùi người dùng dưới dữ liệu, hãy dùng định dạng trình bày cho 
phép hấp thu nhanh chóng thông tin,
• Dùng nhãn nhất quán, cách viết tắt chuẩn và màu sắc dự kiến trước được,
• Cho phép người dùng duy trì ngữ cảnh trực quan,
• Đưa ra các thông báo lỗi có nghĩa,
• Dùng chữ hoa, chữ thường, thụt cấp và gộp nhóm văn bản để trợ giúp cho 
việc hiểu,
• Sử dụng cửa sổ để đóng khung các kiểu thông tin khác nhau,
• Dùng cách hiển thị "tương tự" để biểu diễn thông tin dễ được hấp thụ hơn 
với dạng biểu diễn này,
• Xem xét vùng hiển thị có sẵn trên màn hình và dùng nó một cách có hiệu 
quả,...
c. Hướng dẫn về vào dữ liệu
• Tối thiểu số hành động đưa vào mà người sử dụng thực hiện,
• Duy trì sự nhất quán giữa hiển thị thông tin và cái vào dữ liệu,
• Cho phép người dùng làm phù hợp cái vào,
• Tương tác nên mềm dẻo và hài hòa với mode đưa vào ưa thích,
• Khử kích hợp các lệnh không phù hợp hiện tại,
• Để cho người dùng kiểm soát luồng tương tác,
• Cung cấp trợ giúp cho mọi hành động đưa vào,...
Giao diện người-máy là cánh cửa đi vào phần mềm ứng dụng. Để giao diện đáp 
ứng được yêu cầu thì người thiết kế nó cần phải hiểu biết về nhân tố con người và 
công nghệ giao diện. Thêm vào đó, kiểu cách giao diện, công nghệ phần cứng và phần 
mềm sẵn có, và bản thân ứng dụng cũng có ảnh hưởng đến kết quả cuối cùng. 
85

File đính kèm:

  • pdfGiáo trình Công nghệ phần mềm - Chương 4 Thiết kế phần mềm.pdf