Phối hợp các mô hình thiết kế hệ thống 5.1 Chất lượng mô hình 5.2 Tóm tắt về mô hình đối tượng 5.3 Phối hợp mô hình đối tượng và mô hình động... Nhiều mô hình của cùng một hệ thống nhưng
Trang 1PHÂN TÍCH VÀ THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
OBJECT ORIENTED ANALYSIS AND DESIGN
DR DAO NAM ANH
Bài giảng 5:
MÔ HÌNH ĐỘNG
Trang 2RESOURCE - REFERENCE
1. Ian Sommerville, Software Engineering, Ninth Edition, 2011
2. Bernd Bruegge & Allen H Dutoit Object-Oriented
Software Engineering: Using UML, Patterns, and Java,
Third Edition, Prentice Hall, 2010
3. Russell C Bjork, ATM Simulation Links, Gordon College
4. Hans-Erik Eriksson, Magnus Penker, Brian Lyons, David
Fado, UML 2 Toolkit, John Wiley & Sons Inc, 2003
5. Dương Kiều Hoa – Tôn Thất Hoà An, Phân tích và thiết kế
Hệ thống thông tin với UML, 2006
6. Đào Nam Anh, Giáo Trình Phân Tích Và Thiết Kế Hướng
Đối Tượng, Đại học Điện lực, 2013
2
Trang 3CONTENT – NỘI DUNG
Chương 5 Phối hợp các mô hình thiết kế hệ thống 5.1 Chất lượng mô hình
5.2 Tóm tắt về mô hình đối tượng
5.3 Phối hợp mô hình đối tượng và mô hình động
Trang 41 Chất lượng mô hình
Làm sao để biết được mô hình là tốt hay chưa tốt? Một ngôn ngữ mô hình hóa có thể cung cấp ngữ pháp và ngữ nghĩa cho ta làm việc, nhưng nó không cho ta biết liệu một mô hình vừa được tạo dựng nên là tốt hay không Yếu tố này mở ra một vấn đề quan trọng trong việc xác định chất lượng mô hình Điều chủ chốt khi chúng ta
thiết kế mô hình là thứ chúng ta muốn nói về hiện thực
Mô hình mang lại sự diễn giải cho những gì mà chúng ta nghiên cứu (hiện thực, một viễn cảnh )
4
Trang 51 Chất lượng mô hình
Làm sao để biết được mô hình là tốt hay chưa tốt? Một ngôn ngữ mô hình hóa có thể cung cấp ngữ pháp và ngữ nghĩa cho ta làm việc, nhưng nó không cho ta biết liệu một mô hình vừa được tạo dựng nên là tốt hay không
Yếu tố này mở ra một vấn đề quan trọng trong việc xác định chất lượng mô hình Điều chủ chốt khi chúng ta
thiết kế mô hình là thứ chúng ta muốn nói về hiện thực
Mô hình mang lại sự diễn giải cho những gì mà chúng ta nghiên cứu (hiện thực, một viễn cảnh )
Trang 6món nợ, nhưng ta cần phải mô hình hóa làm sao để phản ánh điều đó
6
Trang 71 Chất lượng mô hình
Một trong những khía cạnh của chất lượng mô hình là tính thích hợp của mô hình đó Một mô hình thích hợp phải nắm bắt các khía cạnh quan trọng của đối tượng
nghiên cứu
Những khía cạnh khác trong việc đánh giá chất lượng là
mô hình phải dễ giao tiếp, phải có một mục tiêu cụ thể,
dễ bảo quản, mang tính vững bền và có khả năng tích
hợp Nhiều mô hình của cùng một hệ thống nhưng có
các mục đích khác nhau (hoặc là hướng nhìn khác nhau) phải có khả năng tích hợp được với nhau
Trang 8hiệu ứng sự can thiệp của chúng ta vào nghiệp vụ
Yếu tố quan trọng là cần phải xử lý tất cả các khía cạnh của sự can thiệp đó ví dụ như về chính sách, văn hóa,
cấu trúc xã hội và năng suất
Hãy đặc biệt chú ý đến các vấn đề với chính sách nội bộ, các mẫu hình xã hội, các cấu trúc không chính thức và các thế lực bao quanh khách hàng
8
Trang 9 Một mô hình tốt đòi hỏi thời gian xây dựng; bình thường
ra nó được tạo bởi một nhóm phát triển, được thành lập với một mục đích cụ thể Một trong những mục đích này
có thể là huy động toàn bộ lực lượng để phát hiện ra các yêu cầu của một cơ quan
Trang 101 Chất lượng mô hình
1.1 Thế nào là một mô hình tốt
Khả năng giao tiếp với mô hình
Tại sao mô hình lại phải là thứ dễ giao tiếp? Tất cả các
dự án, dù lớn hay nhỏ, đều cần phải được giao tiếp Con người ta nói chuyện với nhau Họ đọc các tài liệu của
nhau và thảo luận các nội dung của chúng Sáng kiến
khởi thủy nằm đằng sau bất kỳ một mô hình nào cũng là
để tạo ra khả năng giao tiếp với chúng
Nếu chúng ta tạo ra các mô hình mà không ai đọc nổi,
hiểu nổi, thì đó là việc làm vô ý nghĩa Mô hình chẳng phải được tạo ra bởi người dẫn đầu một phương pháp
hoặc người dẫn đầu một dự án ra lệnh Mô hình được tạo
ra để phục vụ cho việc giao tiếp và tập hợp các cố gắng của chúng ta để đạt đến năng suất, hiệu quả và chất
Trang 111 Chất lượng mô hình
1.1 Thế nào là một mô hình tốt
Sự phù hợp của mô hình với mục đích của nó
Một mô hình hình cần phải có một mục đích rõ ràng, sao cho ai dùng nó cũng nhận được ra Tất cả các mô hình đều có mục đích, nhưng thường mục đích này là ngầm
ẩn, và điều này khiến cho việc sử dụng và hiểu nó trở
nên khó khăn
Các mô hình phân tích và mô hình thiết kế có thể là mô hình của cùng một hệ thống, nhưng chúng vẫn là những
mô hình khác nhau và tập trung vào các chủ đề khác
nhau (hay là chi tiết khác nhau) Cần phải xác định rõ
ràng mục đích cho mỗi mô hình để có thể kiểm tra và
phê duyệt nó Nếu không có mục đích rõ ràng, chúng ta
Trang 121 Chất lượng mô hình
1.1 Thế nào là một mô hình tốt
Nắm bắt những điểm trọng yếu
Nhiều mô hình chỉ bao gồm các tài liệu của nghiệp vụ –
ví dụ như các hóa đơn, những thông tin nhận được, các hợp đồng bảo hiểm Nếu mô hình chỉ là sự bao gồm các tài liệu thì điều gì sẽ xảy ra nếu nghiệp vụ thay đổi? Đây
Trang 13 Tích hợp có nghĩa là một nhóm các mô hình cùng chung mục đích và thể hiện cùng một thứ (mặc dù chúng có thể
có nhiều hướng nhìn khác nhau, ví dụ như mô hình
động, mô hình chức năng, mô hình tĩnh), thì chúng phải
có khả năng được ráp lại với nhau mà không làm nảy
sinh mâu thuẫn
Trang 14 Sáng kiến tốt là hãy bắt đầu với một mô hình đơn giản,
và sau đó chi tiết hóa nhiều hơn bằng cách sử dụng việc phối hợp mô hình Nếu bản chất phạm vi vấn đề của
chúng ta là phức tạp, hãy xẻ mô hình thành nhiều mô
hình nhỏ hơn (sử dụng các tiểu mô hình – tức là các gói)
và cố gắng để qui trình này có thể kiểm soát được tình
Trang 152 Tóm tắt về mô hình đối tượng
Khi tạo mô hình là chúng ta diễn giải các chi tiết về
những gì mà chúng ta nghiên cứu, thế nhưng một yếu tố rất quan trọng là mô hình phải nắm bắt được những
điểm trọng yếu của đối tượng nghiên cứu Một đối tượng
là một thứ gì đó mà chúng ta có thể nói về và có thể xử
lý trong một số phương thức nào đó
Một đối tượng tồn tại trong thế giới thực (hoặc nói cho chính xác hơn là trong sự hiểu biết của chúng ta về thế giới thực) Một đối tượng có thể là một thành phần của một hệ thống nào đó trong thế giới – một chiếc máy, một
tổ chức, một nghiệp vụ Một lớp là lời miêu tả từ 0, 1
Trang 162 Tóm tắt về mô hình đối tượng
Khi chúng ta mô hình hóa, chúng ta sử dụng một ngôn ngữ mô hình hóa ví dụ như UML, cung cấp cho chúng ta ngữ pháp và ngữ nghĩa để tạo dựng mô hình Ngôn ngữ
mô hình hóa mặc dù vậy không thể cho chúng ta biết
liệu chúng ta đã tạo ra một mô hình tốt hay không
Chất lượng mô hình cần phải được chú ý riêng biệt, điều
đó có nghĩa là tất cả các mô hình cần phải có một mục đích rõ ràng và chính xác và chúng phải nắm bắt được bản chất của đối tượng nghiên cứu Tất cả các mô hình cần phải được làm sao để dễ giao tiếp, dễ thẩm tra, phê duyệt và bảo trì
16
Trang 172 Tóm tắt về mô hình đối tượng
UML cung cấp mô hình tĩnh, động và theo chức năng
Mô hình tĩnh được thể hiện qua các biểu đồ lớp, bao
gồm các lớp và mối quan hệ giữa chúng Quan hệ có thể
là quan hệ, khái quát hoá, phụ thuộc hoặc là nâng cấp
Một mối quan hệ quan hệ là một sự kết nối giữa các lớp,
có nghĩa là sự kết nối giữa các đối tượng của các lớp
này Khái quát hóa là quan hệ giữa một phần tử mang
tính khái quát hơn và một phần tử mang tính chuyên biệt hơn Phần tử mang tính chuyên biệt hơn có thể chỉ chứa các thông tin bổ sung
Trang 182 Tóm tắt về mô hình đối tượng
Một thực thể (một đối tượng là một thực thể của một
lớp) của phần tử chuyên biệt hơn có thể được sử dụng
bất cứ nơi nào mà thực thể của phần tử khái quát hơn
được cho phép Phụ thuộc là mối quan hệ giữa hai phần
tử, một mang tính độc lập và một mang tính phụ thuộc
Mỗi thay đổi trong phần tử độc lập sẽ gây tác động đến phần tử phụ thuộc Một quan hệ nâng cấp là một quan hệ giữa hai lời miêu tả của cùng một thứ nhưng ở những
mức độ trừu tượng khác nhau
18
Trang 193 Phối hợp mô hình đối tượng và mô hình động
Khi kết hợp giữa các mô hình đối tượng và mô hình
động mỗi sự kiện trong mô hình động cần phải tương
thích với một thủ tục trong mô hình đối tượng Từ đó
suy ra, mỗi sự thay đổi về mặt trạng thái trong mô hình động cần phải phù hợp với một thủ tục của đối tượng
Hành động phụ thuộc vào trạng thái của đối tượng và
vào sự kiện
Trang 203 Phối hợp mô hình đối tượng và mô hình động
Mối quan hệ giữa mô hình đối tượng và mô hình động có thể được miêu tả như sau:
Mô hình đối tượng là cơ cấu (framework) cho mô hình động
Mô hình động xác định các chuỗi thay đổi được phép
xảy ra đối với các đối tượng trong mô hình đối tượng
Mô hình động bị hạn chế chỉ trong những đối tượng có mặt trong mô hình đối tượng cũng như cấu trúc của
chúng
http://www.cs.sjsu.edu/~pearce/modules/lectures/ooa/analysis/
20
Trang 213 Phối hợp mô hình đối tượng và mô hình động
Mối quan hệ giữa mô hình đối tượng và mô hình động có thể được miêu tả như sau:
Không thể có một mô hình động cho một đối tượng
không tồn tại trong mô hình đối tượng Có một mối quan
hệ 1-1 giữa mô hình đối tượng và mô hình động
Mô hình động chính là mô hình đối tượng cộng thêm với phần ứng xử "sống"
Mô hình đối tượng miêu tả sự khác biệt giữa các đối
tượng như là sự khác biệt giữa các lớp Khi một đối
tượng ứng xử khác một đối tượng khác thì mỗi đối
tượng trong số đó sẽ có một lớp riêng
Mặc dù vậy, trong mô hình động, sự khác biệt trong ứng
xử động sẽ được mô hình hóa thành các trạng thái khác
Trang 22Tóm tắt
Chương 5 Phối hợp các mô hình thiết kế hệ thống
5.1 Chất lượng mô hình
5.2 Tóm tắt về mô hình đối tượng
5.3 Phối hợp mô hình đối tượng và mô hình động
22
Trang 23DISCUSSION – CÂU HỎI
https://sites.google.com/site/daonamanhedu/teac hing/objectorientedanalysisanddesign