ITMS-ERP 2011 Version 1.0

Thiết kế phần mềm




1. Thiết kế phần mềm là gì?


Thiết kế phần mềm có tên tiếng anh là "Design Pattern". Từ "Pattern" có từ ngành kiến trúc, nó có nghĩa là cách giải quyết vần đề trong một ngữ cảnh, hoàn cảnh cụ thể. Vậy "Design Pattern" là gì?
Design Pattern là bài toán thông dụng cần giải quyết và cách giải quyết bài toán đó trong từng hoàn cảnh cụ thể. Nó không đơn thuần là một bước trong nào đó trong giai đoạn phát triển phần mềm, mà nó mang tính sáng tạo. Một phần mềm có thể hoàn thành mà không có sự góp mặt của Design Pattern nhưng sự có mặt của Design Pattern sẽ giúp xác định bài toán nhanh hơn và giải quyết một cách hiệu quả hơn. Design Pattern sẽ cô lập tất cả các mã nguồn, từ đó tăng khả năng tái sử dụng cao.
Nói cách khác: Design Pattern như như giai đoạn phát thảo bản vẽ của một kiến trúc sư.

2. Vì sao phải biết Design Pattern?

Nói đến công nghệ phần mềm, không ai không biết chu kì phát triển của nó: Thu thập phân tích yêu cầu - Thiết kế phần mềm - Coding - Kiểm thử bảo trì - Triển khai hệ thống. Qua chu kì trên đã cho thấy Thiết kế phần mềm mang một tầm ảnh hưởng như thể nào đến sự thành bại của một phần mềm. Các bạn thử tưởng tượng, Thiết kế phần mềm như một kiến trúc sư phát thảo bản vẽ cho một ngôi nhà. Người thợ(lập trình viên) chỉ có thể làm theo những gì bản vẽ nêu ra. Nếu bản vẽ đây đủ, chính xác thì chúng ta có một ngôi nhà hoàn hảo và ngược lại. Kiến trúc phần mềm cũng thế, người lập trình(programmer) sẽ tuân thủ những quy tắc trong giai đoạn Thiết kế và làm đúng như vậy!

3. Các thành phần trong Thiết kế phần mềm:

Dựa vào kiến thức đã học và các nguồn tài liệu, mình xin trình bày một số thành phần chủ yếu của Thiết kế phần mềm một cách khái quát:

a) Thiết kế kiến trúc:

Trình bày các thành phần kiến trúc của một hệ thống phần mềm, nó bao gồm kiến trúc về phần cứng và phần mềm nhằm giúp cho người lập trình dễ dàng nhận biết và áp dụng phù hợp.

==>Mô hình kiến trúc hệ thống: Có 3 loại kiến trúc cơ bản: Server-based Architecture, Client-based Architecture và Client-server based Architecture.
-->Server-based Architecture: Gồm một client đóng vai trò là một thiết bị đầu cuối(termial) và một server host(mainframe computer) có chức năng lưu trữ dữ liệu, thực thi và truy cập dữ liệu logic.

-->Client-based Architecture: Gồm 2 microcomputer, trong đó 1 đóng vai trò là server(lưu trữ dữ liệu) và một đóng vai trò là client chứa các thành phần xử lý và truy cập logic.
-->Client-Server based Architecture: với loại kiến trúc này, client sẽ chứa các thành phần trình bày và thực thi logic, còn server sẽ chứa chức năng truy cập và lưu trữ dữ liệu.

==>Kiến trúc phần mềm: Trình bày cách thức mà phần mềm sẽ hoạt động, nó như một đường đi bên trong của hệ thống. Mình xin lấy một ví dụ: Từ client, users gửi yêu cầu thông qua window form(web browser). Bên trong bắt đầu xử lý, xác định các control điều khiển, phân chia từng component. Sau đó thông qua phần xử lý data access để truy xuất và xử lý dữ liệu....


b. Thiết kế giao diện:

Phần này trình bày các giao diện mà sẽ được coding trong tương lai, nó có thể là webform hay windowform. Với mỗi giao diện trình bày cho một chức năng chính. Các thành phần xử lý trên giao diện được đánh số và viết đặc tả. Ví dụ ta đánh dấu 1 textbox trên winform là 1; đặc tả:1,Textbox,txtHoten,Họ tên sinh viên. Tương ứng: stt,loại control, name, diễn giải.

Sự kiện ITM

Đang cập nhật thông tin ...

Tin tuyển dụng

các gói dịch vụ hỗ trợ doanh nghiệp

phần mềm quản lý cho doanh nghiệp

Tìm đối tác xuất nhập khẩu

Điểm đến của các nhà đầu tư

Các dự án đang thực hiện

Học viên tiêu biểu

Học viên ITM tại Nhật Bản


Thống kê: Đang trực tuyến: 7 Lượt truy cập: 261661
ITMS-ERP 2011 Version 1.0