Lịch sử phương pháp luận PTHT
Các khái niệm cơ bản của hướng đối tượng
Đối tượng : biểu diễn cho một thực thể vật lý, một thực thể khái niệm hay một thực thể phần mềm.
Lớp : là mô tả của một nhóm đối tượng có chung các thuộc tính, hành vi và các mối quan hệ. Đối tượng là thể hiện của một lớp và lớp là định nghĩa trừu tượng của đối tượng.
Thành phần : là một phần của hệ thống hoạt động độc lập và giữ vai trò nhất định trong hệ thống.
Gói : là cách tổ chức các thành phần, phần tử hệ thống thành các nhóm. Tập hợp các gói có thể tạo nên một hệ thống con.
Kế thừa : một lớp có thể sử dụng lại thuộc tính, phương thức của một hoặc nhiều lớp khác.
Mô hình hóa hệ thống phần mềm
Mục tiêu của giai đoạn PTHT là xây dựng nên mô hình tổng thể cho hệ thống cần xây dựng.
Mô hình này cần được trình bày theo hướng nhìn (View) của người sử dụng và quan trọng là họ phải hiểu được.
Mô hình này cũng được sử dụng để xác định các yêu cầu của người dùng đối với hệ thống và giúp chúng đánh giá tính khả thi của dự án.
Mô hình thường được mô tả bằng ngôn ngữ trực quan, có nghĩa là đa phần các thông tin được thể hiện bằng các ký hiệu đồ họa và các kết nối giữa chúng.
24 trang |
Chia sẻ: trungkhoi17 | Lượt xem: 749 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Ngôn ngữ mô hình hóa - Chương 1: Giới thiệu - Trương Quốc Định, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 1: GIỚI THIỆUGV : TS. Trương Quốc ĐịnhGiới thiệu môn họcTên môn học: Ngôn ngữ mô hình hóa UML - CT165Số TC: 3TC (2TC LT + 1TC TH)Đánh giáKiểm tra giữa kỳ30% điểm tổng kếtTuần 7Thực hành tối thiểu 5/6 buổiCuối kỳ70% điểm tổng kếtTài liệu tham khảoSttTựaThông tin chi tiết1UML 2của Benoit Charoux, Aomar Osmani, Yann Thiery-Mieg, NXB Pearson Education France, 2005.2UML par la pratique- Etude de cas et exercices corrigéscủa Pascal Roques, XB lần 2, NXB Eyrolles, 20013UML pour l’analyse d’un systeme d’informationcủa Chantal Morley, Jean Hugues, Bernard Leblanc, XB lần 2, NXB Dunod, 20024Phân tích thiết kế hướng đối tựơng bằng UMLcủa Đặng Văn Đức, NXB Giáo dục, 20025Modélisation objet avec UMLcủa Pierre-Alian Muller, Nathalie Gaertner, XB lần 2, NXB Eyrolles, 20046Object-oriented analysisDavid William Brown, NXB John Wileys & Sons, 20027Trang web của OMG bài giảng UMLcủa Cô Phạm Thị Xuân Lộc3Tài liệu tham khảo (tt)9The object-oriented development processcủa Tom Rowlett, NXB Prentice Hall PTR, 200110A introducton to object-oriented analysis- Objects in plain Englishcủa David Willia Brown, NXB John Wileys & Sons, 200211Objects¸ components and frameworks with UMLcủa Desmond Francis D’Souza, Alan Cameron Wills, NXB Addison – Wesley, 199912 Software reuse- Domain analysis and design processcủa Jag Sodhi, Prince Sodhi, NXB McGraw- Hill, 199913La démarche objet- Concepts et outilscủa Max Bouché, NXB Afnor, 199414Object models- strategies, patterns & applicationscủa Peter Coad, NXB Prentice-Hall, 199715Modern system analysis & designcủa Jeffrey Hoffer, Joey F.George, Joseph S. Valacich, NXB Prentice-Hall, 20024Lịch sử phương pháp luận PTHTPhương pháp hướng cấu trúc được xem là phương pháp chuẩn phát triển phần mềm vào thập niên 70-80.Tuy nhiên phương pháp này tỏ ra kém hiệu quả đối với những dự án phần mềm lớn và tính tái sử dụng thấpPhương pháp luận phát triển phần mềm hướng đối tượng ra đời vào thập niên 90 và nhanh chóng trở nên phổ biến. 5Lịch sử phương pháp luận PTHT (tt)Phương pháp hướng cấu trúcLà phương pháp thiết kế từ trên xuống (top-down) : Chia bài toán lớn thành các bài toán con, mỗi bài toán con giải quyết một vấn đề nhất định.Cách tiếp cậnHướng dữ liệu : phân rã phần mềm theo các chức năng cần đáp ứng và dữ liệu cho các chức năng đó.Hướng xử lý : phân tích phần mềm dựa trên các hoạt động thực thi, không quan tâm đến định nghĩa dữ liệu.Ưu điểmTư duy phân tích rõ rang, chương trình dễ hiểuHạn chếKhông hỗ trợ việc sử dụng lại do từng modul phụ thuộc chặt chẽ vào bài toán và cấu trúc dữ liệu cụ thể.Không thích hợp giải quyết các bài toán lớn vì có sự phức tạp trong phân rã và tích hợp.6Lịch sử phương pháp luận PTHT (tt)Hướng đối tượngTư duy theo cách ánh xạ các thành phần của hệ thống vào các đối tượng ngoài đời thực.Ứng dụng được chia thành các thành phần nhỏ, gọi là các đối tượng, chúng tương đối độc lập với nhau.Mỗi đối tượng bao gồm đầy đủ dữ liệu và các hoạt động của nó.Hệ thống được xây dựng bằng cách ghép nối các đối tượng lại với nhau thông qua các mối quan hệ cũng như sự tương tác giữa chúng.Ưu điểm:Hỗ trợ sử dụng lại mã nguồn do tính đặc thù của phương pháp lập trình hướng đối tượng.Phù hợp với các hệ thống lớn do chỉ chú trọng việc xác định đối tượng và các hành vi có liên quan.7Lịch sử phương pháp luận PTHT (tt)Các nguyên tắc cơ bản của hướng đối tượngTrừu tượng hóaThực thể phần mềm được trừu tượng hóa thành các đối tượng, các đối tượng được trừu tượng hóa thành các lớp với thuộc tính và phương thức tương ứng. Các lớp được trừu tượng hóa thành cac lớp kế thừa.Tính đóng góiCác đối tượng có những phương thức và thuộc tính riêng.Việc Cài đặt các đối tượng độc lập với nhau.Cài đặt hệ thống độc lập với người sử dụngTính phân cấpPhân cấp theo các cấp độ trừu tượng từ cao đến thấp8Lịch sử phương pháp luận PTHTCác khái niệm cơ bản của hướng đối tượngĐối tượng : biểu diễn cho một thực thể vật lý, một thực thể khái niệm hay một thực thể phần mềm.Lớp : là mô tả của một nhóm đối tượng có chung các thuộc tính, hành vi và các mối quan hệ. Đối tượng là thể hiện của một lớp và lớp là định nghĩa trừu tượng của đối tượng.Thành phần : là một phần của hệ thống hoạt động độc lập và giữ vai trò nhất định trong hệ thống.Gói : là cách tổ chức các thành phần, phần tử hệ thống thành các nhóm. Tập hợp các gói có thể tạo nên một hệ thống con.Kế thừa : một lớp có thể sử dụng lại thuộc tính, phương thức của một hoặc nhiều lớp khác.9Mô hình hóa hệ thống phần mềmMục tiêu của giai đoạn PTHT là xây dựng nên mô hình tổng thể cho hệ thống cần xây dựng. Mô hình này cần được trình bày theo hướng nhìn (View) của người sử dụng và quan trọng là họ phải hiểu được. Mô hình này cũng được sử dụng để xác định các yêu cầu của người dùng đối với hệ thống và giúp chúng đánh giá tính khả thi của dự án.Mô hình thường được mô tả bằng ngôn ngữ trực quan, có nghĩa là đa phần các thông tin được thể hiện bằng các ký hiệu đồ họa và các kết nối giữa chúng.10UML là gì?Là ngôn ngữ mô hình hóa, không phải là phương pháp.Ngôn ngữ mô hình hóa (đa phần là ký hiệu hình học) là các khái niệm dùng để biểu diễn thiết kế.Ngôn ngữ mô hình hóa là thành phần quan trọng của phương pháp, là công cụ chính để giao tiếp giữa các thành viên.11Vì sao chọn UML?Có đầy đủ các lợi thế của phương pháp PTHĐT.UML cho phépĐặc tả (specify)Xây dựng (construct)Hiển thị (display)Lập sưu liệu (document)các hệ thống thông tin sử dụng khái niệm đối tượng.12Vì sao chọn UML? (tt)Đặc tảTrong quá trình phát triển hệ thống chúng ta cần "giao tiếp" với các mô hình của hệ thống→ phương pháp, công cụ giao tiếp phải chuẩn mực, dùng chung, không mơ hồ.Dễ dàng có được nếu dùng UML.Vì sao chọn UML? (tt)Xây dựngVì UML là ngôn ngữ hình thức nên có thể xây dựng công cụ diễn dịch nó.Chúng ta có thể đối sánh các phần tử của UML sang một ngôn ngữ lập trình như C++, JAVA nếu sử dụng các công cụ hỗ trọ như Rational RoseVì sao chọn UML? (tt)Hiển thịKý hiệu hình học cho phép dễ dàng hiểu được các vấn đề đặc tả.UML là ngôn ngữ hình thức nên nhà phát triển nào quen thuộc với UML sẽ dễ dàng hiểu các mô hình.Vì sao chọn UML? (tt)Sưu liệuSử dụng UML theo cách phù hợp sẽ có thể tạo được tập sưu liệu như là bản thiết kế hoàn chỉnh của hệ thống.Lịch sử phát triển UMLGiới thiệu UMLCác khái niệm trong UMLMô hình : là biểu diễn của sự vật hay tập sự vật trong một lĩnh vực áp dụng nào đó theo một cách khác.Nắm bắt các khía cạnh quan trọng và bỏ qua những khía cạnh không quan trọng.Ý nghĩa của mô hình đối với PTHTNắm bắt chính xác yêu cầu của hệ thống cần phát triểnThể hiện tư duy về thiết kế hệ thốngGiúp làm chủ các hệ thống phức tạp.18Giới thiệu UML (tt)19Các khái niệm trong UMLHướng nhìn (view) : Là tập con các biểu đồ UML được xây dựng để biểu diễn một khía cạnh nào đó của hệ thống.Khía cạnh chínhCác hướng nhìnCác biểu đồCác khía niệm chínhKhía cạnh cấu trúc hệ thốngStatic viewClass diagramLớp, liên hệ kế thừa, Use case viewUse case diagramUse case, tác nhân, Implementtation viewComponent diagramThành phần, giao diện,Deployment viewDeployment diagramNode, vị trí, Khía cạnh độngState machine viewState diagramTrạng thái, sự kiện,Activity viewActivity diagamTrạng thái, sự kiện,Interaction viewSequence diagramTương tác, thông điệp,Collaboration diagramCộng tác, thông điệp, ...Giới thiệu UML (tt)20UML và các giai đoạn phát triển hệ thốngPreliminary Investigation: Sử dụng các use cases mô tả các yêu cầu của người dùng. Phần mô tả use case xác định các yêu cầu, phần diagram thể hiện mối quan hệ và giao tiếp với hệ thống.Analysis: Sử dụng Class diagrams nhằm trừu tượng hóa các thực thể ngoài đời thực để làm rõ sự tồn tại cũng như mối quan hệ của chúng. Chỉ những lớp (class) nằm trong phạm vi bài toán mới đáng quan tâm.Design: Kết quả phần analysis được phát triển thành giải pháp kỹ thuật. Các lớp được mô hình hóa chi tiết để cung cấp hạ tầng kỹ thuật như giao diện, nền tảng cho database, Kết quả phần Design là các đặc tả chi tiết cho giai đoạn xây dựng phần mềm.Development: Mô hình Design được chuyển thành code. Lập trình viên sử dụng các biểu đồ UML trong giai đoạn Design để hiểu vấn đề và tạo code.Test : Sử dụng các biểu đồ của các giai đoạn trước để kiểm thử hệ thống. Giới thiệu UML (tt)21Các loại sơ đồ trong UMLSơ đồ về cấu trúcSơ đồ vềhành xửSơ đồ về tương tácUMLGiới thiệu UML (tt)22Sơ đồ về cấu trúcStructure diagramsSơ đồ lớpClass diagramSơ đồ đối tượngObject diagramSơ đồ cấu trúc phứcComposite structure diagramSơ đồ đóng góiPackage diagramSơ đồ triển khaiDeployment diagramSơ đồ thành tốComponent diagramGiới thiệu UML (tt)23Sơ đồ lớp (class diagram)Chỉ ra các lớp đối tượng trong hệ thống.Các thuộc tính và phương thức của từng lớp.Mối quan hệ giữa các lớp.Sơ đồ đối tượng (object diagram)là một phiên bản của sơ đồ lớp.Chỉ ra một loạt các đối tượng thực thể của lớp, thay vì các lớp.Một sơ đồ đối tượng vì vậy là một ví dụ của sơ đồ lớp, chỉ ra một bức tranh mà hệ thống có thể có tại một thời điểm nào đó.Giới thiệu UML (tt)24Sơ đồ cấu trúc phức (Composite structure diagram)Chỉ ra cấu trúc nội tại của một lớpCác cộng tác có thể cóSơ đồ đóng gói (Package diagram)Là cách tổ chức các phần tử mô hình hóa vào một nhómCó thể áp dụng cho bất kỳ loại sơ đồ UML nàoThường dùng để đóng gói cho sơ đồ lớp và sơ đồ use case
Các file đính kèm theo tài liệu này:
- bai_giang_ngon_ngu_mo_hinh_hoa_chuong_1_gioi_thieu_truong_qu.ppt