Bài giảng Công nghệ phần mềm - Chương 5: Các mô hình hệ thống
Các yêu cầu của người sử dụng thường được viết bằng ngôn ngữ tự nhiên để những người không có kiến thức về mặt kỹ thuật có thể hiểu được nó. Tuy nhiên, những yêu cầu hệ thống chi tiết phải được mô hình hoá. Mô hình hoá hệ thống giúp cho người phân tích hiểu rõ các chức năng của hệ thống.
Chương 5 Các mô hình hệ thống Giới thiệu Các yêu cầu của người sử dụng thường được viết bằng ngôn ngữ tự nhiên để những người không có kiến thức về mặt kỹ thuật có thể hiểu được nó. Tuy nhiên, những yêu cầu hệ thống chi tiết phải được mô hình hoá. Mô hình hoá hệ thống giúp cho người phân tích hiểu rõ các chức năng của hệ thống. Ta có thể sử dụng các mô hình khác nhau để biểu diễn hệ thống từ nhiều khía cạnh khác nhau. Nội dung Mô hình ngữ cảnh Mô hình ứng xử Mô hình dữ liệu Mô hình đối tượng Mô hình ngữ cảnh Trong quá trình phát hiện và phân tích yêu cầu, chúng ta nên: - Xác định phạm vi hệ thống, tức là phân biệt cái gì là hệ thống và cái gì là môi trường của hệ thống. - Tiếp theo là định nghĩa ngữ cảnh của hệ thống và sự phụ thuộc giữa hệ thống với môi trường của nó. Thông thường, mô hình kiến trúc đơn giản của hệ thống sẽ được tạo ra trong bước này. Mô hình ngữ cảnh (tt) Ví dụ: - mô hình ngữ cảnh của hệ thống ATM Mô hình ngữ cảnh (tt) Mô hình kiến trúc mô tả môi trường của hệ thống, nhưng không chỉ ra quan hệ giữa các hệ thống khác nhau trong một môi trường. Vì vậy, người ta thường sử dụng thêm mô hình tiến trình hoặc mô hình luồng dữ liệu để bổ trợ cho nó. Mô hình ngữ cảnh (tt) Mô hình tiến trình biểu diễn tất cả các tiến trình được hệ thống hỗ trợ. Mô hình luồng dữ liệu có thể được sử dụng để biểu diễn các luồng thông tin đi từ tiến trình này tới tiến trình khác. Xác định phạm vi hệ thống Sự phụ thuộc giữa môi trường và hệ thống Mô hình ứng xử Mô hình ứng xử được sử dụng để mô tả toàn bộ ứng xử của hệ thống. Có hai kiểu mô hình ứng xử là: - Mô hình luồng dữ liệu: biểu diễn cách xử lý dữ liệu trong hệ thống Mô hình ứng xử - Mô hình máy trạng thái: biểu diễn cách đáp ứng của hệ thống với các sự kiện xảy ra. Hai mô hình này biểu diễn những góc nhìn khác nhau, nhưng cả hai đều cần thiết để mô tả ứng xử của hệ thống. Mô hình ứng xử (tt1) Mô hình luồng dữ liệu Mô hình luồng dữ liệu được sử dụng để mô hình hoá quy trình xử lý dữ liệu của hệ thống. Mô hình này sẽ biểu diễn các bước mà luồng dữ liệu phải trải qua trong hệ thống từ điểm đầu tới điểm cuối. 131 Mô hình ứng xử (tt1) Mô hình luồng dữ liệu mô hình hoá hệ thống từ góc độ chức năng. Việc tìm vết và tư liệu hoá quan hệ giữa dữ liệu với một quy trình rất có ích đối với việc tìm hiểu toàn bộ hệ thống. - Mô hình luồng dữ liệu là phần cốt lõi của rất nhiều phương pháp phân tích. Nó chứa các ký pháp rất dễ hiểu đối với khách hàng. 131 Mô hình ứng xử (tt) Mô hình luồng dữ liệu (tt) - Ví dụ: Mô hình luồng dữ liệu của chức năng xử lý đơn hàng Mô hình ứng xử (tt) Mô hình máy trạng thái - Mô hình máy trạng thái mô tả đáp ứng của hệ thống với các sự kiện bên trong và bên ngoài của nó. Mô hình máy trạng thái biểu diễn các trạng thái của hệ thống và các sự kiện gây ra sự dịch chuyển trạng thái. - Mô hình máy trạng thái biểu diễn các trạng thái của hệ thống là các nút và sự kiện là các cung nối giữa các nút đó. Khi có một sự kiện xảy ra, hệ thống sẽ dịch chuyển từ trạng thái này sang trạng thái khác. Mô hình ứng xử (tt) - Biểu đồ trạng thái là một biểu đồ trong UML và được sử dụng để biểu diễn mô hình máy trạng thái. Biểu đồ trạng thái cho phép phân tích một mô hình thành nhiều mô hình con và mô tả ngắn gọn về các hành động cần thực hiện tại mỗi trạng thái. Ta có thể vẽ các bảng để mô tả mối quan hệ giữa trạng thái và tác nhân kích hoạt. 133 Mô tả toàn bộ ứng xử của hệ thống Mô hình dữ liệu Giới thiệu: Mô hình dữ liệu được sử dụng để mô tả cấu trúc logic của dữ liệu được xử lý bởi hệ thống. Thông thường, chúng ta hay sử dụng mô hình thực thể quan hệ thuộc tính (ERA) thiết lập các thực thể của hệ thống, quan hệ giữa các thực thể và thuộc tính của các thực thể. Mô hình này được sử dụng trong thiết kế CSDL và thường được cài đặt trong các CSDL quan hệ. 134 Mô hình dữ liệu (tt) Giới thiệu (tt): - Ví dụ mô hình dữ liệu của LIBSYS Mô hình dữ liệu (tt2) Giới thiệu (tt2): - Tuy nhiên, mô hình dữ liệu thường không chi tiết. Cho nên, chúng ta có thể sử dụng từ điển dữ liệu làm công cụ bổ trợ. Từ điển dữ liệu là danh sách tất cả các tên gọi được sử dụng trong các mô hình hệ thống. Đó có thể là các thực thể, quan hệ và các thuộc tính … - Ưu điểm của từ điển dữ liệu là: hỗ trợ quản lý tên và tránh trùng lặp tên, lưu trữ kiến thức một cách có tổ chức kết nối pha phân tích, thiết kế và cài đặt. Mô hình dữ liệu (tt3) Giới thiệu (tt3): - Ví dụ: từ điển dữ liệu của LIBSYS Mô hình đối tượng Giới thiệu: - Sử dụng mô hình ứng xử hay mô hình dữ liệu thường rất khó mô tả các vấn đề có liên quan đến thế giới thực. Mô hình đối tượng đã giải quyết được vấn đề này bằng cách kết hợp ứng xử và dữ liệu thành đối tượng. - Mô hình đối tượng được sử dụng để biểu diễn cả dữ liệu và quy trình xử lý của hệ thống. Nó mô tả hệ thống dựa theo thuật ngữ các lớp đối tượng và các quan hệ của nó. Mô hình đối tượng Một lớp đối tượng là sự trừu tượng hoá trên một tập các đối tượng có thuộc tính và phương thức chung. - Mô hình đối tượng phản ánh các thực thể trong thế giới thực được vận dụng trong hệ thống. Nếu ta càng có nhiều thực thể trừu tượng thì việc mô hình hoá càng khó khăn. Mô hình đối tượng (tt) - Phát hiện các lớp đối tượng là một quy trình rất khó khăn khi tìm hiểu sâu về lĩnh vực của ứng dụng. Các lớp đối tượng thường phản ảnh các thực thể liên quan tới miền ứng dụng của hệ thống. - Các mô hình đối tượng bao gồm: mô hình thừa kế, mô hình kết hợp và mô hình ứng xử. Mô hình đối tượng (tt) Mô hình thừa kế - Mô hình thừa kế tổ chức các lớp đối tượng theo một cấu trúc phân cấp. Các lớp ở đỉnh của cấu trúc phân cấp phản ánh những đặc trưng chung của tất cả các lớp. Các lớp đối tượng thừa kế những thuộc tính và phương thức của các lớp cha của nó nó có thể bổ sung những đặc điểm của riêng nó. - Thiết kế lớp phân cấp là một quy trình khá phức tạp, ta nên loại bỏ sự trùng lặp giữa các nhánh khác nhau. Mô hình đối tượng (tt) Mô hình thừa kế (tt1) - Ví dụ: cấu trúc phân cấp của lớp Library trong LIBSYS Mô hình đối tượng (tt) Mô hình thừa kế (tt2) - Ví dụ: cấu trúc phân cấp của lớp User trong LIBSYS Mô hình đối tượng (tt) Mô hình thừa kế (tt3) - Cấu trúc đa thừa kế: lớp đối tượng có thể thừa kế từ một hoặc nhiều lớp cha. Tuy nhiên, điều này có thể dẫn tới sự xung đột về ngữ nghĩa khi các thuộc tính/phương thức trùng tên ở các lớp cha khác nhau có ngữ nghĩa khác nhau. 143 Mô hình đối tượng (tt) Mô hình thừa kế (tt4) - Ví dụ: lớp Talking book thừa kế từ hai lớp Book và Voice recording. Mô hình đối tượng (tt) Mô hình kết hợp - Mô hình kết hợp biểu diễn cách cấu tạo của một lớp từ các lớp khác. Mô hình kết hợp tương tự như quan hệ hợp thành (part-of). - Ví dụ: Mô hình kết hợp - Đối tượng ô tô được tạo thành từ nhiều đối tượng khác như: cửa, bánh xe ... Mô hình đối tượng (tt) Mô hình ứng xử - Mô hình ứng xử mô tả tương tác giữa các đối tượng nhằm tạo ra một số ứng xử cụ thể của hệ thống mà đã được xác định như là một ca sử dụng. - Biểu đồ trình tự hoặc biểu đồ cộng tác trong UML được sử dụng để mô hình hoá tương tác giữa các đối tượng. Phương pháp hướng cấu trúc Phương pháp hướng cấu trúc rất ít khi được sử dụng do không còn phù hợp với các hệ thống lớn. Phương pháp hướng cấu trúc thường có một số nhược điểm sau: - Không mô hình hoá được các yêu cầu hệ thống phi chức năng Phương pháp (tt) - Không chứa những thông tin để xác định liệu một phương thức có thích hợp với một vấn đề đưa ra hay không. - Tạo ra quá nhiều tài liệu - Mô hình hoá hệ thống quá chi tiết và khó hiểu đối với người sử dụng.
File đính kèm:
- Bài giảng Công nghệ phần mềm - Chương 5 Các mô hình hệ thống.ppt