Chương 1 : Phương pháp hướng đối tượng Chương 2: Grasp – Cỏc mẫu dựng cho gỏn trỏch nhiệm Chương 3: Xây dựng hệ thống quản lý hồ sơ và kết quả học tập bằng phương pháp tiếp cận hướng đối tượng. Chương 4: Phân tích và cài đặt chương trình quản lý hồ sơ và kết quả học tập Nội dung của đề tài giới thiệu phương pháp hướng đối tượng, các công cụ hỗ trợ phát triển hướng đối tượng. Đặc biệt, đề tài đã vận dụng các công cụ thiết kế hướng đối tượng sử dụng UML – một ngôn ngữ mô hình hoá thống nhất đang được sử dụng rộng rãi trên thế giới để ứng dụng vào việc phân tích thiết kế hệ thống quản lý hồ sơ và kết quả học tập tại trường Đại học Công đoàn. Hà nội, ngày tháng năm 2006 Dương Chí Thiện 2 TIEU LUAN MOI download : skknchat@gmail.com CHƢƠNG 1 PHƢƠNG PHÁP HƢỚNG ĐỐI TƢỢNG 1.
QUY TRÌNH CHUNG ĐỂ PHÁT TRIỂN PHẦN MỀM HƢỚNG ĐỐI TƢỢNG Nội dung cơ bản của tiến trình phát triển phần mềm hướng đối tượng là tiến trình thực hiện một bước lặp bao gồm: xác định yêu cầu của hệ thống, phân tích, thiết kế, triển khai và kiểm thử. Trong đó, hoạt động phân tích và thiết kế có nhiều vấn đề nan giải hơn cả. Đặc điểm của phân tích và thiết kế hướng đối tượng coi hệ thống như một tập các đối tượng tương tác với nhau để tạo ra các hành động, từ đó cho ra kết quả cao. Để đạt được điều đó ta phải sử dụng hệ thống mô hình các đối tượng với những đặc trưng sau: Tính trừu tượng hóa cao.
Tính bao gói thông tin. Tính kế thừa. Lập mô hình nghiệp vụ Mô hình nghiệp vụ là một mô tả chức năng nghiệp vụ của một tổ chức và những mối quan hệ bên trong các chức năng đó cũng như các quan hệ của chúng với môi trường bên ngoài. Vì thế, để có thể nắm bắt được yêu cầu của hệ thống trước hết phải nắm và hiểu được hệ thống nghiệp vụ.
Việc mô tả các yêu cầu của hệ thống nghiệp vụ đầy đủ là cần thiết để đạt được sự nhất trí giữa khách hàng và người phát triển hệ thống cần làm và không nên làm những điều kiện ràng buộc đặt ra cho chúng. Mục tiêu của bước này là để hiểu đúng và đầy đủ về hệ thống mà ta cần phải tin học hóa thuần túy về mặt nghiệp vụ. Bên cạnh đó cần tìm các ca sử dụng nghiệp vụ từ các chức năng của hệ thống mà qua đó con người và các hệ thống khác sử dụng chúng [1]. 3 TIEU LUAN MOI download : skknchat@gmail.
Xác định yêu cầu hệ thống Nhiệm vụ chính trong xác định yêu cầu phát triển mô hình hệ thống cần xây dựng bằng cách dùng các ca sử dụng. Bởi vì các yêu cầu về chức năng được cấu trúc thành các ca sử dụng và do phần lớn các yêu cầu phi chức năng đều là riêng đối với một ca sử dụng đơn nên chúng cũng được xử lý trong các ca sử dụng đó. Để mô tả các yêu cầu nghiệp vụ dưới góc độ phát triển phần mềm ta cần tìm các tác nhân và các ca sử dụng để chuẩn bị một phiên bản đầu tiên của mô hình ca sử dụng. Sau đó ta sẽ xác định các ca sử dụng có ý nghĩa về mặt kiến trúc và sắp xếp thứ tự ưu tiên các ca sử dụng sẽ được triển khai trong bước lặp hiện thời.
Phân tích Nhiệm vụ của pha phân tích là làm mịn các yêu cầu đã nhận được từ pha trước và tạo cấu trúc cho chúng. Thông qua đó, các yêu cầu được hiểu chính xác hơn, từ đó đưa ra cấu trúc cho toàn bộ hệ thống. Nhiệm vụ của pha phân tích là tìm ra cách thức để thực hiện yêu cầu của hệ thống đã được xác định trong các ca sử dụng. Cụ thể là, cần phân tích mô hình ca sử dụng bằng cách tìm ra cách tổ chức các thành phần bên trong của hệ thống để thực hiện mỗi ca sử dụng.
Những thành phần cấu trúc bên trong của hệ thống ở đây là ba loại lớp phân tích. Công việc xác định các lớp không phải làm tùy tiện mà thực hiện theo từng ca sử dụng, trước hết cho các ca sử dụng theo thứ tự ưu tiên được sắp. Sau đó, cấu trúc lại cách tổ chức lại các thành phần này của hệ thống. Để đạt được mục tiêu ấy cần tiến hành các hoạt động sau: Phân tích kiến trúc hệ thống.
Phân tích một ca sử dụng. Phân tích một lớp. 4 TIEU LUAN MOI download : skknchat@gmail.com Phân tích một gói. Trong quá trính phân tích ta sẽ liên tục tìm ra các gói, các lớp phân tích mới và các yêu cầu chung khi tiếp tục làm mịn mô hình bằng cách phân tích các gói và duy trì các gói đó.
Thiết kế Trong thiết kế, chúng ta định hình hệ thống và tìm hình thức thể hiện về mặt vật lý của nó để thực hiện mọi yêu cầu được đặt ra cho hệ thống. Một đầu vào cho thiết kế là mô hình phân tích. Khi thiết kế ta sẽ cố gắng bảo tồn được càng nhiều càng tốt cấu trúc của hệ thống được định hình từ mô hình phân tích. Kết quả của thiết kế là mô hình thiết kế và mô hình triển khai được thể hiện dưới dạng một loạt các mô hình cụ thể.
Mô hình thiết kế thực thi mô hình phân tích khi tính đến các điều kiện của môi trường để thực thi hệ thống. Để nhận được mô hình thiết kế ta cần thực hiện các công việc sau: Thiết kế kiến trúc. Thiết kế một ca sử dụng. Thiết kế một lớp.
Thiết kế một hệ thống con. Mô hình thiết kế là một mô hình đối tượng mô tả sự thực thi các ca sử dụng về mặt vật lý bằng cách tập trung vào việc xác định các yêu cầu chức năng và phi chức năng, cũng như các ràng buộc khác liên quan đến môi trường triển khai và ảnh hưởng của nó lên hệ thống.5 Các ƣu điểm của tiếp cận hƣớng đối tƣợng Những đối tượng được thiết kế tốt trong hệ thống hướng đối tượng là cơ sở để kết hợp các đơn thể được sử dụng lại thành hệ thống có chất lượng cao hơn. Cơ chế tương tác bằng cách truyền thông điệp giữa các đối tượng đảm 5 TIEU LUAN MOI download : skknchat@gmail.com bảo cho việc mô tả các giao diện giữa các modul bên trong hệ thống và bên ngoài hệ thống trở nên dễ dàng hơn. Việc phân tích và thiết kế theo cách phân bài toán thành các đối tượng là hướng tới lời giải của thế giới thực là tự nhiên hơn so với cách phân rã theo chức năng từ trên xuống.
Nguyên lý che dấu thông tin hỗ trợ cho việc xây dựng các hệ thống thông tin an toàn. Tiếp cận hướng đối tượng cung cấp cho ta công cụ để làm giảm bớt độ phức tạp của bài toán bằng việc phân rã thành các thực thể độc lập tương đối với nhau. Hệ thống hướng đối tượng dễ dàng mở rộng thành các hệ thống có quy mô lớn hơn nhờ tương tác giữa các đối tượng thông qua việc gửi thông báo. Việc phát triển và bảo trì hệ thống đơn giản hơn.
Xóa bỏ ngăn cách giữa các bước phát triển, thiết kế và cài đặt trong quá trình phát triển phần mềm.2 CÔNG CỤ HỖ TRỢ PHÁT TRIỂN HƢỚNG ĐỐI TƢỢNG UML UML (Unified Modeling Language) là ngôn ngữ mô hình hóa, trước hết nó là mô tả ký pháp thống nhất, ngữ nghĩa và định nghĩa về mô hình hóa, nó không mô tả về phương pháp phát triển. UML được sử dụng để hiển thị đặc tả xây dựng, làm tài liệu các vật phẩm của phân tích hình thức và thiết kế trong quá trình xây dựng hệ thống phần mềm theo hướng đối tượng. UML được sử dụng cho mọi tiến trình phát triển phần mềm, xuyên suốt vòng đời phát triển và độc lập với các công nghệ cài đặt hệ thống. 6 TIEU LUAN MOI download : skknchat@gmail.
Khái quát về UML 1. UML là một ngôn ngữ chuyên dụng UML được đưa vào sử dụng từ năm 1997 và nhanh chóng được công nghiệp phần mềm chấp nhận là ngôn ngữ đồ họa chuẩn để đặc tả, xây dựng và làm tài liệu cho các hệ thống phần mềm chuyên sâu. UML là ngôn ngữ mô hình hóa, ngôn ngữ chuẩn thống nhất để viết ra bản kế hoạch chi tiết phần mềm. Nó mô tả ký pháp thông nhất, ngữ nghĩa và các định nghĩa chính mô hình hóa.
Các khung nhìn ngôn ngữ cho phép nhìn nhận hệ thống phát triển ở các mức độ khác nhau, dễ sử dụng, dễ hiểu. UML có các ký pháp và tập các qui tắc sử dụng để mô hình hóa các hệ thống. UML là một ngôn ngữ UML có từ vựng là các quy tắc tổ hợp các từ vựng nhằm mục đích giao tiếp. Ngôn ngữ mô hình là ngôn ngữ có từ vựng và quy tắc tập trung thể hiện về mặt vật lý và khái niệm của hệ thống.
Vì vậy UML là ngôn ngữ chuẩn công nghiệp để lập kế hoạch chi tiết phần mềm. UML là ngôn ngữ để biểu diễn đồ họa Với nhiều lập trình viên, không có khoảng cách giữa ý tưởng cài đặt mã trình và chuyển nó thành mã, họ suy nghĩ mã trình và viết ngay mã trình cho nó. Tuy nhiên, việc giao tiếp giữa mô hình khái niệm với những cái khác trong vòng đời phát triển phần mềm sẽ gặp khó khăn khi mọi người không sử dụng chung một ngôn ngữ cho dự án. Đặc biệt có những dự án và tổ chức phát triển phần mềm đưa ra ngôn ngữ riêng của họ thì người mới tham gia dự án sẽ gặp nhiều khó khăn.
Hơn nữa một vấn đề của hệ thống phần mềm sẽ được hiểu rõ hơn thông qua mô hình, nếu người viết mã không bao giờ viết thành các mô hình thì thông tin có thể mất hoặc viết lại một cách đầy đủ nếu chỉ xem mã lệnh trong khi người viết mã lệnh chuyển đi nơi khác. 7 TIEU LUAN MOI download : skknchat@gmail.com Để khắc phục những nhược điểm trên ta sử dụng ngôn ngữ UML để xây dựng các mô hình khác nhau: - Mỗi ký pháp trong UML mang một ngữ nghĩa rõ ràng. - Các cấu trúc mô tả dưới dạng mô hình đồ họa. - Mô hình rõ ràng sẽ làm cho việc trao đổi, giao tiếp dễ dàng hơn.
UML là ngôn ngữ đặc tả Đặc tả là mô tả rõ ràng những điểm mấu chốt của vấn đề. UML cho phép mô tả chính xác, rõ ràng và hoàn thiện. UML tập trung đặc tả thiết kế, phân tích và cài đặt quan trọng trong quá trình phát triển và triển khai hệ thống phần mềm.