Tải bản đầy đủ (.pptx) (56 trang)

chuong1 xuanhiens weblog

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (847.15 KB, 56 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>

<b>Chương 1</b>



</div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

BÀI GIẢNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG - GV: TỪ THỊ XUÂN HIỀN 2


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

<b>• Hệ thống (system) là một tập các thành phần tương tác với </b>


nhau, kết hợp với nhau để thực hiện các mục tiêu tạo thành hệ


thống



</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

<b>Hệ thống thông tin - Information system </b>



• Hệ thống hệ thống nhiều thành phần liên quan đến việc truyền


đạt thông tin: phần cứng, phần mềm,

và các hệ mạng truyền


thông được xây dựng và sử dụng để thu thập, tạo, tái


tạo, phân phối và chia sẻ các dữ liệu, thông tin và tri


thức nhằm phục vụ các mục tiêu của một tổ chức



</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

<b>Hệ thống thơng tin - Information system </b>



<b>• Vai trị của hệ thống thơng tin</b>



• Giáo dục điện tử (elearning)


• Thương mại điện tử (e-commerce)
• Chính phủ điện tử (e-government)
• Các hệ thống thơng tin địa lý (GIS)...
• Và nhiều lĩnh vực khác...


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

<b>Phân loại hệ thống thơng tin</b>



<b>• Hệ xử lý dữ liệu (</b>

<b>DPS-Data Processing System</b>

<b>)</b>




• Xử lý các giao dịch, ghi lại những dữ liệu cho từng chức năng đặc thù.
• Dữ liệu đưa vào được thường xuyên cập nhật.


• Dữ liệu đầu ra định kỳ bao gồm các tài liệu hoạt động và báo cáo


<b>• Hệ thơng tin quản lý (</b>

<b>MIS-</b> <b>Management Information System</b>

<b>)</b>



• Sử dụng trong các tổ chức kinh tế xã hội, hệ thống gồm nhiều thành
phần, mỗi thành phần là một hệ thống con hoàn chỉnh


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

<b>Phân loại hệ thống thơng tin</b>



<b>• Hệ hỗ trợ quyết định (DSS- Decision Support System)</b>



• Giúp cho tổ chức những thơng tin cần thiết để ra quyết định hợp lý và
đủ độ tin cậy


<b>• Hệ chuyên gia (ES-Expert System)</b>



• Giúp các nhà quản lý giải quyết và thực hiện vấn đề ở mức cao hơn.
• Hệ thống này liên quan đến lĩnh vực trí tuệ nhân tạo, làm cho máy tính


có khả năng lập luận, học tập, tự hoàn thiện như con người.


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

<b>Vai trị của phân tích thiết kế hệ thống</b>



• Thơng qua việc phân tích, người phân tích sẽ xác định được


yêu cầu của hệ thống và đưa ra giải pháp giải quyết vấn đề.



• Có một cái nhìn đầy đủ, đúng đắn và chính xác về hệ thống



thông tin đang xây dựng.



• Tránh sai lầm trong thiết kế và cài đặt.


• Tăng vịng đời (life cycle) của hệ thống



• Dễ sửa chữa, bổ sung và phát triển hệ thống



</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

<b>Vai trị của phân tích thiết kế hệ thống</b>



</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

<b>Vòng đời phát triển hệ thống</b>



<i><b>(The systems development life cycle-SDLC)</b></i>



• SDLC là phương pháp tiếp cận từng giai đoạn để phân tích


thiết kế hệ thống



• Tiến trình phát triển phần mềm bao gồm 2 khía cạnh:



<i><b>• Kỹ thuật: Vịng đời phát triển phần mềm, phương pháp, và cơng cụ.</b></i>
<i><b>• Quản lý: Quản lý dự án phần mềm</b></i>


</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

<b>Vòng đời phát triển hệ thống</b>



<i><b>(The systems development life cycle-SDLC)</b></i>



• Vịng đời phát triển hệ thống thông thường gồm 4 giai đoạn,


trong mỗi giai đoạn có nhiều bước:



• Lập kế hoạch (Planning)
• Phân tích (Analysis)



• Thiết kế (Design)


• Hiện thực (Implementation)


</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

<b>Lập kế hoạch (Planning)</b>



• Xác định lý do hệ thống cần được xây dựng và xây dựng như


thế nào? Gồm hai bước



• Xác định các yêu cầu để xây dựng một hệ thống hỗ trợ các nhu cầu
tạo ra giá trị kinh doanh, tiến hành phân tích tính khả thi dựa trên các
khía cạnh:


• Kỹ thuật: có thể thực hiện khơng?
• Kinh tế: có giá trị kinh tế khơng?
• Tổ chức: có được sử dụng khơng?


• Khi dự án được chấp nhận, người quản lý dự án lập kế hoạch dự án


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

<b>Phân tích (Analysis)</b>



• Phân tích và trả lời các câu hỏi:



<b>• Ai</b> sử dụng hệ thống (who)
• Hệ thống sẽ <b>làm gì </b>(what)


• Hệ thống được sử dụng <b>ở đâu </b>(where)


• Tìm hiểu hệ thống và cải tiến hệ thống hiện tại thành hệ thống mới,



gồm 3 bước:



• Xây dựng chiến lược phân tích và thiết kế hệ thống


• Thu thập yêu cầu bằng nhiều hình thức: phỏng vấn, bảng câu hỏi, …


• Kết hợp các phân tích hệ thống, xây dựng một đề xuất hệ thống mô tả các
yêu cầu của doanh nghiệp mà hệ thống mới phải đáp ứng.


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

<b>Thiết kế (Design)</b>



• Xác định cách hoạt động của hệ thống, giai đoạn thiết kế gồm 4


bước:



• Phát triển kế hoạch thiết kế.
• Thiết kế kiến trúc của hệ thống
• Xây dựng cơ sở dữ liệu


• Thực hiện thiết kế chương trình


</div>
<span class='text_page_counter'>(15)</span><div class='page_container' data-page=15>

• Đây là giai đoạn được chú ý nhất và tốn kém nhất, gồm 3


bước:



• Xây dựng hệ thống (construction) và kiểm thử để đảm bảo hệ thống
hoạt động như đã thiết kế.


• Cài đặt, và kế hoạch hướng dẫn sử dụng.


• Lập kế hoạch hỗ trợ hệ thống, đánh giá kế hoạch thực hiện, xác định
những thay đổi cần thiết cho hệ thống.



</div>
<span class='text_page_counter'>(16)</span><div class='page_container' data-page=16>

• Mơ hình thác nước


• Mơ hình RUP



• Mơ hình Agile



</div>
<span class='text_page_counter'>(17)</span><div class='page_container' data-page=17>

<b>Mơ hình thác nước</b>



• Các giai đoạn nối tiếp nhau một


cách liên lục.



• Có vịng lặp cho phép trở về giai


đoạn trước đó để hiệu chỉnh khi


phát hiện lỗi hoặc có thay đổi.



• Mỗi giai đoạn chỉ hồn tất khi tài liệu


của giai đoạn đó hồn thành và sản


phẩm của giai đoạn đó được chấp


nhận bởi nhóm SQA



</div>
<span class='text_page_counter'>(18)</span><div class='page_container' data-page=18>

<b>Mơ hình RUP- Rational Unified Process </b>



• Một cách tiếp cận có kỹ luật để gán và quản lý các nhiệm vụ


phát triển phần mềm, vận dụng thực tiển tốt nhất trong phát


triển phần mềm hiện đại.



• Mơ hình chia q trình phát triển hệ thống thành 4 giai đoạn


riêng biệt.



</div>
<span class='text_page_counter'>(19)</span><div class='page_container' data-page=19>

<i><b>• Giai đoạn khởi động (Inception): ý tưởng và mục tiêu của dự </b></i>



án được cơng bố.



<i><b>• Lập quy hoạch chi tiết (Elaboration): Kiến trúc và nguồn tài </b></i>


nguyên được xác định



<i><b>• Thực thi (Construction): phát triển và hồn thành hệ thống</b></i>



<i><b>• Chuyển giao (Transition): hệ thống được phát hành cho </b></i>


người dùng cuối và cập nhật dựa trên các phản hồi.



</div>
<span class='text_page_counter'>(20)</span><div class='page_container' data-page=20>

<b>Mơ hình RUP- Rational Unified Process </b>



<b>• Đặc điểm của RUP</b>



• Là một tiến trình lặp đi lặp lại, phù hợp với những hệ thống có u cầu
thay đổi.


• Sử dụng mơ hình UML


• Phát triển theo kiến trúc trung tâm (architecture-centric) giảm thiểu làm
lại, tăng khả năng tái sử dụng.


• Nhấn mạnh việc xây dựng hệ thống dựa trên sự hiểu biết thấu đáo
chức năng của hệ thống


• RUP hỗ trợ kỹ thuật hướng đối tượng.


• RUP ln quan tâm đến kiểm soát chất lượng và quản lý rủi ro


</div>
<span class='text_page_counter'>(21)</span><div class='page_container' data-page=21>

<b>• Giai đoạn (Phases) </b>

là khoảng cách giữa 2 mốc quan trọng của



tiến trình, mỗi giai đoạn phải xác định mục tiêu cần đáp ứng,


sản phẩm hoàn thành, và các quyết định để chuyển sang giai


đoạn tiếp theo.



<b>• RUP gồm 4 giai đoạn</b>

:



• Inception.
• Elaboration.
• Construction.
• Transition.


</div>
<span class='text_page_counter'>(22)</span><div class='page_container' data-page=22></div>
<span class='text_page_counter'>(23)</span><div class='page_container' data-page=23>

<b>Các giai đoạn trong RUP</b>


<b>• Khởi động (Inception)</b>



• Tìm hiểu nghiệp vụ


• Xác định phạm vi của dự án.


• Đánh giá rủi ro, ước tính nguồn nhân lực.


</div>
<span class='text_page_counter'>(24)</span><div class='page_container' data-page=24>

<b>Các giai đoạn trong RUP</b>


<b>• Phác thảo (Elaboration)</b>



• Phân tích nghiệp vụ.


• Xây dựng kiến trúc phù hợp.


• Phát triển kế hoạch dự án, loại bỏ các yếu tố có nguy cơ rủi ro cao.


• Kiểm tra mục tiêu chi tiết và phạm vi của hệ thống, đưa ra quyết định


có tiếp tục giai đoạn tiếp theo hay không.


</div>
<span class='text_page_counter'>(25)</span><div class='page_container' data-page=25>

<b>Các giai đoạn trong RUP</b>


<b>• Xây dựng (Construction)</b>



• Lặp đi lặp lại từng bước phát triển sản phẩm hoàn chỉnh, sẵn sàng
chuyển giao cho người dùng


• Hồn thành việc kiểm thử phần mềm.


</div>
<span class='text_page_counter'>(26)</span><div class='page_container' data-page=26>

<b>• Chuyển giao (Transition)</b>



• Triển khai hệ thống đến người dùng


• Ghi nhận những vấn đề phát sinh và các hạn chế để hoàn thiện bản
cuối cùng


</div>
<span class='text_page_counter'>(27)</span><div class='page_container' data-page=27>

<b>Các cơng việc trong RUP</b>



<i>• Mơ hình hóa nghiệp vụ (Business modeling)</i>



• Mơ tả cấu trúc và quy tắc nghiệp vụ


<i>• Xác định yêu cầu (Requirements)</i>



<i>• Mơ tả quy tắc nghiệp vụ bằng use case – base method</i>


<i>• Phân tích và thiết kế (Analysis&design)</i>



• Mơ tả kiến trúc hệ thống thông qua các sơ đồ



</div>
<span class='text_page_counter'>(28)</span><div class='page_container' data-page=28>

<b>Các cơng việc trong RUP</b>



<i>• Hiện thực (Implementation)</i>



• Phát triển phần mềm, unit test, và tích hợp


<i>• Kiểm thử (Test):</i>



• Mơ tả các tình huống, kịch bản kiểm thử, theo dõi các sai sót


<i>• Triển khai (Deployment):</i>



• Đưa phần mềm vào sử dụng, bao gồm cấu hình hệ thống.


</div>
<span class='text_page_counter'>(29)</span><div class='page_container' data-page=29>

<b>Các cơng việc trong RUP</b>



<i>• Quản lý cấu hình (Configuration management ):</i>



• Điều khiển sự thay đổi, duy trì sự hợp nhất của các thành phần của dự
án


<i>• Quản lý dự án(Project Management):</i>



• Mơ tả các chiến lược khác nhau khi làm việc với một tiến trình lặp đi
lặp lại.


<i>• Mơi trường (Environment)</i>



• Cơ sở hạ tầng cần thiết để phát triển hệ thống



</div>
<span class='text_page_counter'>(30)</span><div class='page_container' data-page=30>

<b>Mơ hình Agile</b>



• Đặc trưng của cách tiếp cận theo mơ hình Agile là tính tương


tác và gia tăng. Có 5 giai đoạn



• Thăm dị (exploration)
• Lập kế hoạch (planning)


• Vịng lặp: thử nghiệm, thay đổi để đạt được một hệ thống ổn định và
phát triển (iterations to the first release)


• Sản xuất (productionizing)
• Bảo trì (maintenance)


</div>
<span class='text_page_counter'>(31)</span><div class='page_container' data-page=31></div>
<span class='text_page_counter'>(32)</span><div class='page_container' data-page=32>

<b>Phân tích thiết kế hướng đối tượng</b>



• Hệ thống được xem là một tập các đối tượng, mỗi đối tượng bao


<b>gồm dữ liệu và hành vi.</b>



• Các đối tượng trong hệ thống có quan hệ và tương tác lẫn nhau


• Phát triển mơ hình chính xác với vấn đề đang phân tích



• Ánh xạ các thực thể trong thế giới thực với đối tượng trong thiết kế.


• Giữ nguyên mẫu về cấu trúc, quan hệ và hành vi của đối tượng.



• Phù hợp cho những hệ thống lớn, cập nhật thường xuyên



</div>
<span class='text_page_counter'>(33)</span><div class='page_container' data-page=33>

<b>Phân tích thiết kế hướng đối tượng</b>




<b>• Ưu điểm</b>



• Mơ hình khái niệm về các lĩnh vực rõ ràng
• Giảm chi phí thực hiện


• Giảm sự phức tạp của hệ thống


• Tăng hiệu quả và chất lượng của hệ thống
• Giảm rủi ro


• Giảm chi phí bảo trì
• Hệ thống mềm dẽo


</div>
<span class='text_page_counter'>(34)</span><div class='page_container' data-page=34>

<b>Phân tích thiết kế hướng đối tượng</b>



<b>Ví dụ: phân tích hệ thống cửa hàng bán xe hơi. </b>



• Các đối tượng có thể xác định gồm:



<i>• Khách hàng </i>


<i>• Người bán hàng </i>
<i>• Phiếu đặt hàng</i>


<i>• Phiếu (hố đơn) thanh tốn </i>
<i>• Xe hơi</i>


</div>
<span class='text_page_counter'>(35)</span><div class='page_container' data-page=35>

<b>Phân tích thiết kế hướng đối tượng</b>



<b>Ví dụ: phân tích hệ thống cửa hàng bán xe hơi. </b>




• Tương tác và quan hệ giữa các đối tượng gồm :



<i>• Người bán hàng giới thiệu xe cho khách hàng</i>
<i>• Khách hàng chọn xe</i>


<i>• Khách hàng viết phiếu đặt xe </i>
<i>• Khách hàng trả tiền xe </i>


<i>• Người bán hàng giao xe cho khách hàng</i>


</div>
<span class='text_page_counter'>(36)</span><div class='page_container' data-page=36>

<b>Phân tích</b>

<b> thiết kế hệ thống</b>



</div>
<span class='text_page_counter'>(37)</span><div class='page_container' data-page=37>

<b>Mơ hình hóa hướng đối tượng</b>



• Mơ hình hóa hướng đối tượng là một cách mơ hình hố các hệ


thống theo ngơn ngữ tự nhiên.



• Các hệ thống, mà chính nó là một đối tượng, phân hủy thành


các thành phần, mỗi thành phần có thể thực hiện một cơng việc


hồn chỉnh.



• Các thành phần có thể cộng tác để cung cấp các chức năng


cần thiết của hệ thống



</div>
<span class='text_page_counter'>(38)</span><div class='page_container' data-page=38>

<b>Lợi ích của mơ hình hóa hướng đối tượng</b>



• Cung cấp một framework có thể mơ hình hóa các khái niệm một


cách trực quan.




• Giảm chi phí thực hiện và bảo trì


• Giảm độ phức tạp



• Tiếp cận dựa trên thành phần (Component) tăng khả năng tái


sử dụng



• Tăng hiệu suất và chất lượng của hệ thống


• Giảm rủi ro



</div>
<span class='text_page_counter'>(39)</span><div class='page_container' data-page=39>

<b>Phân tích thiết kế hướng đối tượng</b>



<i><b>• Áp dụng các mơ hình hướng đối tượng để phân tích các hệ </b></i>


thống hoặc các yêu cầu hệ thống.



<i><b>• Thiết kế hướng đối tượng: thực hiện các yêu cầu được xác </b></i>


định trong phân tích hướng đối tượng.



• Phân tích thiết kế hướng đối tượng gồm 2 hoạt động:



• Phân tích hướng đối tượng - Object Oriented Analysis
• Thiết kế hướng đối tượng - Object Oriented Design


</div>
<span class='text_page_counter'>(40)</span><div class='page_container' data-page=40>

<b>• Phân tích (Analysis): nhấn mạnh việc nghiên cứu các yêu cầu </b>


<b>và vấn đề của bài tốn. </b>



<b>• Phân tích hướng đối tượng (Object-oriented analysis): </b>


nhấn mạnh việc tìm kiếm và mô tả các khái niệm đối tượng


trong phạm vi bài tốn.



• Tập trung vào việc phát triển một mơ hình hướng đối tượng của hệ


thống.


</div>
<span class='text_page_counter'>(41)</span><div class='page_container' data-page=41>

<b>• Thiết kế (Design): nhấn mạnh việc tìm giải pháp để thực hiện </b>


<i>các yêu cầu trong giai đoạn phân tích.</i>



<b>• Thiết kế hướng đối tượng: xác định các đối tượng phần mềm </b>


và cách tương tác của chúng với nhau để thực hiện các yêu


cầu của hệ thống.



• Cung cấp một mơ hình hướng đối tượng của hệ thống phần mềm để
hiện thực các yêu cầu đã được xác định.


</div>
<span class='text_page_counter'>(42)</span><div class='page_container' data-page=42>

<b>Phân tích thiết kế hướng đối tượng với UML</b>



<b>• UML (Unified Modeling Language): </b>

ngôn ngữ dùng để mơ


hình hóa q trình phát triển hệ thống phần mềm hướng đối


tượng



• Các sơ đồ trong UML được chia thành 2 nhóm:



<b>• Sơ đồ cấu trúc (Structure Diagrams): class, object, package, </b>
deployment, component.


<b>• Sơ đồ hành vi (Behavioral Diagrams): use case diagrams, activity, </b>
sequence, communication, interaction.


</div>
<span class='text_page_counter'>(43)</span><div class='page_container' data-page=43>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Abstraction:</b>




• Tập trung vào các khía cạnh
quan trọng nhất, bỏ qua các
chi tiết ít quan trọng.


• Abstraction giúp việc quản lý
các hệ thống phức tạp bằng
cách tập trung vào các khía
cạnh chính của hệ thống mà
người dùng quan tâm.


</div>
<span class='text_page_counter'>(44)</span><div class='page_container' data-page=44>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Encapsulation </b>



• Cơ chế được sử dụng để ẩn các cấu trúc và các chi tiết hiện thực bên
trong của các hệ thống.


• Tất cả những giao tiếp với các đối tượng đều thông qua interface.


</div>
<span class='text_page_counter'>(45)</span><div class='page_container' data-page=45>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Modularity </b>



• Chia hệ thống phức tạp thành những hệ thống nhỏ hơn, tự nó chứa
những phần có thể hoạt động một cách độc lập


</div>
<span class='text_page_counter'>(46)</span><div class='page_container' data-page=46>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Hierarchy</b>




• Thứ tự của sự trừu tượng có cấu trúc dạng cây
• Các loại hierachy:


• Aggregation hierarchy,
• Class hierarchy,


• Containment hierarchy,
• Inheritance hierarchy,
• Partition hierarchy,


• Specialization hierarchy


</div>
<span class='text_page_counter'>(47)</span><div class='page_container' data-page=47>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Đối tượng – Object</b>



• Sự thể hiện của một thực thể xác định trong thế giới thực
Ví dụ:


• Tivi, sinh viên, công việc …


</div>
<span class='text_page_counter'>(48)</span><div class='page_container' data-page=48>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Đối tượng – Object</b>



<b>• Mỗi đối tượng bao gồm 2 thành phần thông tin và hành vi. </b>
<b>• Thơng tin - Information:</b>


• Xác định một đối tượng duy nhất
• Mơ tả cấu trúc của đối tượng



• Trạng thái của đối tượng


<b>• Hành vi - Behaviour:</b>


• Đối tượng có thể làm gì?


• Có thể làm gì với đối tượng?


</div>
<span class='text_page_counter'>(49)</span><div class='page_container' data-page=49>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Lớp – Class</b>



<b>• Lớp là một nhóm các đối tượng có </b>cùng thuộc tính, hành vi và các mối


quan hệ. Đối tượng là một thể hiện của một lớp.


• Một lớp xác định các <b>thuộc tính </b>và <b>hành vi </b>của tất cả các đối tượng
trong lớp đó.


• Mỗi lớp có một tên riêng biệt


• Một lớp là sự trừu tượng của chính nó
<b>• Ký hiệu Lớp trong UML</b>


</div>
<span class='text_page_counter'>(50)</span><div class='page_container' data-page=50>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Lớp – Class</b>



• Ví dụ:



</div>
<span class='text_page_counter'>(51)</span><div class='page_container' data-page=51>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<i><b>• Phương thức (Methods): hiện thực hành vi của đối tượng, </b></i>


một phương thức ứng với một hành vi của đối tượng.



<i><b>• Thơng báo (Messages): thơng tin gửi cho đối tượng kích hoạt </b></i>


phương thức. Một thơng báo là một hàm hoặc một thủ tục gọi


từ một đối tượng đến một đối tượng khác



</div>
<span class='text_page_counter'>(52)</span><div class='page_container' data-page=52>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Thuộc tính (attribute)</b>



• Mơ tả đặc điểm của đối tượng.


• Một thuộc tính phải có một kiểu xác định.


• Chỉ có đối tượng có thể thay đổi giá trị của thuộc tính


• Tập giá trị của thuộc tính xác định trạng thái của đối tượng


</div>
<span class='text_page_counter'>(53)</span><div class='page_container' data-page=53>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Quan hệ giữ lớp và đối tượng</b>



<b>• Lớp mơ tả một tập các đối tượng cùng thuộc tính, hành vi, mối quan </b>
hệ và ngữ cảnh.


<b>• Một đối tượng được </b>định nghĩa <b>bởi một lớp. Một lớp xác định một </b>


mẫu cấu trúc và hành vi của tất cả đối tượng.


<b>• Lớp là một định nghĩa trừu tượng của các đối tượng.</b>


</div>
<span class='text_page_counter'>(54)</span><div class='page_container' data-page=54>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Khái niệm Relation và Link</b>



<b>• Relations: Quan hệ giữa các lớp </b>
<b>• Links: quan hệ giữa các đối tượng</b>


<b>• Ký hiệu trong UML</b>



</div>
<span class='text_page_counter'>(55)</span><div class='page_container' data-page=55>

<b>Các khái niệm cơ bản trong hướng đối tượng</b>



<b>• Class diagrams</b>



• Mơ tả các lớp trong hệ thống và các loại mối quan hệ giữa chúng, bao
gồm:


• Association


• Generalization (Inheritance)
• Aggregation or composition
• Dependency


</div>
<span class='text_page_counter'>(56)</span><div class='page_container' data-page=56>

1. Câu nào sau đây là đúng? Nếu sai thì giải thích.



a) Học viên là một lớp?.



b) Nguyễn văn A là một lớp?.


c) Tạo một công việc là một object.
d) Xóa tập tin là một hành vi?


e) Tên là một thuộc tính?


2. Giả sử cần xây dựng một hệ thống đăng ký học phần, xác


định :



a) 3 lớp cho mơ hình


b) Xác định ít nhất 3 thuộc tính cho mỗi lớp


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×