Những vấn đề cơ bản về hệ thống thông tin ppt

4 595 5
Những vấn đề cơ bản về hệ thống thông tin ppt

Đang tải... (xem toàn văn)

Thông tin tài liệu

Những vấn đề cơ bản về hệ thống thông tin (HTTT) � 1.1.1. Khái niệm chung về hệ thống và các thành phần � Hệ thống: � Hệ thống thông tin (information system): � Các thành phần: Nguồn tài nguyên (Resources- phần cứng; Phần mềm); Các quy tắc – thủ tục hệ thống ( Procedures); Dữ liệu có ích (Data/Information- là dữ liệu hữu ích cho việc cung cấp output thỏa mãn yêu cầu người dùng); Quy trình xử lý (Processes). � Môi trường � Biên hay giới hạn (boundaries). � Ðầu vào (inputs). � Ðầu ra (outputs) 1.1.2. Các hệ thống thông tin và phương thức xử lý thông tin trong MTĐT. � Xét trên góc độ một doanh nghiệp thì hệ thống thông tin gồm có: � Hệ thống hỗ trợ tác nghiệp � Hệ thống thống thông tin quản lý � Hệ thống thông tin hỗ trợ quyết định � Nhiều hệ thống thông tin khác: � Hệ thống xử lý giao dịch (Transaction processing system – TPS) � Hệ thống thông tin quản lý (Management information system - MIS) � Hệ thống hỗ trợ quyết định (Decision support system – DSS) � Hệ thống thông tin điều hành (Excutive information system – EIS) � Hệ thống chuyên gia (Expert System). � Hệ thống truyền thông và cộng tác (Communication and collaboration system). Hệ thống tự động văn phòng (Office automation system) H h tr nghi p v x lý d li u t o ra t các nghi p vệ ỗ ợ ệ ụ ử ữ ệ ạ ừ ệ ụ kinh doanh H h tr qu n lý cung c p thông tin và h tr c n thi t ệ ỗ ợ ả ấ ỗ ợ ầ ế cho vi c ra quy t đ nh hi u qu c a nhà qu n lýệ ế ị ệ ả ủ ả Các lo i HTTT khác có th h tr ho c nghi p v , qu n lý,ạ ể ỗ ợ ặ ệ ụ ả ho c các ng d ng chi n l cặ ứ ụ ế ượ Phương thức xử lý thông tin trong MTĐT: � Sử dụng chương trình máy tính để nhập DL, phân tích, biến đổi dữ liệu thành các thông tin hữu ích cho người dùng. Các nhiệm vụ cơ bản cho việc xử lý dữ liệu bao gồm: � Thu thập DL � Nhập DL � Làm sạch DL � Biến đổi DL thành dạng mà chương trình có thể sử dụng được � Lưu trữ DL � Khai thác dữ liệu � Hợp nhất D � Xử lý tương tác và xử lý giao dịch � Xử lý theo lô và xử lý trực tuyến � Xử lý thời gian thực � Xử lý phân tán a) Xử lý tương tác và xử lý giao dịch � * Xử lý tương tác là xử lý thực hiện từng phần, xen kẽ giữa phần thực hiện bởi người và phần thực hiện bởi MTĐT; � * Xử lý giao dịch, MTĐT thực hiện một mạch không ngừng cho tới khi đạt kết quả cuối cùng. � b) Xử lý theo lô và xử lý trực tuyến � * Xử lý theo lô là thông tin được gom lại cho đủ một số lượng nhất định ( một lô haymột mẻ ) mới được đem ra xử lý một thể. 􀂆 * Xử lý trực tuyến ( hay còn gọi là xử lý trên dòng ) là thông tin đến được đem xử lý ngay lập tức, một cách cá thể bất kể vào lúc nào. 􀂆 c) Xử lý thời gian thực 􀂆 Là hành vi của một hệ thống phải thoả mãn một số điều kiện ràng buộc rất ngặt nghèo về thời gian. 􀂆 d) Xử lý phân tán: Việc xử lý thực hiện trên mạng mà các nút là những MTĐT. 1.2. Vòng đời phát triển hệ thống 􀂆 Nghiên cứu sơ bộ (Preliminary Investigation hay còn gọi là Feasibility Study) 􀂆 Phân tích yêu cầu (Analysis) 􀂆 Thiết kế hệ thống (Design of the System) 􀂆 Xây dựng phần mềm (Software Construction) 􀂆 Thử nghiệm hệ thống (System Testing) 􀂆 Thực hiện, triển khai (System Implementation) 􀂆 Bảo trì, nâng cấp (System Maintenance) 1.2.1. Các mô hình chu trình phát triển của hệ thống 􀂆 Thác nước (waterfall); 􀂆 Phát triển mẫu (prototyping); 􀂆 xoắn ốc; 􀂆 Hướng đối tượng (OO) 􀂆 1.2.2. So sánh ưu nhược điểm của các mô Hình 􀂆 Thác nước (waterfall): 􀂆 Các dự án thực tế rất khó tuân thủ theo mô hình này một cách tuần tự. Nó thường đòi hỏi một sự lặp trong các bước. 􀂆 Các yêu cầu của hệ thống đôi khi không phải luôn được xác định một cách rõ ràng ngay từ khi bắt đầu hệ thống. 􀂆 Nhiều khi các lỗi lớn thường phải quay lại pha thiết kế hoặc thậm chí pha nghiên cứu tính khả thi. 􀂆 Các khách hàng ko được tham gia vào quá trình cho đến khi kết thú thiếu sự tương tác với khách hàng.ccccccccccccc c 􀂆 Để có một sản phẩm tốn khá nhiều thời gian. 􀂆 Ưu điểm:Là mô hình cổ điển rất dễ hiểu 􀂆 Phát triển mẫu (prototyping): 􀂆 Nhược điểm: Có thể xây dựng nên mô hình kémchất lượng do việc thiết kế nhanh. 􀂆 Ưu điểm: Phù hợp với người dùng; giảm được sự rủi ro về độ chắc chắn của mô hình; cho phép dừng dự án ngay từ những bước đầu tiên nếu nó không thành công; tương tác với người dùng nhiều và thậm chí người dùng còn tham gia vàoviệc thiết kế; giảm được nguy cơ lỗi trong quá trình thiết kế hệ thống. 􀂆 Mô hình xoắn ốc: 􀂆 Nhược điểm: Đây là mô hình không phổ biến nên rất khó hiểu. 􀂆 Ưu điểm: Việc tham gia của người dùng thông qua suốt dự án và việc lặp đi lặp lại của việc phát triển sẽ cải thiện được chất lượng của hệ thống. 􀂆 Mô hình xoắn ốc đảm bảo được việc cho ra đời sản phẩm nhanh chóng. và điều này sẽ giảm được chi phí cho dự án. Hướng đối tượng (OO): 􀂆 Ưu điểm: 􀂆 Mô hình này thể hiện sát với yêu cầu của bài toán đặt ra vì vậy nó dễ ràng thiết kế và xây dựng. 􀂆 Các đối tượng của hệ thống là dễ ràng thay đổi. 􀂆 Việc thiết kế theo hướng đối tượng để có thể tái sử dụng lại mô hình. dẫn đến việc tiết kiệm được thời gian phát triển và chi phí phát triển ứng dụng mới. 􀂆 Đây là hướng gần gũi với tự nhiên vì vậy việc thiết kế các modul của hệ thống là các cấu trúc dễ nhìn và logic 1.3. Các cách tiếp cận trong phân tích và thiết kế hệ thống. 􀂆 1.3.1. Hướng tiếp cận hướng chức năng 􀂆 Phân rã những chức năng lớn thành những chức năng khác nhỏ hơn để đi vào chi tiết. 􀂆 Xét mối quan hệ giữa các chức năng. 􀂆 Chuyển từ mô tả vật lý sang mô tả logic 􀂆 Phân tích theo cách từ trên xuống, sử dụng biểu đồ phân cấp chức năng 􀂆 Sử dụng Biểu đồ luồng dữ liệu 1.3.2. Hướng tiếp cận hướng đối tượng 􀂆 Các nguyên tắc cơ bản của phương pháp hướng đối tượng bao gồm : 􀂆 Trừu tượng hóa (abstraction) 􀂆 Tính đóng gói (encapsulation) và ẩn giấu thông tin 􀂆 Tính modul hóa (modularity) 􀂆 Tính phân cấp (hierarchy 1.3.3 Ưu nhược điểm của hai hướng tiếp cận 􀂆 Phương pháp hướng chức năng 􀂆 - Ưu điểm: đơn giản, tốt cho việc thiết kế ngân hàng dữ liệu 􀂆 Nhược điểm: + Khó khăn trong việc thiết kế các ứng dụng sử dụng lại. + Không phù hợp với hệ thống thường xuyên thay đổi. 􀂆 Phương pháp hướng đối tượng: Ưu điểm: Tái sử dụng: tức là có thể tạo các thành phần (đối tượng) một lần và dùng chúng nhiều lần sau đó. Chương 2: Phân tích và thiết kế hệ thống hướng chức năng 􀂆 2.1. Các khái niệm 􀂆 Phân tích hướng chức năng: Là sự nghiên cứu, điều tra, xem xét các chức năng của hệ thống một cách tỉ mỉ, toàn diện để xác định những yêu cầu về thông tin và các quá trình của hệ thống cùng với cácmối quan hệ giữa các quá trình đó, cũng như quan hệ với các hệ thống khác 􀂆 Thiết kế hướng chức năng: Là việc xác định cấu trúc phần cứng và phần mềm, xác định các modul chương trình, các giao diện và dữ liệu Phương pháp chung để phân tích: 􀂆 Cần phân rã những chức năng lớn, phổ quát thành những chức năng khác nhỏ hơn để đi vào chi tiết. 􀂆 Xét mối quan hệ giữa các chức năng 􀂆 Chuyển từ mô tả vật lý sang mô tả logic 􀂆 Chuyển từ hệ thống cũ sang hệ thống mới ở mức logic. 􀂆 Phân tích theo cách từ trên xuống (từ tổng quát đến chi tiết), phần này ta sử dụng biểu đồ phân cấp chức năng. 􀂆 Sử dụng Biểu đồ luồng dữ liệu Để nhận biết được những hệ thống quá phức tạp, phải loại bỏ những đặc điểm phụ để nhận biết cho được các đặc điểm chính.Hệ thống được nhận thức dưới hai mức: 􀂆 - Mức vật lý 􀂆 - Mức logic 􀂆 Áp dụng phương thức biến đổi: 􀂆 Bằng cách trả lời: 􀂆 - Ở mức vật lý -Mô tả thực trạng hệ thống cũ: 􀂆 + What: Cái gì? Làm gì? 􀂆 + How: Làm như thế nào? 􀂆 (Làm thế nào? Phương tiện nào? Cách làm nào? Lúc nào? Ai làm? Làm gì?) 􀂆 - Ở mức logic: Gạt bỏ những chi tiết để thấy bản chất và chỉ cần trả lời WHAT. 􀂆 2.2. Các bước phân tích và thiết kế 􀂆 2.2.1. Các bước phân tích hệ thống: Sơ đồ chức năng; Sơ đồ luồng dữ liệu. 􀂆 Sơ đồ chức năng công việc (Business Function Diagram: BFD):Là sơ đồ mô tả HTTT. Sơ đồ này chỉ ra cho ta thấy HTTT cần phải làmnhững chức năng gì. BFD không chỉ ra HTTT phải làmnhư thế nào, cũng không chỉ ra những công cụ nào được sử dụng để thực hiện những chức năng này Sơ đồ chức năng; Sơ đồ luồng dữ liệu. 􀂆 Sơ đồ luồng dữ liệu (Data Flow Diagram: DFD):là sơ đồ mô tả HTTT một cách trừu tượng. Sơ đồ này cho thấy quá trình vận động của dữ liệu trong HTTT. 􀂆 Trong sơ đồ này chỉ có các dòng dữ liệu, các công việc xử lý dữ liệu, các kho dữ liệu, các P 􀂆 2.2.2 Các bước tiến hành thiết kế hệ thống 􀂆 Thiết kế tổng thể. 􀂆 Thiết kế giao diện người máy. 􀂆 Thiết kế các kiểm soát. 􀂆 Thiết kế cơ sở dữ liệu. 􀂆 Thiết kế chương trình. CHƯƠNG 3: PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG 3.1 UML (Unified Modelling Language) UML là gì? 􀂆 UML là một ngôn ngữ mô hình hoá thống nhất bao gồm những ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng để thể hiện vàmiêu tả các thiết kế của một hệ thống. 􀂆 Nó là một ngôn ngữ để đặc tả, trực quan hoá, xây dựng và làm tu liệu cho nhiều khía cạnh khác nhau của một hệ thống. UML có thể được sử dụng làm công cụ giao tiếp giữa người dùng, nhà phân tích, nhà thiết kế và nhà phát triển phần mềm 􀂆 Trong quá trình phát triển có nhiều công ty đã hỗ trợ và khuyến khích phát triển UML có thể kể tới như : Hewlett Packard, Microsoft, Oracle, IBM, Unisys. Mục đích 􀂆 - Mô hình hoá các hệ thống sử dụng các khái niệm hướng đối tượng. 􀂆 - Thiết lập một kết nối từ nhận thức của con người đến các sự kiện cần mô hình hoá. 􀂆 - Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp, có nhiều ràng buộc khác nhau. 􀂆 - Tạo một ngôn ngữ mô hình hoá có thể sử dụng được bởi người và máy Miền ứng dụng của UML 􀂆 - Hệ thống thống tin (Information System): Cất giữ, lấy, biến đổi biểu diễn thông tin cho người sử dụng. Xử lý những khoảng dữ liệu lớn có các quan hệ phức tạp , mà chúng được lưu trữ trong các cơ sở dữ liệu quan hệ hay hướng đối tượng . 􀂆 - Hệ thống kỹ thuật (Technical System): Xử lý và điều khiển các thiết bị kỹ thuật như viễn thông, hệ thống quân sự, hay các quá trình công nghiệp. Đây là loại thiết bị phải xử lý các giao tiếp đặc biệt , không có phần mềm chuẩn và thường là các hệ thống thời gian thực (real time). 􀂆 - Hệ thống nhúng (Embeded System): Thực hiện trên phần cứng gắn vào các thiết bị như điện thoại di động, điều khiển xe hơi, … Điều này được thực hiện bằng việc lập trìnhmức thấp với hỗ trợ thời gian thực. Những hệ thống này thường không có các thiết bị như màn hình đĩa cứng, … 􀂆 - Hệ thống phân bố ( Distributed System): Được phân bố trên một số máy cho phép truyền dữ liệu từ nơi này đến nơi khácmột cách dễ dàng. Chúng đòi hỏi các cơ chế liên lạc đồng bộ để đảm bảo toàn vẹn dữ liệu và thường được xây dựng trên một số các kỹ thuật đối tượng như CORBA, COM/DCOM, hay Java Beans/RMI. 􀂆 - Hệ thống Giao dịch (Business System): Mô tả mục đích, tài nguyên (con người, máy tính, …), các quy tắc (luật pháp, chiến thuật kinh doanh, cơ chế, …), và công việc hoạt động kinh doanh. 􀂆 - Phần mềm hệ thống (System Software): Định nghĩa cơ sở hạ tầng kỹ thuật cho phần mềm khác sử dụng, chẳng hạn như hệ điều hành, cơ sở dữ liệu, giao diện người sử dụng. Phương pháp Vs các ngôn ngữ mô hình hoá 􀂆 Phương pháp hay phương thức (method) là một cách trực tiếp cấu trúc hoá sự suy nghĩ và hành động của con người. Phương pháp cho người sử dụng biết phải làm gì, làm như thế nào, khi nào và tại sao (mục đích của hành động). 􀂆 các mô hình được dùng để mô tả những gì sử dụng cho việc truyền đạt kết quả trong quá trình sử dụng phương pháp 􀂆 Điểm khác nhau là ngôn ngữ mô hình hoá không có một tiến trình (process) hay các câu lệnh (instruction) mô tả những công việc người sử dụng cần làm. 1.2 Các khái niệm cơ bản trong UML a) Khái niệmmô hình b) Các hướng nhìn (view) trong UML c) Các phần tử mô hình và các quan hệ 􀂆 Một mô hình được biểu diễn theo một ngôn ngữ mô hình hoá. Ngôn ngữ mô hình hoá bao gồm các ký hiệu – những biểu tượng được dùng trong mô hình – vàmột tập các quy tắc chỉ cách sử dụng chúng. Các quy tắc này bao gồm: 􀂆 - Syntactic (Cú pháp): cho biết hình dạng các biểu tượng và cách kết hợp chúng trong ngôn ngữ. 􀂆 - Semantic (Ngữ nghĩa): cho biết ý nghĩa của mỗi biểu tượng, chúng được hiểu thế nào khi nằm trong hoặc không nằm trong ngữ cảnh của các biểu tượng khác. 􀂆 - Pragmatic (Ngữ cảnh-hoàn cảnh): định nghĩa ý nghĩa của biểu tượng để sao cho mục đích của mô hình được thể hiện và mọi người có thể hiểu được UML và các giai đoạn của chu trình phát triển phần mềm 􀂆 Giai đoạn nghiên cứu sơ bộ: UML đưa ra khái niệm Use Case để nắm bắt các yêu cầu của khách hàng (người sử dụng). UML sử dụng biểu đồ Use case (Use Case Diagram) để nêu bật mối quan hệ cũng như sự giao tiếp với hệ thống. 􀂆 Qua phương pháp mô hình hóa Use case, các tác nhân (Actor) bên ngoài quan tâm đến hệ thống sẽ được mô hình hóa song song với chức năng mà họ đòi hỏi từ phía hệ thống (tức là Use case). Các tác nhân và các Use case được mô hình hóa cùng các mối quan hệ và được miêu tả trong biểu đồ Use case của UML. 􀂆 Mỗi một Use case được mô tả trong tài liệu, và nó sẽ đặc tả các yêu cầu của khách hàng: tức là sự chờ đợi điều gì ở phía hệ thống mà không hề để ý đến việc chức năng này sẽ được thực thi ra sao Giai đoạn phân tích: 􀂆 Giai đoạn phân tích quan tâmđến quá trình trừu tượng hóa đầu tiên (các lớp và các đối tượng). 􀂆 Sau khi nhà phân tích đã nhận biết được các lớp thành phần của mô hình cũng như mối quan hệ giữa chúng với nhau, các lớp cùng các mối quan hệ đó sẽ được miêu tả bằng công cụ biểu đồ lớp (class diagram) của UML. 􀂆 Chú ý: Trong giai đoạn phân tích, chỉ duy nhất các lớp có tồn tại trong phạm vi vấn đề (các khái niệm đời thực) là được mô hình hóa. Các lớp kỹ thuật định nghĩa chi tiết cũng như giải pháp trong hệ thống phần mềm, ví dụ như các lớp cho giao diện người dùng, cho ngân hàng dữ liệu, cho sự giao tiếp, trùng hợp, v.v , chưa phải là mối quan tâmcủa giai đoạn này. Giai đoạn thiết kế 􀂆 Kết quả của giai đoạn phân tích sẽ được mở rộng thành một giải pháp kỹ thuật. 􀂆 Các lớp mới sẽ được bổ sung để tạo thành một hạ tầng cơ sở kỹ thuật: Giao diện người dùng, các chức năng để lưu trữ các đối tượng trong ngân hàng dữ liệu, giao tiếp với các hệ thống khác, giao diện với các thiết bị ngoại vi và các máy móc khác trong hệ thống, 􀂆 Giai đoạn thiết kế sẽ đưa ra kết quả là bản đặc tả chi tiết cho giai đoạn xây dựng hệ thống Giai đoạn Lập trình 􀂆 Trong giai đoạn xây dựng (giai đoạn lập trình), các lớp của giai đoạn thiết kế sẽ được biến thành những dòng code cụ thể trong một ngôn ngữ lập trình hướng đối tượng cụ thể. Thử nghiệm: 􀂆 Một hệ thống phần mềm thường được thử nghiệm qua nhiều giai đoạn và với nhiều nhóm thử nghiệm khác nhau: 􀂆 Thử nghiệm đơn vị sử dụng biểu đồ lớp (class diagram) và đặc tả lớp, 􀂆 thử nghiệm tích hợp thường sử dụng biểu đồ thành phần (component diagram) và biểu đồ cộng tác (collaboration diagram), 􀂆 và giai đoạn thử nghiệm hệ thống sử dụng biểu đồ Use case (use case diagram) để đảm bảo hệ thống có phương thức hoạt động đúng như đã được định nghĩa từ ban đầu trong các biểu đồ này. Các KN trong UML 􀂆 KNHướng nhìn (view): Hướng nhìn chỉ ra những khía cạnh khác nhau của hệ thống cần phải được mô hình hóa. Một hướng nhìn không phải là một bản vẽ, mà là một sự trừu tượng hóa bao gồmmột loạt các biểu đồ khác nhau. 􀂆 Mỗi hướng nhìn chỉ ra một khía cạnh riêng biệt của hệ thống, người ta mới có thể tạo dựng nên một bức tranh hoàn thiện về hệ thống. 􀂆 Cũng chính các hướng nhìn này nối kết ngôn ngữ mô hình hóa với quy trình được chọn cho giai đoạn phát triển. KN Biểu đồ (diagram): Biểu đồ là các hình vẽ miêu tả nội dung trong một hướng nhìn. UML có tất cả 9 loại biểu đồ khác nhau được sử dụng trong những sự kết hợp khác nhau để cung cấp tất cả các hướng nhìn của một hệ thống. 􀂆 KN Phần tử mô hình hóa (model element): Các khái niệm được sử dụng trong các biểu đồ được gọi là các phần tử mô hình, thể hiện các khái niệm hướng đối tượng quen thuộc. Ví dụ như lớp, đối tượng, thông điệp cũng như các quan hệ giữa các khái niệm này, bao gồm cả liên kết, phụ thuộc, khái quát hóa. Một phần tử mô hình thường được sử dụng trong nhiều biểu đồ khác nhau, nhưng nó luôn luôn có chỉ một ý nghĩa và một kí hiệu Cơ chế chung: Cơ chế chung cung cấp thêm những lời nhận xét bổ sung, các thông tin cũng như các quy tắc ngữ pháp chung về một phần tử mô hình; chúng còn cung cấp thêm các cơ chế để có thể mở rộng ngôn ngữ UML cho phù hợp với một phương pháp xác định (một quy trình, một tổ chức hoặc một người dùng). Các Hướng nhìn (View) 􀂆 - Hướng nhìn Use case (use case view) : đây là hướng nhìn chỉ ra khía cạnh chức năng của một hệ thống, nhìn từ hướng tác nhân bên ngoài. 􀂆 - Hướng nhìn logic (logical view): chỉ ra chức năng sẽ được thiết kế bên trong hệ thống như thế nào, qua các khái niệm về cấu trúc tĩnh cũng như ứng xử động của hệ thống. 􀂆 - Hướng nhìn thành phần (component view): chỉ ra khía cạnh tổ chức của các thành phần code. 􀂆 - Hướng nhìn song song (concurrency view): chỉ ra sự tồn tại song song/ trùng hợp trong hệ thống, hướng đến vấn đề giao tiếp và đồng bộ hóa trong hệ thống. 􀂆 - Hướng nhìn triển khai (deployment view): chỉ ra khía cạnh triển khai hệ thống vào các kiến trúc vật lý (các máy tính hay trang thiết bị được coi là trạm công tác). Hướng nhìn Use case (Use case View): 􀂆 Hướng nhìn Use case miêu tả chức năng của hệ thống sẽ phải cung cấp do được tác nhân từ bên ngoài mong đợi. Tác nhân là thực thể tương tác với hệ thống; đó có thể là một người sử dụng hoặc làmột hệ thống khác. 􀂆 Hướng nhìn Use case là hướng nhìn dành cho khách hàng, nhà thiết kế, nhà phát triển và người thử nghiệm; nó được miêu tả qua các biểu đồ Use case (use case diagram) và thỉnh thoảng cũng bao gồm cả các biểu đồ hoạt động (activity diagram). 􀂆 Cách sử dụng hệ thống nhìn chung sẽ được miêu tả qua một loạt các Use case trong hướng nhìn Use case, nơi mỗi một Use case là một lời miêu tả mang tính đặc thù cho một tính năng của hệ thống (có nghĩa là một chức năng được mong đợi Hướng nhìn logic (Logical View): 􀂆 Hướng nhìn logic miêu tả phương thức mà các chức năng của hệ thống sẽ được cung cấp. Chủ yếu nó được sử dụng cho các nhà thiết kế và nhà phát triển. Ngược lại với hướng nhìn Use case, hướng nhìn logic nhìn vào phía bên trong của hệ thống. Nó miêu tả kể cả cấu trúc tĩnh (lớp, đối tượng, và quan hệ) cũng như sự tương tác động sẽ xảy ra khi các đối tượng gửi thông điệp cho nhau để cung cấp chức năng đã định sẵn. Hướng nhìn logic định nghĩa các thuộc tính như trường tồn (persistency) hoặc song song (concurrency), cũng như các giao diện cũng như cấu trúc nội tại của các lớp. Cấu trúc tĩnh được miêu tả bằng các biểu đồ lớp (class diagram) và biểu đồ đối tượng (object diagram). 􀂆 Quá trình mô hình hóa động được miêu tả trong các biểu đồ trạng thái (state diagram), biểu đồ trình tự (sequence diagram), biểu đồ tương tác (collaboration diagram) và biểu đồ hoạt động (activity diagram). Hướng nhìn thành phần (Component View): 􀂆 Là một lời miêu tả của việc thực thi các modul cũng như sự phụ thuộc giữa chúng với nhau. 􀂆 Nó thường được sử dụng cho nhà phát triển và thường bao gồm nhiều biểu đồ thành phần. 􀂆 Thành phần ở đây là các modul lệnh thuộc nhiều loại khác nhau, sẽ được chỉ ra trong biểu đồ cùng với cấu trúc cũng như sự phụ thuộc của chúng. Các thông tin bổ sung về các thành phần, ví dụ như vị trí của tài nguyên (trách nhiệm đối với một thành phần), hoặc các thông tin quản trị khác, ví dụ như một bản báo cáo về tiến trình của công việc cũng có thể được bổ sung vào đây Hướng nhìn song song (Concurrency View 􀂆 Hướng nhìn song song nhắm tới sự chia hệ thống thành các qui trình (process) và các bộ xử lý (processor). 􀂆 Nó cho phép chúng ta sử dụng một cách hữu hiệu các nguồn tài nguyên, thực thi song song, cũng như xử lý các sự kiện không đồng bộ từ môi trường 􀂆 Hướng nhìn này cũng phải quan tâmđến vấn đề giao tiếp và đồng bộ hóa các tiến trình đó. Hướng nhìn triển khai (Deployment View): 􀂆 Hướng nhìn triển khai chỉ cho chúng ta sơ đồ triển khai về mặt vật lý của hệ thống, ví dụ như các máy tính cũng như các máymóc và sự liên kết giữa chúng với nhau. 􀂆 Hướng nhìn triển khai giành cho các nhà phát triển, người tích hợp cũng như người thử nghiệm hệ thống và được thể hiện bằng các biểu đồ triển khai. 􀂆 Hướng nhìn này cũng bao gồm sự ánh xạ các thành phần của hệ thống vào cấu trúc vật lý; ví dụ như chương trình nào hay đối tượng nào sẽ được thực thi trên máy tính nào BiỂu đỒ (diagram) 􀂆 Biểu đồ là các hình vẽ bao gồm các ký hiệu phần tử mô hình hóa được sắp xếp để minh họa một thành phần cụ thể hay một khía cạnh cụ thể của hệ thống. 􀂆 Một mô hình hệ thống thường có nhiều loại biểu đồ, mỗi loại có nhiều biểu đồ khác nhau. Một biểu đồ là một thành phần của một hướng nhìn cụ thể; và khi được vẽ ra, nó thường thường cũng được xếp vào một hướng nhìn. Mặt khác, một số loại biểu đồ có thể là thành phần của nhiều hướng nhìn khác nhau, tùy thuộc vào nội dung của biểu đồ. 2. Các biểu đồ trong UML 􀂆 Biểu đồ Use case 􀂆 Biều đồ lớp 􀂆 Biểu đồ trạng thái 􀂆 Biểu đồ tương tác 􀂆 Biểu đồ tuần tự 􀂆 Biểu đồ cộng tác 􀂆 Biều đồ hoạt động 􀂆 Biểu đồ thành phần 􀂆 Biểu đồ triển khai 2.1 Biểu đồ Use case a) Ý nghĩa: - Biểu đồ use case biểu diễn sơ đồ chức năng của hệ thống. - Mỗi usecase mô tả một chức năng mà hệ thống cần phải có xét từ góc độ người dùng. - Các biểu đồ usecase có thể phân rã theo nhiều mức khác nhau. b) Các phần tử mô hình: - Tác nhân: - Các use case - Mối quan hệ giữa các use case: - Include: sử dụng - Extend: mở rộng - Generalization: kế thừa Được biểu diễn Phần tử mô hình Ý nghĩa Cách biểu diễn Ký hiệu trong biểu đồ 1Usecase Biểu diễn một chức năng xác định của hệ thống Hình ellip chứa tên của các use case 2Tác nhân Là một đối tượng bên ngoài hệ thống tương tác trực tiếp với các Usecase Biểu diễn bởi một hình người tượng trưng 3Mối quan hệ giữa các use case Tùy từng dạng quan hệ Extend và Include có dạng mũi tên đứt nét, Generalization có dạng mũi tên tam giác 4Biên của hệ thống Tách biệt phần bên trong và Được biểu diễn bởi một hình chữ hật ỗbên ài hệ thố c) Ví dụ biểu đồ usecase Hệ thống quản lý thư viện: - Người quản trị: đăng nhập vào hệ thống, thực hiện cập nhật thông tin và quản lý các giao dịch mượn, trả sách. - Bạn đọc: chỉ có thể tìm kiếm, tra cứu thông tin. 2.2 Biểu đồ lớp a) Ý nghĩa: - Biểu diễn cái nhìn tĩnh về hệ thống dựa trên các khái niệm lớp, thuộc tính và phương thức. - Một biểu đồ lớp chỉ ra cấu trúc tĩnh của các lớp trong hệ thống. - Các lớp là đại diện cho các “vật” được xử lý trong hệ thống. Các lớp có thể quan hệ với nhau trong nhiều dạng thức: liên kết (associated - được nối kết với nhau), phụ thuộc (dependent - một lớp này phụ thuộc vào lớp khác), chuyên biệt hóa (specialized - một lớp này làmột kết quả chuyên biệt hóa của lớp khác), hay đóng gói ( packaged - hợp với nhau thành một đơn vị). - Đi kèmvới cấu trúc bên trong của các lớp theo khái niệm thuộc tính (attribute) và thủ tục (operation). b) Các phần tử mô hình: - Lớp - Thuộc tính: Phạm_vi tên_thuộc_tính: kiểu_thuộc_tính - Phương thức: Phạm_vi Tên (danh sách tham số):kiểu trả về) Chú ý: BĐ lớp có thể chỉ có tên lớp; tên lớp + thuộc tính; tên lớp + các thao tác (phương thức): hoặc gồm tất cả các yêu cầu trên> Ví dụ về các lớp trong doanh nghiệp và các hệ thống thông tin: 􀂆 Khách hàng 􀂆 Bản thương thuyết 􀂆 Hóa đơn 􀂆 Món nợ 􀂆 Tài sản 􀂆 Bản công bố giá cổ phiếu Các mối quan hệ trong biểu đồ lớp: 􀂆 Quan hệ kết hợp (association): 􀂆 Khái quát hóa (generalization): 􀂆 Quan hệ cộng hợp (Aggregation): 􀂆 Quan hệ phụ thuộc (dependency · kết hợp (Association) : nối các phần tử và các thực thể nối (link). (quan hệ 1- 1, 1- n, Như quan hệ thực thể ở mô hình thực thể ER) 􀂆 · Khái quát hóa (Generalization): còn được gọi là tính thừa kế, có ý nghĩa rằng một phần tử này có thể là một sự chuyên biệt hóa của một phần tử khác. 􀂆 · Sự phụ thuộc (Dependency): chỉ ra rằng một phần tử này phụ thuộc trong một phương thức nào đó vào một phần tử khác. 􀂆 Cộng hợp (Aggregation): Một dạng của kết hợp, trong đó một phần tử này chứa các phần tử khác. Qhệ kết tập: 1 KN TP phụ thuộcvào KN Toàn phần Hình đậm chỉ ra là chỉ phụ thuộc, hình trống chỉ ra là có thể phụ thuộc Biểu đồ đối tượng (Object Diagram): 􀂆 Là một phiên bản của biểu đồ lớp và thường cũng sử dụng các ký hiệu như biểu đồ lớp. 􀂆 Biểu đồ đối tượng sử dụng chung các ký hiệu của biểu đồ lớp. Chú ý BĐ đối tượng là biểu đồ biểu diễn thực thể thực sự của các lớp này. Ví dụ biểu đồ đối tượng Nhận dạng lớp và đối tượng 􀂆 Sự khác biệt giữa hai loại biểu đồ này nằm ở chỗ biểu đồ đối tượng chỉ ra một loạt các đối tượng thực thể của lớp, thay vì các lớp 2.3 Biểu đồ trạng thái a) Ý nghĩa: - Biểu diễn các trạng thái và sự chuyển trạng thái của các lớp. - Một biểu đồ trạng thái thường là một sự bổ sung cho lời miêu tả một lớp. Nó chỉ ra tất cả các trạng thái mà đối tượng của lớp này có thể có, và những sự kiện (event) nào sẽ gây ra sự thay đổi trạng thái. b) Các thành phần của biểu đồ trạng thái: - Trạng thái (state): - Trạng thái con (substate) 2.3 Biểu đồ trạng thái 􀂆 Các thành phần trong biểu đồ trạng thái: 􀂆 Trạng thái bắt đầu 􀂆 Trạng thái kết thúc 􀂆 Các chuyển tiếp (transition) 􀂆 Sự kiện (event) 􀂆 Call event 􀂆 Signal event 􀂆 Time event Phần tử Ý nghĩa Biểu diễn Ký hiệu 2.3 Biể u đồ tr ạ ng thái Phần tử Ý nghĩa Biểu diễn Ký hiệu mô hình 1Trạng thái Biểu diễn một trạng thái của đối tượng trong vòng đời của đối tượng đó Hình chữ nhật vòng ở góc, có thể gồm 3 phần: tên, các biến và các hoạt độn 2Trạng thái khởi đầu Khởi đầu vòng đời của đối tượng Hình tròn đặc 3Trạng thái kết thúc Kết thúc vòng đời của đối tượng Hai hình tròn lồng nhau 4 Chuyển tiếp (transition Chuyển từ trạng thái này sang trạng thái khác Mũi tên liền nét với tên gọi là biểu diễn của chuyển tiếp đó c) Ví dụ: - Bạn đọc sử dụng thẻ mượn sách để yêu cầu mượn sách. Nếu trong kho có sách thì cho mượn, nếu chưa có thì chờ. c) Ví dụ: trạng thái lớp thẻ mượn sách 2.6 Biểu đồ hoạt động a) Ý nghĩa: - Biểu đồ hoạt động biểu diễn các hoạt động và sự đồng bộ, chuyển tiếp các hoạt động của hệ thống trong một lớp hoặc kết hợp giữa các lớp với nhau trong một chức năng cụ thể. b) Các phần tử mô hình: - Hoạt động: - Thanh đồng bộ hóa: - Điều kiện - Các luồng (swimlane c) Ví dụ: Ví dụ về chức năng mượn sách: - Khi bạn đọc yêu cầu mượn sách cần kiểm tra xem bạn đọc đó có quyền mượn và sách cần mượn có còn trong kho hay ko? - Nếu thỏa mãn cả 2 đk trên mới chomượn - Cách xây dựng BĐ hoạt động từ sơ đồ - chức năng BĐ hoạt động tương ứng 2.4 Biể u đồ tu ầ n t ự a) Ý ngh ĩ a: - Biểu diễn mối quan hệ giữa các đối tượng và các tác nhân theo thứ tự thời gian. - Nhấn mạnh đến thứ tự thực hiện các tương tác. - Các biểu đồ trình tự chứa một loạt các đối tượng được biểu diễn bằng các đường thẳng đứng. Trục thời gian có hướng từ trên xuống dưới trong biểu đồ, và biểu đồ chỉ ra sự trao đổi thông điệp giữa các đối tượng khi thời gian trôi qua. Các thông điệp được biểu diễn bằng các đường gạch ngang gắn liền với mũi tên (biểu thị thông điệp) nối liền giữa những đường thẳng đứng thể hiện đối tượng. - Trục thời gian cùng những lời nhận xét khác thường sẽ được đưa vào phần lề của biểu đồ. b) Các phầ n t ử m ô hình: - Đối tượng: - Các thông điệp (message ST Loại message Mô tả Biểu diễn 1. Gọi(call):mô tả q lời gọi từ đối tượng này đến đối tượng kia 2. trả về(return): trả về giá trị tương ứng với lời gọi 3. gửi(send): gửi 1 tín hiệu tới 1 đối tượng 4. tạo(create): tạo 1 đối tượng << Create>>mũi tên 5. hủy(destroy): hủy 1 đối tượng << Destroy>>mũi tên c) Ví dụ: Ví dụ về chức năng thêm sách: 2.7 Biểu đồ thành phần a) Ý nghĩa: - Biểu đồ thành phần được sử dụng để biểu diễn các thành phần phần mềm cấu thành nên hệ thống. - Một hệ phần mềm có thể được xây dựng từ đầu bằng cách sử dụng mô hình lớp như đã trình bày trong các phần trước của tài liệu, hoặc cũng có thể được tạo nên từ các thành phần sẵn có (COM, DLL). 2.8 Biểu đồ triển khai a) Ý nghĩa: - Biểu đồ triển khai biểu diễn kiến trúc cài đặt và triển khai hệ thống dưới dạng các nodes và các mối quan hệ giữa các node đó. Thông thường, các nodes được kết nối với nhau thông qua các liên kết truyền thông như các kết nối mạng, liên kết TCPIP, microwave… PhẦn tỬ mô hình (model element ) 􀂆 Các khái niệm được sử dụng trong các biểu đồ được gọi là các phần tử mô hình (model element). 􀂆 Mỗi phần tử mô hình còn có một sự miêu tả trực quan, một ký hiệu hình học được sử dụng để miêu tả phần tử này trong biểu đồ. 􀂆 Một vài ví dụ: lớp, đối tượng, trạng thái, nút mạng, gói, thành phần Các góc nhìn và biểu đồ 3.2 Phân tích hướng đối tượng 1. TỔNG QUAN VỀ PHÂN TÍCH HƯỚNG ĐỐI TƯỢNG 2. MÔ HÌNH USE CASE VÀ KỊCH BẢN (đã học) 3. MÔ HÌNH LỚP (đã học) 4. MÔ HÌNH HOẠT ĐỘNG DỰA TRÊN BIẺU ĐỒ TRẠNG THÁI Phân tích hướng đối tượng là gì? 􀂆 Là phương pháp xđ các yêu cầu của PM thông qua các đối tượng, hành vi, sự tương tác của chúng trong TG thực 􀂆 Xđ các đơn nguyên của hệ thống PM, ptích bài toán thành các thành phần nhỏ hơn và xây dựng mô hình logic cho hệ thống Các bước trong việc phân tích HĐT 􀂆 Tìm hiểu kĩ bài toán 􀂆 XĐ rõ các đặc tả yêu cầu của NSD, PM 􀂆 XĐ các đối tượng và các thuộc tính (sơ đồ dòng DL,phân tích văn bản: xđ ĐT; thuộc tính) 􀂆 XĐ các hàm mà các đối tượng sẽ thực hiện(Hành vi của ĐT) 􀂆 XĐ mối quan hệ tương tác giữa c ác đối tượng: 1- 1, 1- n, n- n Thiết kế HĐT là gì? 􀂆 Là việc xây dựng các đặc tả cho các đối tượng, các lớp, và xác định cấu trúc phân cấp các lớp mà từ đó đối tượng có thể được tạo ra. 􀂆 Nhiệm vụ: 􀂆 Tìm sự tương ứng giữa các đối tượng của bài toán với các đối tượng lời giải 􀂆 Xây dựng mô hình kiến trúc tổng thể, cấu trúc phân cấp các lớp mô hình toán học của hệ thống. Tổng quan về Thiết kế hướng đối tượng Vai trò của pha thiết kế: 􀂆 Trả lời câu hỏi “how” thay cho câu hỏi “what” như trong pha phân tích. Mục tiêu của pha thiết kế là phải xác định hệ thống sẽ được xây dựng như thế nào dựa trên kết quả của pha phân tích. 􀂆 Đưa ra các phần tử hỗ trợ giúp cấu thành nên một hệ thống hoạt động thực sự. 􀂆 Định nghĩa một chiến lược cài đặt cho hệ thống. Các bước trong thiết kế hướng đối tượng: 􀂆 Xây dựng các biểu đồ tương tác 􀂆 Xây dựng biểu đồ lớp chi tiết: thực hiện hoàn chỉnh sơ đồ lớp, xác định và biểu diễn đầy đủ các phương thức cho từng lớp, xác định mối quan hệ giữa các lớp. 􀂆 Thiết kế chi tiết: xây dựng các biểu đồ hoạt động cho các phương thức phức tạp trong các lớp. 􀂆 Xây dựng biểu đồ thành phần và biểu đồ triển khai hệ thống CÁC BIỂU ĐỒ TƯƠNG TÁC Xây dựng biểu đồ tuần tự - Thông thường, các biểu đồ tuần tự được gắn với các use case. Các message trong biểu đồ tuần tự sẽ biểu diễn lại thứ tự các sự kiện trong scenario của use case đó. Xây dựng biểu đồ tuần tự • Biểu diễn các message lặp - Biểu diễn các message được gửi theo vòng lặp (nhiều lần liên tiếp) giữa hai đối tượng. - Khi đó, ta bổ sung thêm cấu trúc: * [i=1 n] vào trước message; - với i là biến điều khiển lặp, n là số lần lặp. Hình : Biểu diễn message lặp • Biểu diễn phân nhánh các đối tượng Trong trường hợp ứng với các giá trị khác nhau của thamsố, đối tượng hoạt động khác nhau thì chúng ta dùng cách biểu diễn phân nhánh đối tượng. BIỂU ĐỒ THÀNH PHẦN VÀ BIỂU ĐỒ TRIỂN KHAI Xây dựng biểu đồ thành phần Mô hình thành phần được sử dụng để biểu diễn các thành phần phần mềm cấu thành nên hệ thống. Xây dựng biểu đồ triển khai Biểu đồ triển khai biểu diễn các nodes và các mối quan hệ giữa chúng. Thông thường, các nodes được kết nối với nhau thông qua các liên kết truyền thông (communication association) như các kết nối mạng, liên kết TCP-IP, microwave… . Những vấn đề cơ bản về hệ thống thông tin (HTTT) � 1.1.1. Khái niệm chung về hệ thống và các thành phần � Hệ thống: � Hệ thống thông tin (information system): � Các. (outputs) 1.1.2. Các hệ thống thông tin và phương thức xử lý thông tin trong MTĐT. � Xét trên góc độ một doanh nghiệp thì hệ thống thông tin gồm có: � Hệ thống hỗ trợ tác nghiệp � Hệ thống thống thông tin quản. thông tin quản lý � Hệ thống thông tin hỗ trợ quyết định � Nhiều hệ thống thông tin khác: � Hệ thống xử lý giao dịch (Transaction processing system – TPS) � Hệ thống thông tin quản lý (Management

Ngày đăng: 28/07/2014, 05:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan