Luồng công việc thiết kế

Một phần của tài liệu Xây dựng hệ thống thông tin Quản lý Nhân sự & Tiền lương trong hệ thống ERP (Trang 42)

IV. Thiết kế

2.Luồng công việc thiết kế

Để nhận được mô hình thiết kế ta cần thực hiện các công việc sau: Thiết kế kiến trúc

Thiết kế một ca sử dụng Thiết kế một lớp

Thiết kế một hệ thống con 3. Thiết kế kiến trúc

Mục đích của thiết kế kiến trúc là phác họa các mô hình thiết kế và sự bố trí của chúng bằng cách xác định:

Các nút và các cấu hình mạng của hệ thống Các hệ thống con và các giao diện của chúng Các lớp thiết kế quan trọng về mặt kiến trúc

Các cơ chế thiết kế chung để xử lý các yêu cầu chung

Các hệ thống con, các giao diện, hoặc các yếu tố thiết kế khác nhận được sẽ được tích hợp vào trong mô hình thiết kế. Sau đó ta cần bảo trì, thẩm định lại và cập nhật mô tả kiến trúc của các mô hình thiết kế và mô hình bố trí

Mô hình bố trí

Mô hình bố trí là một mô hình đối tượng mô tả sự phân bố về mặt vật lỹ của hệ thống dưới dạng phân tán các chức năng trên các nút như thế nào. Mô hình bố trí bao gồm:

· Các nút, các đặc trưng, và các kết nối của chúng · Một sự sắp xếp ban đầu các lớp hoạt động trên các nút

Mỗi nút thể hiện cho một nguồn tài nguyên tính toán. Các nút có các mối quan hệ với nhau thể hiện các phương tiện truyền thống giữa chúng

Mô hình bố trí có thể mô tả rất nhiều cấu hình mạng khác nhau. Chức năng của một nút được xác định bởi các thành phần được triển khai trên các nút đó

Xác định các nút và các cấu hình mạng

Các cấu hình mạng chung thường dùng một dạng mẫu hai/ba tầng trong đó các ứng dụng khách hàng được phân vào một tâng, chức năng cơ sở dữ liệu vào một tầng, và logic nghiệp vụ/ứng dụng vào một tầng. Dạng đơn giản của kiến trúc máy khách/dịch vụ là một trường hợp đặc biệt của dạng mẫu ba tâng, trong đó logic nghiệp vụ/ứng dụng được bố trí vào cùng trong một tầng

Những mặt khác nhau của các cấu hình mạng cần lưu ý bao gồm:

· Những nút nào liên quan với nhau, các khả nang về công suất xử lý và kích cỡ bộ nhớ của chúng là bao nhiêu?

· Kết nối giữa các nút thuộc loại nào, các giao thức truyền thông giữa chúng là gì?

· Các đặc trưng của các kết nối và các giao thức truyền

· Nhu cầu về khả năng xử lý dư thừa, về chế độ hỏng hóc, về sự di trú tiến trình, về việc duy trì các bản sao dữ liệu dự phòng?

Xác định các hệ thống con và các giao diện của chúng

Các hệ thống con thiết kế cung cấp một cách thức để tổ chức mô hình thiết kế thành các cụm có thể quản lý được. Chúng có thể được xác minh ngay từ đầu như là một cách để phân chia công việc thiết kế hoặc được xác định khi mô hình thiết kế tiến hóa và một cấu trúc lớn cần được phân rã ra

Việc đưa các hệ thống con như thế vào trong mô hình thiết kế cho phép có thể lập luận và đánh giá các cơ hội tái sử dụng của chúng

Hệ thống con thiết kế

Một hệ thống con có thể bao gồm các lớp thiết kế, các thực thi ca sử dụng, các giao diện và các hệ thống con. Ngoài ra, một hệ thống con có thể còn cung cấp các giao diện thể hiện cho các chức năng xuất ra dưới dạng các tác vụ

Xác định các hệ thống con ứng dụng

Trước hết xác định các hệ thống con trong các tầng ứng dụng cụ thể và tầng ứng dụng tổng quát

Các gói phân tích đã được tìm thấy trong quá trình phân tích có thể được sử dụng càng nhiều càng tốt để xác định các hệ thống con tương ứng bên trong mô hình thiết kế. Điều này là đặc biệt quan trọng khi xảy ra đối với các gói dịch vụ, giúp chúng ta xác định các hệ thống con dịch vụ tương ứng mà không phá vỡ cấu trúc của hệ thống tùy theo dịch vụ mà hệ thống cung cấp. Tuy nhiên, việc xác định ban đầu các hệ thống con này sẽ được tinh chế lại trong quá trình thiết kế. Việc thẩm định sự phân rã hệ thống con ban đầu này có thể là cần thiết trong một số trường hợp

Xác định các hệ thống con phần giữa và phần mềm hệ thống

Phần giữa và phần mềm hệ thống là nền móng của một hệ thống, vì mọi tính chức năng đều ở đỉnh của phần mềm như là các hệ điều hành, các hệ quản trị cơ sở dữ liệu, phần mềm truyền thống, các công nghệ phân tán đối tượng, các bộ dụng cụ thiết kế GUI, và các công nghệ quản lý giao dịch

Xác định các mối quan hệ phụ thuộc giữa các hệ thống con

Các mối quan hệ phụ thuộc giữa các hệ thống con phải được xác định nếu nội dung của chúng có các quan hệ lẫn nhau. Hướng của mối quan hệ phụ thuộc phải là cùng hướng với hướng của mối quan hệ. Hãy xét các mối quan hệ phụ thuộc giữa các gói phân tích tương ứng với các hệ thống con thiết kế (adsbygoogle = window.adsbygoogle || []).push({});

Xác định các giao diện của hệ thống con

Các giao diện được một hệ thống con cung cấp xác định các thao tác mà từ “bên ngoài” hệ thống con đó có thể được truy nhập đến nó. Các giao diện này do các lớp hoặc các hệ thống con khác bên trong hệ thống con đó cung cấp

Giao diện

Các giao diện được sử dụng để đặc tả các tác vụ mà các lớp thiết kế và các hệ thống con cung cấp. Phần lớn các giao diện giữa các hệ thống con đều mang ý nghĩa về mặt kiến trúc, xác định phạm vi và cách thức mà các hệ thống con được phép tương tác với nhau

Một lớp thiết kế cung cấp một giao diện thì cũng phải cung cấp các phương thức thực thi các tác vụ của giao diện đó. Một hệ thống con cung cấp một giao diện

thì phải chứa đựng các lớp thiết kế hoặc các hệ thống con khác cung cấp phương thức thực thi giao diện đó

Xác định các lớp thiết kế quan trọng về mặt kiến trúc

Trong thực tế, ta sớm xác định các lớp thiết kế quan trọng về mặt kiến trúc trong vòng đời của phần mềm để khởi đầu công việc thiết kế. Tuy nhiên, đa số các lớp thiết kế sẽ được xác định khi thiết kế các lớp và được tinh chế lại dựa trên các kết quả có được từ hoạt động thiết kế ca sử dụng

Mô tả kiến trúc thiết kế

Mô tả kiến trúc cho một mô hình thiết kế thường gồm: Các hệ thống con, các giao diện và các phụ thuộc giữa chúng

Các lớp thiết kế cốt lõi, chẳng hạn như các lớp thiết kế mà lần vết tới các lớp phân tích mang ý nghĩa kiến trúc, các lớp động, và các lớp thiết kế có tính chất tổng quát và trung tâm, thể hiện cho các cơ chế thiết kế chung và có nhiều mối quan hệ với các lớp thiết kế khác

Các thực thi ca sử dụng thiết kế để thực thi những chức năng cốt lõi và quan trọng nhất cần được phát triển trong vòng đời phát triển, liên quan rất nhiều các lớp thiết kế và có mức độ bao trùm lớm, qua nhiều hệ thống con khác nhau, hoặc liên quan đến những lớp thiết kế cốt lõi

+ Xác định các lớp thiết kế từ các lớp phân tích

Lúc bắt đầu một số lớp thiết kế có thể được phác thảo từ các lớp phân tích quan trọng về mặt kiến trúc đã xác định trong quá trình phân tích. Tương tự, các mối quan hệ giữa các lớp phân tích này có thể được dùng để xác định các mối quan hệ giữa các lớp thiết kế tương ứng

+ Xác định các lớp hoạt động

Ta cũng có thể xác định các lớp hoạt động do hệ thống yêu cầu bằng cách xem xét các yêu cầu đồng thời đối với hệ thống, chẳng hạn như:

· Các yêu cầu về hiệu năng, lưu lượng, và tính sẵn sàng mà các tác nhân cần có khi chúng tương tác với hệ thống. Chẳng hạn, nếu một tác nhân nào đó có các yêu cầu cao về thời gian phúc đáp, thì yêu cầu đó có thể được quản

lý bằng một đối tượng hoạt động dành riêng để nhận đầu vào từ tác nhân và cung cấp đầu ra cho tác nhân đó – một đối tượng mà không bị dừng lại chỉ vì các đối tượng hoạt động khác chịu tải nặng rồi

· Sự phân bố hệ thống trên các nút. Các đối tượng hoạt động cần hỗ trợ bằng sự phân bố trên nhiều nút khác nhau

· Các yêu cầu khác như là các yêu cầu về sự khởi động và kết thúc hệ thống Để phác thảo các lớp hoạt động ban đầu có thể sử dụng các kết quả của sự phân tích mô hình bố trí làm đầu vào rồi sau đó bố trí các thiết kế tương ứng của các lớp phân tích cho các nút thông qua các lớp hoạt động

Một khả năng khác để phác thảo các lớp hoạt động là sử dụng các hệ thống con được xác định trước đó và phân toàn bộ một hệ thống con cho một nút riêng bằng cách xác định một lớp hoạt động bên trong hệ thống con

Xác định các cơ chế thiết kế chung

Ta cần đưa ra một bộ các cơ chế thiết kế chung. Các cơ chế này có thể biểu thị là các lớp thiết kế, các cộng tác, hoặc ngay cả các hệ thống con

Các yêu cầu cần phải xử lý thường có liên quan tới các vấn đề nhau sau: · Tính lâu bền

· Phân bố đối tượng trong suốt · Các đặc trưng an toàn

· Phát hiện lỗi và phục hồi · Quản lý giao dịch

Trong một số trường hợp, không thể tìm tháy cơ chế ngay nhưng thay vào đó lại tìm được khi các thực thi ca sử dụng và các lớp thiết kế được khảo sát

Người phát triển cũng phải xác định các cộng tác chung mà chúng có thể làm việc như là các dạng mẫu(pattern) và được sử dụng bởi nhiều thực thi ca sử dụng bên trong mô hình thiết kế

4. Thiết kế một ca sử dụng

Xác định các lớp thiết kế và/hoặc các hệ thống con mà các thể hiện của chúng là cần thiết để thực hiện luồng các sự kiện của ca sử dụng đó (adsbygoogle = window.adsbygoogle || []).push({});

Phân phối hành vi của ca sử dụng cho các đối tượng thiết kế tương tác và/hoặc cho các hệ thống con tham gia

Xác định các yêu cầu về các tác vụ của các lớp thiết kế và/hoặc các hệ thống con và các giao diện của chúng

Nắm bắt các yêu cầu triển khai cho ca sử dụng đó Xác định các lớp thiết kế tham gia

Chúng ta xác định các lớp thiết kế cần thiết để thực thi ca sử dụng thiết kế như sau: · Nghiên cứu các lớp phân tích tham gia vào việc thực thi ca sử dụng

phân tích. Xác định các lớp thiết kế bằng cách lần vết tới các lớp phân tích đó

· Nghiên cứu các yêu cầu đặc biệt của việc thực thi ca sử dụng phân tích tương ứng. Xác định các lớp thiết kế cần để thực thi các yêu cầu đặc biệt đó

· Nếu vẫn còn thiều một lớp thiết kế nào đó để thiết kế một ca sử dụng cụ thể thì lớp được yêu cầu đó phải được xác định

Ta tập hợp các lớp thiết kế tham gia thực thi ca sử dụng vào một biểu đồ lớp. Sử dụng biểu đồ này để chỉ ra các mối quan hệ đã được dùng trong việc thực thi ca sử dụng này

Thực thi ca sử dụng thiết kế

Một thực thi ca sử dụng thiết kế là một sự cộng tác trong mô hình thiết kế miêu tả làm thế nào một ca sử dụng cụ thể được thực thi và được thể hiện dưới dạng các lớp thiết kế và các đối tượng của chúng. Một thực thi ca sử dụng thiết kế cung cấp một “lần vết” tới một thực thi ca sử dụng phân tích trong mô hình phân tích, tức là lần vết tới một ca sử dụng trong mô hình ca sử dụng

Một thực thi ca sử dụng thiết kế có thể mô tả bằng văn bản luồng các sự kiện, các biểu đồ lớp với các lớp thiết kế tham gia, và các biểu đồ tương tác mô tả sự thực thi của một luồng hoặc một kịch bản cụ thể của ca sử dụng dưới dạng tương tác giữa các đối tượng thiết kế

Một thực thi ca sử dụng thiết kế cung cấp một sự thực thi về mặt vật lý đối với một thực thi ca sử dụng phân tích và nó cũng đồng thời quản lý phần lớn các yêu cầu phi chức năng đã được nắm bát trong thực thi ca sử dụng phân tích

Mô tả các tương tác giữa các đối tượng thiết kế

Khi chúng ta đã có một phác thảo về các lớp thiết kế cần thiết để thực thi ca sử dụng, ta cần phải mô tả cách thức mà các đối tượng thiết kế tương ứng tương tác với nhau. Điều này được tiến hành bằng cách sử dụng các biểu đồ tuần tự chức các thể hiện của tác nhân tham gia, các đối tượng thiết kế và sự truyền thông báo giữa chúng. Nếu các ca sử dụng có các luồng hoặc luồng con khác nhau và tách biệt thì thường phải tạo ra biểu đồ tuần tự cho mỗi luồng tách biệt đó

Trước hết, hãy nghiên cứ việc thực thi ca sử dụng phân tích tương ứng để đưa ra một phác thảo về chuỗi các thông báo cần thiết giữa các đối tượng thiết kế. Trong một số trường hợp, có thể chuyển trực tiếp một biểu đồ cộng tác thực thi ca sử dụng phân tích thành một phác thảo ban đầu của một biểu đồ thiết kế tuần tự tương ứng Khi chi tiết hóa các biểu đồ tương tác, phần lớn các trường hợp sẽ tìm ra các con đường – phương án mới mà ca sử dụng đó có thể chọn. Những con đường như thế có thể được mô tả bằng các nhãn của các biểu đồ hoặc trong chính các biểu đồ tương tác của chúng. Khi đưa thêm thông tin mới vào, người phát triển thường phát hiện ra các ngoại lệ mới mà đã bị bỏ qua trong quá trình nắm bắt hoặc phân tích các yêu cầu.

Xác định các hệ thống con và các giao diện tham gia

Chúng ta đã thiết kế một ca sử dụng dướ dạng một sự cộng tác của các lớp và các đối tượng của chúng. Tuy nhiên, đôi khi ta nên thiết kế một ca sử dụng dưới dạng các hệ thống con tham gia và/hoặc các giao diện của chúng. Chẳng hạn, trong quá trình phát triển từ trên xuống, cần phải nắm bắt các yêu cầu về các hệ thống con và các giao diện của chúng trước khi thiết kế phần bên trong. Trong những trường hợp như thế, một thực thi ca sử dụng thiết kế có thể được mô tả ở nhiều mức trong hệ thống phân cấp các hệ thống con

Việc tìm ra các hệ thống con cần có để thực thi ca sử dụng có thể thực hiện bằng cách lần vết tới các lớp phân tích tham gia và thực thi ca sử dụng phân tích tương

ứng. Xác định các gói phân tích mà chúng chứa các lớp phân tích đó, nếu có. Sau đó, xác định các hệ thống con thiết kế mà chúng lần vết tới các gói phân tích đó.

Các hệ thống con có tham gia vào việc thực thi ca sử dụng được đưa vào một biểu đồ lớp. Ta sẽ dùng biểu đồ lớp này để đưa ra các mối quan hệ phụ thuộc giữa các hệ thống con đó và các giao diện bất kỳ mà đã được dùng trong việc thực thi ca sử dụng

Mô tả các tương tác giữa các hệ thống con

Khi chúng ta có một phác thảo về các hệ thống con cần thiết để thực thi ca sử dụng, chúng ta phải mô tả cách thức mà các đối tượng của các lớp trong chúng tương tác

Một phần của tài liệu Xây dựng hệ thống thông tin Quản lý Nhân sự & Tiền lương trong hệ thống ERP (Trang 42)