- Chất lượng thiết kế là nhân tố chính quyết định chất lượng phần mềm -Không thiết kế - hoặc thiết kế không tốt dẫn đến phần mềm chất lượng thấp + Không quản lý được những thay đổi yêu cầu
+ Khó kiểm thử + Khó bảo trì
+ Không có tính tiến hóa + Không tái sử dụng được
- Thiết kế tốt mang lại phần mềm chất lượng tốt: + Dễ dàng thay đổi yêu cầu
+ Dễ kiểm thử +Dễ bảo trì
+Có tính tiến hóa cao
+Có khả năng tái sử dụng cao
Kiến trúc của hệ thống được mô tả bởi thành phần phần cứng và phần mềm của hệ thống: - Thành phần phần mềm có thể được mô tả bởi các lớp, gói, hệ thống con và các phụ thuộc, hoặc trong các tập tin thực thi, lớp thư viện và các cơ sở dữ liệu.
- Kiến trúc phần mềm mô hình bằng cách sử dụng sơ đồ lớp và sơ đồ gói vật lý, kiến trúc phần mềm được mô tả bằng cách sử dụng sơ đồ thành phần. Kiến trúc phần cứng, từ quan điểm của các nhà phát triển hệ thống liên quan đến máy tính, thiết bị ngoại vi và mạng mà hệ thống sẽ chạy trên đó. Kiến trúc phần cứng sử dụng biểu đồ triển khai.
8.2. Một số nội dung chính a. Lớp kiến trúc
Entity, lớp biên và lớp điều khiển. Các lớp mà chúng ta có xem xét trong quá trình phân tích có tất cả được quan tâm với mô hình hóa yêu cầu hệ thống. Những lớp khác nhau được gọi là lớp thực thể, các lớp miền hoặc các lớp ứng dụng.
b. Boundary: lớp biên (giao diện)
- Dành cho lớp nằm trên biên hệ thống với thế giới còn lại
- Chúng có thể là form, report, giao diện với phần cứng như máy in, scanner... - Khảo sát biểu đồ UC để tìm kiếm lớp biên
- Mô tả giao diện hệ thống với các tác nhân của nó, tức là với người dùng hoặc với các hệ thống khác. Những lớp được sử dụng để người dùng nhập vào và trả kết quả cho người dùng.
c. Entity: lớp thực thể
- Lớp thực thể là lớp lưu trữ thông tin sẽ ghi vào bộ nhớ ngoài - Tìm chúng trong luồng sự kiện và biểu đồ tương tác
- Thông thường phải tạo ra bảng CSDL cho lớp loại này
- Mỗi thuộc tính của lớp thực thể sẽ là trường trong bảng CSDL d. Control: lớp điều khiển
- Có trách nhiệm điều phối hoạt động của các lớp khác - Thông thường mỗi UC có một lớp điều khiển
- Nó không thực hiện chức năng nghiệp vụ nào
- Các lớp điều khiển khác: điều khiển sự kiện liên quan đến an ninh và liên quan đến giao dịch CSDL
e. Visibility
Khi chúng ta nói về khả năng hiển thị trong mô hình, và trong lập trình, về cơ bản chúng ta đang nói về khả năng giới hạn khả năng tiếp cận các tính năng nhất định của mô hình hoặc chương trình.
f. Gói và sự phụ thuộc
Là một cách tổ chức các thành phần, phần tử trong hệ thống thành các nhóm. Nhiều gói có thể được kết hợp với nhau để trở thành một hệ thống con(subsystem).
Một gói chính nó không đại diện cho bất cứ điều gì trong hệ thống, nhưng được sử dụng để mô hình nhóm đại diện cho những thứ trong hệ thống. Gói cũng có thể được sử dụng đến các lớp nhóm, hợp tác, hệ thống con hoặc xem hệ thống như vậy như là một mô hình trường hợp sử dụng.
Khi chúng ta muốn gom nhóm thành các gói thì các lớp trong một gói phải có liên quan với nhau. Trong hệ thống quản lí linh kiện máy tính, sẽ có lớp biên, lớp điều khiển và lớp lưu trữ cơ sở dữ liệu.
- Các lớp giao tiếp với người dùng sẽ được gom vào 1 nhóm.
- Các lớp check dữ liệu như ngày nhập kho không được để ngoài kiểu datetime… - Các lớp lưu trữ cơ sở dữ liệu hệ thống như LINHKIEN, MAYTINH…
Phụ thuộc tồn tại giữa hai gói, A và B, nếu một phụ thuộc tồn tại giữa bất kỳ lớp nào trong gói A và bất kỳ trong gói B. Một phụ thuộc tồn tại giữa hai lớp.
Ví dụ, họ có một mối quan hệ client-server. Trong một máy chủ-người dùng mối quan hệ người dùng (tức là phụ thuộc) sẽ bị ảnh hưởng bởi thay đổi giao diện-máy chủ. Nếu một hệ thống thay đổi giao diện sẽ ảnh hưởng tới khả năng sử dụng hệ thống của người dùng.
g. Giao diện người dùng
Một trong những khía cạnh quan trọng nhất của bất kỳ hệ thống máy tính là giao diện với người sử dụng. Giao diện là những gì người dùng xem và tương tác với hệ thống, và nếu giao diện không tốt, họ sẽ không sử dụng hệ thống. Đây là một trong những vấn đề quan trọng giúp người dùng có thể tiếp xúc với hệ thống.
Khi thiết kế giao diện, chúng ta phải xem xét ai là người có khả năng sử dụng hệ thống nhiều kinh nghiệm với máy tính? Làm thế nào giúp họ làm quen với hệ thống? Làm thế nào họ sẽ được sử dụng nó? …
Các yêu cầu thiết kế giao diện:
- Hệ thống nên phù hợp, ví dụ như bố trí màn hình nên làm theo cùng một khuôn mẫu chung, nhiệm vụ tương tự nên được thực hiện theo cách tương tự, và tin nhắn từ hệ thống người sử dụng luôn phải ở trong cùng một định dạng. Nhiệm vụ người dùng nhàm chán và dễ bị lỗi nên được giảm thiểu, điều này có nghĩa là hệ thống sẽ cung cấp các phím tắt cho người dùng kinh nghiệm và nếu có thể, dữ liệu cần được nhập vào bằng cách chọn từ một danh mục hơn là đánh máy. Màn hình nên tránh miễn lộn xộn, có chứa tất cả liên quan thông tin…
- Cách bố trí thông tin cần theo một quy tác nhất định, không sử dụng quá nhiều màu trong việc thiết kế giao diện…
- Với những thông tin quan trọng nên được đánh dấu hoặc làm nổi bật hơn so với các thông tin khác…
- Ngôn ngữ được sử dụng trong hướng dẫn và thông báo cho người sử dụng phải rõ ràng, ngắn gọn và không dùng các thuật ngữ. Thông báo lỗi nêu rõ nguyên nhân của lỗi, nếu có thể cho thấy làm thế nào nó có thể được sửa chữa, và cho biết thêm trợ giúp có thể được tìm thấy…
Trên đây là giao diện cho việc quản lí linh kiện máy tính với các chức năng Thêm, Sửa, Xóa, Thoát, Tìm Kiếm và các textbox để nhập thông tin linh kiện.
h. Kết nối các đối tượng trong cơ sở dữ liệu
Nền tảng của một cơ sở dữ liệu quan hệ là bảng. Mỗi bảng đại diện cho một thực thể trong hệ thống mà nó cần phải lưu trữ thông tin. Một bảng là tương tự như một lớp học trong một hệ thống hướng đối tượng trong đó nó cung cấp một mẫu hoặc mô hình cho tất cả các trường hợp của thực thể nó đại diện. Bảng được tạo thành hàng và cột, mỗi cột lưu trữ một trường, hoặc thuộc tính của thực thể, và mỗi hàng lưu trữ một hồ sơ duy nhất, điển hình là hoàn thành thiết lập các giá trị cho một trường hợp duy nhất của thực thể.
Bảng PhongMay với các thuộc tính và một số giá trị:
Bảng NhanVien với các thuộc tính và một số giá trị:
Đây là một liên kết giữa bảng PhongMay và NhanVien 8.3. Tổng kết
Chương này xem xét các hoạt động chủ yếu xảy ra trong quá trình thiết kế tổng thể của hệ thống. Các mô hình sản xuất trong hoạt động thiết kế cho thấy làm thế nào các yếu tố khác nhau của hệ thống sẽ làm việc với nhau. Chương này liên quan đến các khía cạnh của thiết kế có ảnh hưởng đến toàn bộ hệ thống. Các mô hình lớp cho thấy tổng thể cấu trúc của kiến trúc phần mềm một cách hợp lý và phụ thuộc giữa các lớp. Sơ đồ thành phần cho thấy phần mềm tập tin vật lý phụ thuộc của họ. triển khai sơ đồ mô hình các đơn vị phần cứng và liên kết của họ. triển khai sơ đồ cũng có thể được sử dụng để hiển thị các tập tin phần mềm thể chất nằm trên phần cứng, tức là bản đồ các thành phần sơ đồ để sơ đồ triển khai. Một giao diện người sử dụng phải thiết kế để nó là thích hợp cho các loại hình của người sử dụng có liên quan.
PHẦN 9. THIẾT KẾ ĐỐI TƯỢNG VÀ LỚP 9.2. Thiết kế biểu đồ cho từng chức năng 9.2.1. Quản lý linh kiện
a. Thêm linh kiện - Biểu đồ lớp - Biểu đồ tuần tự b. Sửa linh kiện Biểu đồ lớp Biểu đồ tuần tự
c. Xóa linh kiện Biểu đồ lớp
Biểu đồ tuần tự
d. Tìm kiếm linh kiện Biểu đồ lớp
Biểu đồ tuần tự
9.2.2. Quản lý máy tính a. Thêm máy tính Biểu đồ lớp
b. Sửa máy tính Biểu đồ lớp
Biểu đồ tuần tự
Biểu đồ lớp
Biểu đồ tuần tự
d. Tìm kiếm máy tính Biểu đồ lớp
9.2.3. Quản lý nhân viên a. Thêm nhân viên
b. Cập nhật thông tin nhân viên
d. Tím kiếm nhân viên
9.2.4. Quản lý phòng máy a. Thêm phòng máy
c. Xóa phòng máy
d. Tìm kiếm phòng máy
9.2.5. Quản lý phiếu nhập a. Lập phiếu nhập
b. Sửa phiếu nhập
c. Xóa phiếu nhập
e. Thống kê phiếu nhập
9.2.6. Quản lý tài khoản a. Thêm tài khoản