Phân tích thiết kế hệ thống UML SSAD - UML
lượt xem 31
download
Unified Modeling Language (UML) là ngôn ngữ giúp - đặc tả - trực quan hóa - xây dựng - làm sưu liệu các artifact của một hệ thống phần mềm Ví dụ : Use-Case Hệ thống Đăng Ký học phần ở một Trường ĐH
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Phân tích thiết kế hệ thống UML SSAD - UML
- Phân tích thiết kế hệ thống UML SSAD - UML Gv: Nguyễn Ngọc Tú Email: nntu@hoasen.edu.vn
- UML là gì? Unified Modeling Language (UML) là ngôn ngữ giúp đặc tả trực quan hóa xây dựng làm sưu liệu các artifact của một hệ thống phần mềm NNTu Công Nghệ Phần Mềm - W2007 2
- Lịch sử của UML NNTu Công Nghệ Phần Mềm - W2007 3
- Đầu vào của UML Booch Rumbaugh Jacobson Fusion Meyer Operation descriptions, Before and after Message numbering conditions Embley Harel Singleton classes, State charts High-level view Gamma, et.al Wirfs-Brock Frameworks, patterns, Responsibilities Odell notes Shlaer - Mellor Classification Object Lifecycles NNTu Công Nghệ Phần Mềm - W2007 4
- UML cung cấp các lược đồ chuẩn State State State State Diagrams Class Diagrams Class Diagrams Diagrams Use-Case Diagrams Use-Case Diagrams Use-Case State Use-Case State Diagrams Use-Case State Diagrams Use-Case Use-Case State Diagrams Diagrams Use-Case Object Diagrams Diagrams Use-Case Object Diagrams Diagrams Use-Case Diagrams Diagrams Diagrams Activity Diagrams Diagrams Activity Diagrams Diagrams Diagrams Diagrams Diagrams Scenario State Scenario State Scenario State Scenario State Diagrams Diagrams State Sequence Diagrams Diagrams State Sequence Diagrams Diagrams Diagrams Diagrams Models Diagrams Diagrams Diagrams Diagrams Scenario Component Scenario Component Scenario Component Diagrams Scenario Component Diagrams Component Diagrams Deployment Collaboration Diagrams Component Diagrams Deployment Collaboration Diagrams Diagrams Diagrams Diagrams Diagrams Diagrams Diagrams Diagrams Diagrams NNTu Công Nghệ Phần Mềm - W2007 5
- Ví dụ : Use-Case Hệ thống Đăng Ký học phần ở một Trường ĐH Register for Courses Student Course Catalog Select Courses to Teach Professor Maintain Professor Information Maintain Student Information Registrar Close Registration Billing System NNTu Công Nghệ Phần Mềm - W2007 6
- Ví dụ lược đồ Class Hệ thống Đăng Ký học phần ở một Trường ĐH MaintainScheduleForm MainForm 0..1 1 // select maintain schedule() + // open() + // select 4 primary and 2 alternate offerings() 1 1 1 0..* CourseCatalogSystem RegistrationController // add courses to schedule() // get course offerings() // get course offerings () 0..1 1 Schedule // create with offerings() NNTu Công Nghệ Phần Mềm - W2007 7
- Ví dụ: lược đồ tuần tự Dùng biểu đồ trình tự hệ thống: HĐKM Thầy giáo đăng nhập mật khẩu Kiểm tra mật khẩu y/c chọn học kỳ chọn một học kỳ y/c chọn việc C-1:Thêm một lớp giảng IF ‘thêm’ được chọn IF ‘bỏ’ được chọn C-2:Bỏ một lớp giảng IF ‘xem’ được chọn C-3:Xem một lịch biểu IF ‘in’ được chọn C-4:In một lịch biểu IF ‘ra’ được chọn Kết thúc NNTu Công Nghệ Phần Mềm - W2007 8
- Các Artifact then chốt Use-Case Class Diagram State Diagram Diagram add file DocumentList FileMgr Document add( ) name : int delete( ) fetchDoc( ) docid : int sortByName( ) numField : int Writing add file [ numberOffile==MAX ] / get( ) flag OFF read() fill the open( ) code.. close( ) read( ) FileList Openning sortFileList( ) Use-Case 1 fList create( ) fillDocument( ) add( ) delete( ) close file 1 Actor A Actor B close file Closing Reading rep Use-Case 2 File Repository Customer (from Persistence) GrpFile read( ) name name : char * = 0 Domain read( ) readDoc( ) addr Deployment open( ) readFile( ) create( ) receive() fillFile( ) withdraw() Use-Case 3 Expert fetch() send() Diagram UI Class MFC DocumentApp ºÐ»ê ȯ°æÀÇ Çϵå¿þ¾î¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðµ¨ - À©µµ¿ì 95 : Ŭ¶óÀ̾ðÆ® - À©µµ¿ì NT: ÀÀ¿ë¼-¹ö - À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼-¹ö ¹× µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö - IBM ¸ÞÀÎÇÁ·¹ÀÓ: µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö DocumentList RogueWave Repository Windows95 Window95 Persistence 9: sortByName ( ) Windows95 global ¹®¼-°ü¸® FileManager Ŭ¶óÀ̾ðÆ®.EXE ¹®¼-°ü¸® ¾ÖÇø´ mainWnd : MainWnd Windows NT Package 1: Doc view request ( ) L Document Solaris 2: fetchDoc( ) ¹®¼-°ü¸® ¿£Áø.EXE gFile : GrpFile 4: create ( ) Alpha UNIX 8: fillFile ( ) ÀÀ¿ë¼-¹ö.EXE Diagram Windows User Interface NT user : »ç¿ëÀÚ GraphicFile IBM fileMgr : FileMgr Mainframe File FileList 3: create ( ) 6: fillDocument ( ) Definition µ¥ÀÌŸº£À̽º¼-¹ö 7: readFile ( ) 5: readDoc ( ) document : Document repository : Repository Forward Engineering(Code Generation) Collaboration Diagram Component and Diagram Reverse Engineering mainWnd fileMgr : document : gFile repository FileMgr Document user Source Code edit, compile, debug, link 1: Doc view request ( ) ƯÁ¤¹®¼-¿¡ ´ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. 2: fetchDoc( ) 3: create ( ) 4: create ( ) 5: readDoc ( ) È-ÀÏ°ü¸®ÀÚ´Â Àоî¿Â 6: fillDocument ( ) ¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼- °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. 7: readFile ( ) 8: fillFile ( ) È-¸é °´Ã¼´Â ÀоîµéÀÎ 9: sortByName ( ) °´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î Á¤·ÄÀ» ½ÃÄÑ È-¸é¿¡ º¸¿©ÁØ´Ù. Sequence Diagram Executable System NNTu Công Nghệ Phần Mềm - W2007 9
- Qui trình là gì? Một qui trình xác định Ai làm Gì, Khi nào và Như thế nào để đạt được mục đích cuối cùng. Trong Công nghệ phần mềm đích là xây dựng một sản phẩm phần mềm hoặc nâng cấp một sản phẩm có s ẵn Software Engineering Các yêu cầu Hệ thống Process mới/thay đổi mới/thay đổi NNTu Công Nghệ Phần Mềm - W2007 10
- Một qui trình hiệu quả ... Cung cấp các chỉ dẫn để phát triển một cách hiệu quả một phần mềm có chất lượng Giảm thiểu rủi ro tăng khả năng tiền định Nắm giữ và thể hiện các kinh nghiệm tốt Học từ các kinh nghiệm khác Mentor on your desktop Mở rộng các tài liệu huấn luyện (Extension of training material) Promotes common vision and culture Cung cấp hướng dẫn về cách dùng các công cụ ứng dụng Chuyển tải thông tin trực tuyến, chỉ dẫn chi tiết NNTu Công Nghệ Phần Mềm - W2007 11
- RUP chuyển tải các kinh nghiệm RUP mô tả cách ứng dụng hiệu quả 6 kinh nghiệm quí dành cho quá trình phát triển phần mềm Phát triển theo vòng lặp Sử dụng Kiểm định Quản trị Mô hình hóa kiến trúc trực quan chất lượng các yêu cầu Component Kiểm soát các thay đổi trong hệ thống NNTu Công Nghệ Phần Mềm - W2007 12
- RUP định hướng bởi các Use-Case Một actor là một người hoặc một cái gì đó bên ngoài hệ thống Check Balance Customer tương tác với hệ thống Một Use-Case là một chuỗi các hành động mà hệ thống thực Withdraw Money hiện mang lại một kết quả quan sát được Các Use-Case của một Cash Machine đối với một actor. NNTu Công Nghệ Phần Mềm - W2007 13
- Use-Case chứa luồng các sự kiện Luồng các sự kiện (Flow of events) của Use-Case rút tiền (Withdraw Money): 1. Use-Case bắt đầu khi khách hàng đưa thẻ tín dụng vào. Hệ thống đọc và thẩm tra thông tin của thẻ. 2. Hệ thông nhắc nhập số PIN. Hệ thống kiểm tra số PIN. 3. Hệ thống hỏi tác vụ nào khách hàng muốn thực hiện. Khách hàng chọn “Rút tiền.” 4. Hệ thống hỏi số lượng. Khách hàng nhập số lượng. 5. Hệ thống yêu cầu nhập kiểu tài khoản. Khách hàng chọn checking hoặc savings. 6. Hệ thống liên lạc với ATM network . . . NNTu Công Nghệ Phần Mềm - W2007 14
- Lợi ích của Use-Case Use-Case ngắn gọn, đơn giản và, dễ hiểu đối với End users, developers, … hiểu các yêu cầu chức năng của hệ thống Use-Case định hướng nhiều hoạt động trong qui trình: Tạo và thẩm định mô hình thiết kế (design model) Định nghĩa các test case và các thủ tục của test model Qui hoạch các vòng lặp Tạo sưu liệu cho người dùng Triển khai hệ thống Use-Case giúp đồng bộ hóa nội dung các mô hình (model) khác nhau NNTu Công Nghệ Phần Mềm - W2007 15
- RUP là qui trình Architecture-Centric Kiến trúc là trọng tâm của các vòng lặp đầu tiên Xây dựng, thẩm tra, và xđ giới hạn của kiến trúc tạo thành mục tiêu chính của giai đoạn triển khai (elaboration) Prototype của kiến trúc xác nhận tính hợp lệ của kiến trúc và đóng vai trò baseline cho phần còn lại của qui trình phát triển Sưu liệu về kiến trúc phần mềm là artifact chính mô tả kiến trúc được chọn Các artifact khác kế thứa từ kiến trúc: Design guidelines bao gồm cách sử dụng pattern và idiom Cấu trúc sản phẩm Cấu trúc của đội ngũ phát triển phần mềm NNTu Công Nghệ Phần Mềm - W2007 16
- Biểu diễn kiến trúc : Mô hình 4+1 View Logical Implementation View View Analysts/ Programmers End-user Designers Software management Functionality Structure Use-Case View Process Deployment View View System Integrators System Engineering Performance System topology Scalability Delivery, installation Throughput communication NNTu Công Nghệ Phần Mềm - W2007 17
- Lợi ích qui trình Architecture-Centric Giúp đạt và giữ vững sự kiểm soát tốt dự án, quản lý độ phức tạp của nó, và duy trì sự tích hợp của hệ thống Cung cấp khả năng tái sử dụng hiệu quả ở nhiều mức độ khác nhau Cung cấp nền tảng cho quản lý dự án Giúp dễ dàng phát triển theo hướng component-based Một component đảm trách một chức năng rõ ràng trong khuôn khổ một kiến trúc được định nghĩa tốt Một component thích ứng và cung cấp mọt hiện thực hóa vật lý của một tập các giao diện (interface) Các component tồn tại tương ứng với một kiến trúc cụ thể NNTu Công Nghệ Phần Mềm - W2007 18
- Các Phase trong chu kỳ sống Inception Elaboration Construction Transition time RUP có 4 phase: Inception - Định nghĩa phạm vi của dự án Elaboration - Lập kế hoạch dự án, mô tả các đặc tính, định ranh giới kiến trúc Construction – Xây dựng sản phẩm Transition - Chuyển giao sản phẩm cho người dùng NNTu Công Nghệ Phần Mềm - W2007 19
- Các mốc chính đặt tại ranh giới các Phase Inception Elaboration Construction Transition time Lifecycle Lifecycle Initial Operational Product Objective Architecture Capability Release Milestone Milestone Milestone NNTu Công Nghệ Phần Mềm - W2007 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình phân tích thiết kế hệ thống part 1
15 p | 763 | 264
-
Giáo trình phân tích thiết kế hệ thống part 2
15 p | 546 | 188
-
Giáo trình phân tích thiết kế hệ thống part 3
15 p | 420 | 155
-
Giáo trình phân tích thiết kế hệ thống part 4
15 p | 372 | 128
-
Giáo trình phân tích thiết kế hệ thống part 5
15 p | 321 | 128
-
Giáo trình phân tích thiết kế hệ thống part 6
15 p | 337 | 121
-
Giáo trình phân tích thiết kế hệ thống part 7
15 p | 283 | 110
-
Giáo trình phân tích thiết kế hệ thống part 8
15 p | 266 | 107
-
Giáo trình phân tích thiết kế hệ thống part 9
15 p | 288 | 105
-
Giáo trình phân tích thiết kế hệ thống part 10
7 p | 264 | 102
-
Giáo trình Phân tích thiết kế hệ thống thông tin
214 p | 247 | 97
-
PHÂN TÍCH THIẾT KẾ HỆ THỐNG
191 p | 408 | 80
-
Giáo trình Phân tích thiết kế hệ thống thông tin quản lý: Phần 2
36 p | 18 | 8
-
Giáo trình Phân tích thiết kế hệ thống thông tin (Nghề: Công nghệ thông tin - Trung cấp) - Trường Cao đẳng nghề Hà Nam (năm 2017)
62 p | 26 | 7
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Giới thiệu môn học - Nguyễn Hoàng Ân
23 p | 89 | 6
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Bài 9 - TS. Trần Mạnh Tuấn
46 p | 59 | 6
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 1: Tổng quan về phát triển hệ thống
20 p | 75 | 5
-
Giáo trình Phân tích thiết kế hệ thống (Ngành: Công nghệ thông tin - Cao đẳng) - Trường Cao đẳng Xây dựng số 1
67 p | 13 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn