phan mem

Phân tích và thiết kế phần mềm bao gồm tất cả các hoạt động giúp chuyển đổi đặc tả yêu cầu thành triển khai. Thông số kỹ thuật yêu cầu xác định tất cả các kỳ vọng chức năng và phi chức năng từ phần mềm. Các thông số kỹ thuật yêu cầu này có dạng tài liệu mà con người có thể đọc và hiểu được, mà máy tính không phải làm gì.

Phân tích và thiết kế phần mềm là giai đoạn trung gian, giúp chuyển đổi các yêu cầu mà con người có thể đọc được thành mã thực tế.

Chúng ta hãy xem một số công cụ phân tích và thiết kế được sử dụng bởi các nhà thiết kế phần mềm:

Sơ đồ lung d liu

Sơ đồ luồng dữ liệu là biểu diễn đồ họa của luồng dữ liệu trong một hệ thống thông tin. Nó có khả năng mô tả luồng dữ liệu vào, luồng dữ liệu ra và dữ liệu được lưu trữ. DFD không đề cập bất cứ điều gì về cách dữ liệu chảy qua hệ thống.

Có một sự khác biệt nổi bật giữa DFD và Flowchart. Lưu đồ mô tả luồng điều khiển trong các mô-đun chương trình. DFD mô tả luồng dữ liệu trong hệ thống ở các cấp độ khác nhau. DFD không chứa bất kỳ phần tử điều khiển hoặc nhánh nào.

Các loi DFD

Sơ đồ luồng dữ liệu là logic hoặc vật lý.

  • DFD logic – Loại DFD này tập trung vào quy trình hệ thống và luồng dữ liệu trong hệ thống. Ví dụ: trong hệ thống phần mềm Ngân hàng, cách dữ liệu được di chuyển giữa các thực thể khác nhau.
  • DFD vật lý – Loại DFD này cho thấy luồng dữ liệu thực sự được thực hiện như thế nào trong hệ thống. Nó cụ thể hơn và gần với việc thực hiện.

Thành phn DFD

DFD có thể đại diện cho Nguồn, đích, lưu trữ và luồng dữ liệu bằng cách sử dụng bộ thành phần sau

thiết kế phần mềm
  • Thực thể – Thực thể là nguồn và đích của dữ liệu thông tin. Các thực thể được đại diện bởi một hình chữ nhật với tên tương ứng của chúng.
  • Quy trình – Các hoạt động và hành động được thực hiện trên dữ liệu được biểu thị bằng Hình tròn hoặc Hình chữ nhật có cạnh tròn.
  • Lưu trữ dữ liệu – Có hai biến thể lưu trữ dữ liệu – nó có thể được biểu diễn dưới dạng hình chữ nhật không có cả hai cạnh nhỏ hơn hoặc dưới dạng hình chữ nhật có mặt mở chỉ thiếu một cạnh.
  • Luồng dữ liệu – Chuyển động của dữ liệu được hiển thị bằng các mũi tên chỉ. Chuyển động của dữ liệu được hiển thị từ gốc mũi tên là nguồn hướng tới đầu mũi tên là đích.

Các cp độ ca DFD

Cấp độ 0 – DFD cấp độ trừu tượng cao nhất được gọi là DFD cấp độ 0, mô tả toàn bộ hệ thống thông tin dưới dạng một sơ đồ che giấu tất cả các chi tiết cơ bản. DFD cấp 0 còn được gọi là DFD cấp ngữ cảnh.

thiết kế phần mềm

Cấp độ 1 – DFD Cấp độ 0 được chia nhỏ thành DFD Cấp độ 1 cụ thể hơn. DFD cấp 1 mô tả các mô-đun cơ bản trong hệ thống và luồng dữ liệu giữa các mô-đun khác nhau. DFD cấp 1 cũng đề cập đến các quy trình và nguồn thông tin cơ bản.

thiết kế phần mềm
  • Cấp độ 2 – Ở cấp độ này, DFD hiển thị cách dữ liệu chảy bên trong các mô-đun được đề cập ở Cấp độ 1.

DFD cấp cao hơn có thể được chuyển đổi thành DFD cấp thấp cụ thể hơn với mức độ hiểu biết sâu hơn trừ khi đạt được mức đặc tả mong muốn.

Biu đồ cu trúc

Biểu đồ cấu trúc là biểu đồ bắt nguồn từ Sơ đồ luồng dữ liệu. Nó đại diện cho hệ thống chi tiết hơn DFD. Nó chia nhỏ toàn bộ hệ thống thành các mô-đun chức năng thấp nhất, mô tả các chức năng và chức năng con của từng mô-đun của hệ thống chi tiết hơn DFD.

Biểu đồ cấu trúc thể hiện cấu trúc phân cấp của các phân hệ. Tại mỗi lớp, một nhiệm vụ cụ thể được thực hiện.

Dưới đây là các ký hiệu được sử dụng trong việc xây dựng các biểu đồ cấu trúc –Mô-đun – Nó đại diện cho quá trình hoặc chương trình con hoặc nhiệm vụ. Một mô-đun điều khiển phân nhánh thành nhiều mô-đun con. Mô-đun thư viện có thể tái sử dụng và có thể gọi được từ bất kỳ mô-đun

thiết kế phần mềm

Điều kiện – Nó được thể hiện bằng viên kim cương nhỏ ở đáy mô-đun. Nó mô tả rằng mô-đun điều khiển có thể chọn bất kỳ quy trình phụ nào dựa trên một số điều kiện.

thiết kế phần mềm

Nhảy – Một mũi tên được hiển thị chỉ vào bên trong mô-đun để mô tả rằng điều khiển sẽ nhảy vào giữa mô-đun phụ

thiết kế phần mềm

Vòng lặp – Mũi tên cong biểu thị vòng lặp trong mô-đun. Tất cả các mô-đun con được bao phủ bởi quá trình thực hiện lặp lại mô-đun

thiết kế phần mềm

Luồng dữ liệu – Mũi tên có hướng với vòng tròn trống ở cuối thể hiện luồng dữ liệu.

thiết kế phần mềm

Luồng điều khiển – Mũi tên có hướng với vòng tròn đầy ở cuối thể hiện luồng điều khiển

thiết kế phần mềm

Sơ đồ HIPO

Sơ đồ HIPO (Hierarchical Input Process Output) là sự kết hợp của hai phương pháp có tổ chức để phân tích hệ thống và cung cấp phương tiện tài liệu. Mô hình HIPO được IBM phát triển vào năm 1970.

Sơ đồ HIPO thể hiện sự phân cấp của các module trong hệ thống phần mềm. Nhà phân tích sử dụng sơ đồ HIPO để có được chế độ xem cấp cao về các chức năng của hệ thống. Nó phân tách các chức năng thành các chức năng con theo cách phân cấp. Nó mô tả các chức năng được thực hiện bởi hệ thống.

Sơ đồ HIPO là tốt cho mục đích tài liệu. Biểu diễn đồ họa của chúng giúp các nhà thiết kế và quản lý dễ dàng có được ý tưởng hình ảnh về cấu trúc hệ thống.

thiết kế phần mềm

Trái ngược với sơ đồ IPO (Input Process Output), mô tả luồng điều khiển và dữ liệu trong một mô-đun, HIPO không cung cấp bất kỳ thông tin nào về luồng dữ liệu hoặc luồng điều khiển.

thiết kế phần mềm

Ví d

Cả hai phần của sơ đồ HIPO, Bản trình bày phân cấp và Biểu đồ IPO đều được sử dụng để thiết kế cấu trúc của chương trình phần mềm cũng như tài liệu giống nhau.

Tiếng Anh có cu trúc

Hầu hết các lập trình viên không biết về bức tranh toàn cảnh của phần mềm nên họ chỉ dựa vào những gì người quản lý yêu cầu họ làm. Trách nhiệm của quản lý phần mềm cao hơn là cung cấp thông tin chính xác cho các lập trình viên để phát triển mã chính xác nhưng nhanh chóng.

Các hình thức phương pháp khác, sử dụng biểu đồ hoặc sơ đồ, đôi khi có thể được diễn giải khác nhau bởi những người khác nhau.

Do đó, các nhà phân tích và thiết kế phần mềm đưa ra các công cụ như tiếng Anh có cấu trúc. Nó không là gì ngoài việc mô tả những gì được yêu cầu để viết mã và cách viết mã. Tiếng Anh có cấu trúc giúp lập trình viên viết mã không có lỗi.

Các dạng phương pháp khác, sử dụng biểu đồ hoặc sơ đồ, đôi khi có thể được diễn giải khác nhau bởi những người khác nhau. Ở đây, cả tiếng Anh có cấu trúc và mã giả đều cố gắng giảm thiểu khoảng cách hiểu biết đó.

Tiếng Anh có cấu trúc là Nó sử dụng các từ tiếng Anh đơn giản trong mô hình lập trình có cấu trúc. Nó không phải là mã cuối cùng mà là một loại mô tả những gì được yêu cầu để viết mã và cách viết mã. Sau đây là một số mã thông báo của lập trình có cấu trúc.

IF-THEN-ELSE,  
DO-WHILE-UNTIL

Nhà phân tích sử dụng cùng một biến và tên dữ liệu, được lưu trữ trong Từ điển dữ liệu, giúp viết và hiểu mã đơn giản hơn nhiều.

Ví d

Chúng ta lấy ví dụ tương tự về Xác thực khách hàng trong môi trường mua sắm trực tuyến. Quy trình xác thực khách hàng này có thể được viết bằng tiếng Anh có cấu trúc như sau:

Enter Customer_Name
SEEK Customer_Name in Customer_Name_DB file
IF Customer_Name found THEN
   Call procedure USER_PASSWORD_AUTHENTICATE()
ELSE
   PRINT error message
   Call procedure NEW_CUSTOMER_REQUEST()
ENDIF

Mã được viết bằng tiếng Anh có cấu trúc giống tiếng Anh nói hàng ngày hơn. Nó không thể được thực hiện trực tiếp như một mã phần mềm. Tiếng Anh có cấu trúc độc lập với ngôn ngữ lập trình.

Mã gi

Mã giả được viết gần với ngôn ngữ lập trình hơn. Nó có thể được coi là ngôn ngữ lập trình tăng cường, có đầy đủ các nhận xét và mô tả.

Mã giả tránh khai báo biến nhưng chúng được viết bằng một số cấu trúc của ngôn ngữ lập trình thực tế, như C, Fortran, Pascal, v.v.

Mã giả chứa nhiều chi tiết lập trình hơn tiếng Anh có cấu trúc. Nó cung cấp một phương thức để thực hiện tác vụ, như thể một máy tính đang thực thi mã.

Ví d

Chương trình in Fibonacci đến n số.

void function Fibonacci
Get value of n;
Set value of a to 1;
Set value of b to 1;
Initialize I to 0
for (i=0; i< n; i++)
{
   if a greater than b 
   {
      Increase b by a;
      Print b;
   } 
   else if b greater than a
   {
      increase a by b;
      print a;
   }
}

Bng quyết định

Bảng Quyết định biểu thị các điều kiện và các hành động tương ứng được thực hiện để giải quyết chúng, ở định dạng bảng có cấu trúc.

Nó là một công cụ mạnh mẽ để gỡ lỗi và ngăn ngừa lỗi. Nó giúp nhóm các thông tin tương tự vào một bảng duy nhất và sau đó bằng cách kết hợp các bảng, nó giúp đưa ra quyết định dễ dàng và thuận tiện.

To bng quyết định

Để tạo bảng quyết định, nhà phát triển phải thực hiện theo bốn bước cơ bản:

  • Xác định tất cả các điều kiện có thể được giải quyết
  • Xác định hành động cho tất cả các điều kiện được xác định
  • Tạo quy tắc tối đa có thể
  • Xác định hành động cho từng quy tắc

Bảng quyết định phải được xác minh bởi người dùng cuối và gần đây có thể được đơn giản hóa bằng cách loại bỏ các quy tắc và hành động trùng lặp.

Ví d

Hãy để chúng tôi lấy một ví dụ đơn giản về vấn đề hàng ngày với kết nối Internet của chúng tôi. Chúng tôi bắt đầu bằng cách xác định tất cả các sự cố có thể phát sinh khi khởi động internet và các giải pháp khả thi tương ứng.

Chúng tôi liệt kê tất cả các sự cố có thể xảy ra trong cột điều kiện và các hành động có thể xảy ra trong cột Hành động.

xem thêm : Mô hình thực thể mối quan hệ

Để lại một bình luận