Tìm hiểu công cụ phân tích thiết kế hệ thống hướng đối tượng bằng UML và ứng dụng vào hệ thống save home

143 1.1K 0
Tìm hiểu công cụ phân tích thiết kế hệ thống hướng đối tượng bằng UML và ứng dụng vào hệ thống save home

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml Lời nói đầu Nếu nh trớc đây khi Công Nghệ Thông Tin cha phổ biến, thì yêu cầu của một ng- ời làm tin học hầu nh chỉ cần biết, nắm vững làm chủ ngôn ngữ lập trình là đủ thì ngày nay những yêu cầu đó lại cao hơn, để tạo ra đợc những phần mềm đáp ứng đợc những yêu cầu của ngời sử dụng thì ngời làm trong nghành Công Nghệ Thông Tin không những biết đợc những cái đó mà ngoài ra còn phải có khả năng hiểu, phân tích nắm bắt đợc những yêu cầu công việc cụ thể của hệ thống, của ngời sử dụng để từ đó xây dựng, thiết kế nên những phần mềm hiệu quả nhất. Để làm đợc nh vậy anh ta cần phải có tri thức về hệ thống, về phân tích thiết kế hệ thống. Hiện nay có hai xu hớng phân tích thiết kế hệ thống chính đó là: phân tích thiết kế hệ thống theo hớngchức năng phân tích thiết kế hệ thống theo hớng đối tợng, mỗi hớng phân tích đều có những yêu điểm nhợc điểm riêng, tuỳ theo từng hệ thống cụ thể mà ngời ta dùng hớng phân tích này hay hớng phân tích khác. Phân tích thiết kế hệ thống theo hớng chức năng thì dễ phân tích thiết kế nhng lại không mô tả đợc những hệ thống thời gian thực, còn phân tích thiết kế hệ thống theo hớng đối tợng tuy hơi khó thực hiện song nó lại mô tả đợc các hệ thống thời gian thực, vì vậy ngày nay ngời ta hay dùng hớng phân tích thiết kế hệ thống theo hớng này. Đề tài tốt nghiệp Phân tích thiết kế hệ thống theo hớng đối tợng bằng công cụ UML này bàn về một số vấn đề cơ bản của phân tích thiết kế hệ thống theo hớng đối tợng, về công cụ dùng để phân tích thiết kếUML , cuối cùng là dùng UML để phân tích thiết kế một hệ thống thời gian thực. Cuối cùng em xin chân thành cảm ơn các thầy cô trong khoa Công Nghệ Thông Tin đặc biệt là thầy giáo Lê Văn Minh đã chỉ bảo, dìu dắt rất nhiệt tình cho em để em hoàn thành đợc đề tài này. Trong quá trình thực hiện bản thân đã có rất nhiều cố gắng song do nhiều yếu tố nên đề tài còn có nhiều mặt hạn chế, vì thế em rất mong có sự chỉ bảo của các thầy các cô những góp ý của các bạn để đề tài ngày một hoàn thiện hơn. Sinh viên: Nguyễn Thị Thu Hơng Lớp: 40B - CNTT mục lục Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 1 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml Phần I : Các vấn đề chung I. Yêu cầu, lý do chọn đề tài phạm vi của đề tài 5 1.1. Yêu cầu của đề tài . 5 1.2. Lý do chọn đề tài 5 1.3. Phạm vi của đề tài 5 II. Đánh giá giữa phân tích thiết kế theo hớng chức năng hớng đối tợng 5 2.1. Ưu nhợc điểm của phân tích thiết kế hệ thống theo hớng chức năng 6 2.2. Ưu nhợc điểm của phân tích thiết kế hệ thống theo hớng đối tợng . 6 2.3. Nhận xét 7 phần II: công cụ UML chơng I: Khái niệm về UML 1.1. Mở đầu .8 1.2. Mô hình ngôn ngữ hợp nhất (UML) 9 1.3. Mô hình hoá các phơng pháp các ngôn ngữ 13 1.4. Phát triển phần mềm hớng đối tợng .14 1.5. Sử dụng UML 15 1.6. Các giai đoạn phát triển hệ thống .16 Chơng II: Các thành phần cơ bản của UML 2.1. Các view 18 2.2. Các sơ đồ .22 2.3. Các cơ chế chung 29 2.4. UML mở rộng 31 Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 2 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml 2.5. Mô hình hoá với UML 33 2.6. Các công cụ .35 Chơng III: Mô hình hoá use-case 3.1. Các khái niệm 45 3.2. Sơ đồ use-case. .47 3.3. Hệ thống .47 3.4. Những tác nhân gây ra hành động 48 3.5. Các trờng hợp sử dụng.49 3.6. Các mô tả các trờng hợp sử dụng.54 3.7. Kiểm tra các trờng hợp sử dụng .57 chơng IV: Các lớp, đối tợng mối quan hệ của chúng 4.1. Các lớp đối tợng .62 4.2. Các mối quan hệ .70 chơng V: Mô hình động 5.1. Mở đầu 93 5.2 Sự tơng tác giữa các đối tợng .94 5.3 Sơ đồ trạng thái 95 5.4 Gửi các message giữa các sơ đồ trạng thái 100 5.5 Sơ đồ tuần tự .102 5.6 Sơ đồ cộng tác .105 5.7. Sơ đồ hoạt động .110 5.8. Các khái niệm hệ thống thời gian thực 114 5.8.1. Hớng đối tợng các hệ thống thời gian thực 116 5.8.2. Các khái niệm thời gian thực 118 5.8.3. Các lớp hoạt động các đối tợng 118 Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 3 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml phần III: pttk hệ thống thời gian thực dùng UML I. Mô hình thời gian thực trong UML.130 II. PTTK hệ thống chuông báo động nhà dùng công cụ UML .130 1. Sơ đồ trạng thái 132 2. Sơ đồ tuần tự 135 4. Sơ đồ cộng tác 138 5. Sơ đồ thành phần triển khai 140 Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 4 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml Phần I : các vấn đề chung I. yêu cầu, lý do chọn phạm vi của đề tài 1.1.Yêu cầu của đề tài: 1.1.1. Tìm hiểu về công cụ trợ giúp trong việc phân tích thiết kế hệ thống theo hớng đối tợng là công cụ UML (Unified Modeling Language) 1.1.2. áp dụng UML để phân tích thiết kế hệ thống báo động nhà 1.2.Lý do chọn đề tài: Hiện tại để có nhiều công cụ hỗ trợ cho kỹ s phần mềm trong việc xây dựng các ứng dụng. Các công cụ đó gọi là CASE (Computer of Aided Software Engineering) có hiệu quả sử dụng cao nhng các lập trình viên vẫn đang đi theo hớng thiết kế cổ điển. Mục đích của đề tài này một mặt giới thiệu với các lập trình viên một công cụ hỗ trợ tốt trong việc phân tích thiết kế hệ thống theo hớng đối tợng, một hớng phân tích thiết kế hệ thống hiện đại. Một mặt ứng dụng công cụ đó để phân tích thiết hệ thống báo động nhà (Save Home). Đó là công cụ UML. 1.3. Phạm vi của đề tài : Do thời gian hạn hẹp nên đề tài này chỉ giới thiệu các thành phần cơ bản cần thiết của công cụ UML, nhng nó cũng đủ để phân tích thiết kế một hệ thống. ở đây nêu rõ các thành phần của công cụ nh là các sơ đồ dùng để mô tả bài toán chi tiết của các sơ đồ. Các sơ đồ đó mô tả bài toán dới dạng các lớp các thuộc tính của đối tợng. Cuối cùng đề tài sẽ phân tích thiết kế hệ thống báo động nhà. Nhng do không đủ thời gian điều kiện nên hệ thống cha đợc cài đặt trên phần cứng phần mềm cụ thể. Việc cài đặt sẽ đợc thực hiện khi đề tài này phát triển thêm. II. đánh giá giữa phân tích thiết kế theo hớng chức năng hớng đối tợng Quá trình phân tích thiết kế hệ thống bao gồm hai quá trình: quá trình phân tích quá trình thiết kế. Quá trình phân tích là quá trình trả lời cho câu hỏi What to do?, Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 5 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml hệ thống sẽ làm gì, quá trình này đợc làm ở mức logic của hệ thống. Quá trình thiết kế trả lời là quá trình trả lời cho câu hỏi How to do?, ngoài việc quan tâm đến hệ thống sẽ làm gì thì quá trình này còn quan tâm đến hệ thống sẽ làm nh thế nào, quá trình thiết kế đợc làm ở mức vậy lý của hệ thống. Hiện nay có hai xu hớng phân tích thiết kế hệ thống đó là: phân tích thiết kế hệ thống theo hớng chức năng theo hớng đối tợng, sau đây sẽ là một số u, nhợc điểm của cả hai hớng phân tích thiết kế này. 2.1. Ưu nhợc điểm của phân tích thiết kế hệ thống theo hớng chức năng. Phân tích thiết kế theo hớng chức năng là tiếp cận hệ thống theo các chức năng. Các công cụ dùng để mô tả hệ thống nh là biểu đồ phân cấp chức năng, các biểu đồ luồng dữ liệu, sơ đồ liên kết thực thể các thuộc tính. Ngôn ngữ cài đặt hệ thống là các hệ quản trị cơ sở d liệu nh Foxpro, Fortran, v v *. Ưu điểm : - trực quan, dễ thu thập dữ liệu, dễ kiểm tra đánh giá - dễ phân tích thiết kế - thích hợp với các ứng dụng xử lý theo lô *. Nh ợc điểm : - không xử lý đợc các ứng dụng trực tuyến thời gian thực - không có tính sử dụng lại - khó mở rộng 2.2. Ưu nhợc điểm của phân tích thiết kế hệ thống theo hớng đối tợng. Phân tích thiết kế hệ thống theo hớng đối tợng là tiếp cận hệ thống theo các đối tợng gồm các thuộc tính các phơng thức thao tác trên các thuộc tính đó của đối tợng. Công cụ để mô tả bài toán là các lớp đợc phân cấp kế thừa. Ngôn ngữ cài đặt là các ngôn ngữ lập trình hớng đối tợng nh C ++ , Java, Visual C ++ , v.v *. Ưu điểm : - Có khả năng mở rộng hệ thống dễ dàng - Có tính sử dụng lại - Mô tả đợc các ứng dụng trực tuyến thời gian thực Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 6 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml *. Nh ợc điểm : - Khó mô tả bài toán - Khó phân tích thiết kế - Có tính trừu tợng cao 2.3 Nhận xét : Ta thấy mỗi hớng phân tích thiết kế có những u nhợc điểm riêng, phân tích thiết kế theo hớng chức năng có nhiều u điểm nhng lại có nhợc điểm lớn nhất đó là không mô tả đợc các ứng dụng trực tuyến gian thực, hơn nữa hiện tại môi trờng ngời dùng là môi trờng mạng nên các ứng dụng hầu hết là các ứng dụng trực tuyến thời gian thực, mà chỉ có phân tích thiết kế theo hớng đối tợng mới làm đợc. Tuy còn nhiều khó khăn trong việc mô tả hệ thống, phân tích thiết kế song nó lại có rất nhiều công cụ trợ giúp, nên hớng phân tích này đang dần thay thế hớng phân tích thiết kế theo hớng chức năng. Sau đây sẽ giới thiệu một công cụ dùng để phân tích thiết kế hệ thống theo hớng đối tợng. Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 7 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml Phần II : Công cụ UML (Unified Modeling Language: mô hình ngôn ngữ hợp nhất) Chơng I : khái niệm về UML 1.1. Mở đầu: Các mô hình rất quan trọng cho các quy tắc kỹ thuật trong một thời gian dài, khi một cái gì đó đợc xây dựng, đợc vẽ tức là ta đã mô tả dáng điệu của nó, cái đó có thể phát triển ở một ngôi nhà, một cái máy hoặc là một ban mới trong công ty, công việc vẽ đợc thực hiện bởi nhiều ngời, họ đa vào rất nhiều chi tiết cần thiết để vẽ nên cấu trúc công việc hiện tại. Chi phí, thời gian ớc tính, sự phân bố công việc nguồn gốc cung cấp là cơ sở cho những thông tin chứa trong quá trình vẽ. Cái mà ta cần vẽ có sơ đồ mô hình, một mô hình là một tập các quy tắc, mà các quy tắc đó có thể tồn tại trong một giai đoạn phát triển hoặc trong giai đoạn lập kế hoạch. Trong suốt quá trình hoạt động của một mô hình ngời thiết kế phải giám sát những kết quả đã hoàn thành xem có đúng với yêu cầu của mình không. Những yêu cầu đó thờng gồm: một chức năng tiện ích, một cách tiếp cận, hiệu suất, khả năng phục vụ độ tin cậy. Ngời thiết kế phải tạo đợc một mô hình mà tất cả các quy tắc có những khía cạnh kết quả khác nhau, mô hình đã đa đến một số quan điểm cho rằng quy tắc lý tởng là kết quả hoặc sự cấu hình hệ thống, một mô hình có thể qua nhiều giai đoạn, ở mỗi giai đoạn mô hình lại đợc chi tiết thêm. Quá trình tạo ra các mô hình là tạo ra các hoạt động ở mức cao, những ngời thiết kế mô hình làm việc lặp đi lặp lại nhiều lần để đảm bảo đó là những mô hình đã đạt đến đích, hoặc là những yêu cầu của dự án đợc cấu trúc hoá. Nhng một mô hình không phải là cái cuối cùng, nó có thể thay đổi có thể còn đợc cập nhật vào trong dự án của chúng. Những phơng án tốt thờng đã đạt đợc ở một trình độ cao bằng những ý kiến những cách giải quyết hay để tạo ra đợc những mô hình tốt chúng đã đợc kiểm tra. Khi ngời thiết kế có nhiều khả năng khác nhau, họ đa ra sự hiểu biết sâu sắc về hệ thống họ có thể tạo ra những mô hình của các hệ thống đáp ứng đợc yêu cầu của ngời sử dụng. Các mô hình luôn đợc diễn tả bằng một ngôn ngữ trực quan với ý nghĩa rõ ràng. Khi mô hình sử dụng những mô tả trực quan là cần thiết cho các liên kết đầy đủ ở các Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 8 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml mối quan hệ, nó cũng làm cho công việc mô hình hoá dễ dàng, mà không điều gì có thể phù hợp hoàn toàn cho việc mô tả trực quan, tuy nhiên những thông tin trong các mô hình đợc biểu diễn tốt ở các văn bản thông thờng. Các mô hình có thể sử dụng đợc là : Đúng đắn (Accurate): hệ thống với các quy luật đúng đắn đợc xây dựng Chắc chắn (Consistent): các quan điểm khác nhau không biểu hiện những vấn đề mâu thuẫn lẫn nhau Dễ dàng liên lạc với những mô hình khác. Dễ dàng thay đổi. Có thể hiểu đợc: là những vấn đề đơn giản nhng không sơ sài Xu hớng của nhiều tổ chức công nghệ phần mềm là tạo ra những mô hình của những hệ thống mà chúng ta muốn đợc xây dựng. Lập trình trực quan là một kỹ thuật đợc làm bởi các chơng trình có cấu trúc, việc thu thập dữ liệu một cách trực quan các kiểu kết nối, các mô hình các chơng trình đợc tích hợp ở mức cao. Các hệ thống đã trở nên lớn mạnh phân tán trên rất nhiều máy tính ở kiến trúc client/server, sự cần thiết của các hệ thống tích hợp đầy đủ trong môi trờng phân tán, có những yêu cầu là hệ thống phải có những mô hình công việc kỹ thuật chung. Yêu cầu của những hệ thống máy tính đó là có những trợ giúp xử lý để thực hiện các công việc của những mô hình. Các mô hình của hệ thống phải đợc xây dựng trớc khi thực hiện, chúng sẽ trở thành bình thờng đã đợc chấp nhận trong công nghệ phần mềm nh trong các quy luật kỹ thuật khác. 1.2. Mô hình ngôn ngữ hợp nhất UML ( Unified Modeling Language ): Mô hình ngôn ngữ hợp nhất cố gắng giải quyết các vấn đề đã đợc mô tả chính xác, UML có nhiều tiềm năng để xây dựng các mô hình nhờ vào phơng pháp hớng đối tợng. 1.2.1. Các phơng pháp hớng đối tợng điển hình Hớng đối tợng xuất phát từ nguồn gốc ngôn ngữ lập trình tuần tự, nó trở thành phổ biến sau những năm 80, với những bớc tiến của ngôn ngữ lập trình nh là C ++ Smaltalk, để lập trình hớng đối tợng thành công thì cần có những phơng pháp trợ giúp sự phát triển phần mềm. Có vài phơng pháp hớng đối tợng đang trở thành phổ biến trong những năm 90 là: Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 9 Luận văn tốt nghiệp: Tìm hiểu công cụ phân tích thiết kế hệ thống hớng đối tợng uml Booch: phơng pháp của Grady Booch có thể phát triển hớng đối tợng ở nhiều cách khác nhau. Booch đã định nghĩa chú thích đó là một hệ thống đã đợc phân tích trên một số khung nhìn, ở mỗi khung nhìn đợc mô tả bởi một số mô hình sơ đồ. Phơng pháp của Booch có nhiều ký hiệu rất rộng nhng chỉ vài ngời sử dụng tìm thấy những ký hiệu đó, rất nhiều trong chúng đợc vẽ bằng tay. Một phơng pháp cũng chứa đựng một tiến trình trên những hệ thống đã đợc phân tích từ cả hai quan điểm phát triển là vĩ mô (macro) vi mô (micro) đã là cơ sở của sự phát triển xử lý lặp ở mức cao. OMT (the Object Modeling Technique): công nghệ mô hình hoá đối tợng là một phơng pháp đợc phát triển khi ngời ta phát minh ra điện học, lúc đó James Rumbaugh đang làm việc, một tiến trình kiểm tra của nó thờng đợc xử lý một cách trực tuyến, nó là cơ sở để thể hiện các yêu cầu, hệ thống đợc mô tả bởi một số phơng pháp l: phơng pháp đối tợng, phơng pháp động lực học, phơng pháp chức năng phơng pháp sử dụng mô hình use-case. Với nhiều phơng pháp mới ta sẽ mô tả đợc hệ thống một cách đợc đầy đủ. Phơng pháp OMT có nhiều mô tả đặc biệt trong việc định nghĩa hệ thống, đồng thời tạo tài khoản tơng tranh ánh xạ liên kết tới các cơ sở dữ liệu. OOSE / Objectory: công nghệ phần mềm hớng đối tợng các phơng pháp h- ớng đối tợng, cả hai đợc Ivan Jacobson xây dựng trên cơ sở khuôn dạng ViewPoint, phơng pháp OOSE (I.Jacobson 1994) là một phiên bản của Jacobson về phơng pháp hớng đối tợng, phơng pháp hớng đối tợng đã đợc sử dụng để xây dựng một số hệ thống nh là hệ thống thiết bị viễn thông các hệ thống tài chính cho công ty môi trờng, cả hai phơng pháp là cơ sở cho các use-case, với việc định nghĩa về yêu cầu ban đầu của hệ thống sẽ đợc mở rộng bởi các tác nhân (actors). Các use-case thực hiện trong nhiều giai đoạn của quá trình phát triển, các giai đoạn kiểm tra hệ thống, khi đó họ đã sử dụng để chỉnh sửa hệ thống, đối tợng cũng đợc đa vào các công việc kỹ thuật, khi những ý kiến đợc sử dụng trong mô hình để thúc đẩy việc xử lý. Fusion (sự hợp nhất): Các phơng pháp hợp nhất đợc Hewleft - Packard (D.coleman 1994) đa ra, nó đợc gọi là phơng pháp thế hệ thứ hai, bởi vì nó là cơ sở mà các phơng pháp ban đầu đã đi qua. Phơng pháp hợp nhất đã đợc nâng cấp từ Giáo viên hớng dẫn ThS: Lê Văn Minh Thực hiện: Nguyễn Thị Thu Hơng 10

Ngày đăng: 18/12/2013, 22:02

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan