Bài giảng phân tích và thiết kế hướng đối tượng bài giảng 6 TS đào nam anh - Pdf 45

PHÂ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 6:
KIẾN TRÚC HỆ THỐNG VÀ PHÁT SINH MÃ TRÌNH

1


RESOURCE - REFERENCE

1.
2.

3.
4.
5.
6.

Ian Sommerville, Software Engineering, Ninth Edition, 2011
Bernd Bruegge & Allen H. Dutoit. Object-Oriented
Software Engineering: Using UML, Patterns, and Java,
Third Edition, Prentice Hall, 2010
Russell C. Bjork, ATM Simulation Links, Gordon College
Hans-Erik Eriksson, Magnus Penker, Brian Lyons, David
Fado, UML 2 Toolkit, John Wiley & Sons Inc, 2003
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
Đà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

Kiến trúc của hệ thống




Một kiến ​trúc tốt cho phép chèn các chức năng và các
khái niệm mới mà khôngcó vấn đề với phần còn lại của
hệ thống. Điều này không giống như một hệ thống
nguyên khối cũ, khi những thay đổi nhỏ trong một phần
của hệ thống có thể làm ngừng hoạt động vì mối quan hệ
phức tạp trên toàn hệ thống.
Kiến trúc như là một bản đồ cho các nhà phát triển, mô
tả cách hệ thống được xây dựng và các chức năng cụ thể
hoặc các khái niệm. Theo thời gian, bản đồ này có thể
phải thay đổi vì những khám phá quan trọng và kinh
nghiệm trên đường đi. Kiến trúc phải "sống" với hệ
thống khi hệ thống đang được phát triển và liên tục phản
ánh việc xây dựng hệ thống trong tất cả các giai đoạn và
các thế hệ.
5


1

Kiến trúc của hệ thống


Grady Booch, một trong những người phát triển UML,
đã nói, "Một nhóm phát triển thiếu kinh nghiệm có thể
thành công trong một kiến ​trúc có cấu trúc tốt, nhưng

 Mô tả chính xác các bộ phận để xác định hệ thống, cả về
kiến ​trúc hợp lý và kiến ​trúc vật lý.
 Một bản đồ của hệ thống mà trong đó một nhà phát triển
có thể dễ dàng xác định vị trí nơi một chức năng cụ thể
hay khái niệm được thực hiện. Chức năng và khái niệm
có thể là ứng dụng theo định hướng (một mô hình của
một cái gì đó trong lĩnh vực ứng dụng) hoặc thiết kế
theo định hướng (một số giải pháp thực hiện kỹ thuật).
Điều này cũng có nghĩa rằng yêu cầu mã của hệ thống
nên được theo dõi.
8


1

Kiến trúc của hệ thống






Những thay đổi và mở rộng cần được thực hiện dễ dàng
cho một địa điểm cụ thể, mà không ảnh hưởng tiêu cực
đến các phần khác.
Giao diện đơn giản, cũng như các quy định và phụ thuộc
giữa các bộ phận khác nhau là rõ ràng để một kỹ sư có
thể phát triển một phần cụ thể cả khi không có một sự
hiểu biết đầy đủ của tất cả các chi tiết trong hệ thống
tổng thể.

một sự hiểu biết rõ ràng về việc xây dựng các hệ thống,
làm cho quản trị hệ thống logic và phối hợp hiệu quả các
công việc (sử dụng các nguồn lực một cách hiệu quả
nhất). Không phải tất cả các bộ phận của kiến trúc logic
phải được phát triển trong dự án: các thư viện lớp, thành
phần nhị phân, và các mô hình thường có thể được mua.

11


1

Kiến trúc của hệ thống
 Kiến trúc Logic
Kiến trúc logic trả lời các câu hỏi như:
 Cấu trúc tổng thể của hệ thống là gì?
 Chức năng hệ thống cung cấp?
 Các lớp chính là gì, và làm thế nào là những lớp này liên
quan đến các lớp khác?
 Các lớp và các đối tượng của chúng cộng tác để cung
cấp các chức năng như thế nào?
 Cơ chế chung áp dụng nhất quán trong thiết kế?
 Kế hoạch phù hợp của nhà phát triển để phát triển hệ
thống này?
12


1

Kiến trúc của hệ thống

Kiến trúc của hệ thống
 Kiến trúc vật lý
 Các kiến ​trúc vật lý câu trả lời các câu hỏi như:
 Hệ thống có máy tính và các thiết bị phần cứng gì, và
làm thế nào kết nốichúng với nhau?
 Môi trường thực thi của các bộ phận khác nhau của hệ
thống chạy là gì?
 Các vật phẩm thực thi được triển khai trên máy tính
nào?
 Sự phụ thuộc giữa các tập mã là gì? Nếu một tập tin cụ
thể được thay đổi, các tập tin khác có phải biên dịch lại?

15


1

Kiến trúc của hệ thống
 Kiến trúc vật lý
 Kiến trúc vật lý mô tả sự phân rã của phần mềm và phần
cứng. Lập ánh xạ từ các kiến ​trúc logic vào kiến ​trúc vật
lý, theo đó các lớp, các thành phần, và các cơ chế trong
kiến ​trúc logic được ánh xạ lên vật phẩm, quy trình, và
các máy tính trong kiến ​trúc vật lý.

16


1




2

Biểu đồ thành phần
Vật phẩm có thể là:
 Mã nguồn (source): là một tập tin mã nguồn có một hoặc
nhiều lớp.
 Mã thực thi được: là tập tin chương trình thực thi, là kết
quả của việc kết nối tất cả các thành phần nhị phân (hoặc
là tĩnh tại thời gian liên kết, hoặc động tại thời gian
chạy). Một thành phần thực thi đại diện cho các đơn vị
thực thi được điều hành bởi một bộ xử lý (máy tính).

19


2

Biểu đồ thành phần


Thành phần được thể hiện trong UML là một hình chữ
nhật với stereotype
này bao gồm các thiết bị như máy tính với bộ vi xử lý,
cũng như đầu đọc thẻ, thiết bị di động, thiết bị thông tin
liên lạc, vv. Chúng cũng bao gồm nút con trong những
thiết bị phản ánh môi trường thực thi khác như J2EE
container, workflow engine, hoặc cơ sở dữ liệu. Một nút
có thể là một phân loại, mô tả các đặc điểm của một loại
vi xử lý hoặc thiết bị và , và cũng có thể là một thực thể
của loại. Trong hình dưới đây, MidrangeServer là kiểu
nút, còn SystemTestServer4 là một đối tượng dạng nút
này.
22


3

Biểu đồ triển khai
 Nút
 Định nghĩa chi tiết về khả năng của hệ thống có thể
được định nghĩa như là thuộc tính, như là giá trị được
quy định cho các nút. Một nút được vẽ bằng một khối
lập phương 3 chiều với tên gọi. Cũng giống như các ký
hiệu của các lớp và các đối tượng, tên được gạch dưới
nếu nút là thực thể. Khi các nút được sử dụng để đại
diện cho các tài nguyên vật lý tính toán, họ được thể
hiện với stereotype


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status