Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 40 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
40
Dung lượng
1,09 MB
Nội dung
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THƠNG TIN TIỂU LUẬN MƠN HỌC PHÂN TÍCH THIẾT KẾ KIẾN TRÚC PHẦN MỀM VÀ ỨNG DỤNG Nội dung: Tìm hiểu ngơn ngữ UML ứng dụng phân tích thiết kế phần mềm quản lý phòng đọc điện tử Trường ĐH Hùng Vương Giáo viên hướng dẫn: PGS.TS Phạm Đăng Hải Nhóm học viên thực hiện: Nguyễn Trung Kiên Trần Thị Hải Yến Trần Nam Trường Lớp cao học CNTT: 10B CNTT-HV PHÚ THỌ 06-2011 MỤC LỤC TIỂU LUẬN MÔN HỌC PHÂN TÍCH THIẾT KẾ KIẾN TRÚC .1 PHẦN MỀM VÀ ỨNG DỤNG MỤC LỤC 2 Đặc tả chức phần mềm .13 MỞ ĐẦU Xu áp dụng phương pháp hướng đối tượng thay cho phương pháp hướng chức ngày áp dụng phổ biến vào hệ thống phần mềm Đối với hệ thống lớn, phương pháp tiếp cận hướng đối tượng sử dụng UML áp dụng trình suy diễn phát triển hệ thống để việc trao đổi người thu thập thông tin với khách hàng, người thiết kế với người lập trình sử dụng ngơn ngữ mơ hình hố Ngơn ngữ mơ hình hợp UML phù hợp cho việc mơ hình hố hệ thống cịn sử dụng cho tiến trình phát triển phần mềm, xun suốt vịng đời phát triển sản phẩm độc lập với công nghệ cài đặt hệ thống Một đặc điểm UML tính hệ thống hố từ phương pháp luận, mơ hình phát triển cơng cụ (thiết kế, kiểm tra, quản lý cấu hình) có mối liên kết chặt chẽ với Đây điểm khác biệt công cụ dùng thiết kế cho hướng chức Sau học xong mơn học “Phân tích thiết kế kiến trúc phần mềm ứng dụng” nhóm nghiên cứu chúng em lựa chọn tốn “Phân tích thiết kế phần mềm quản lý phòng đọc điện tử Trường ĐH Hùng Vương” làm nội dung tiểu luận hết môn Trong tiểu luận phân công cụ thể sau: - Nguyễn Trung Kiên: phụ trách phần phân tích thiết kế trình bày báo cáo - Trần Hải Yến: phụ trách phần tìm hiểu UML phần mềm Star UML - Trần Nam Trường: phụ trách vẽ biểu đồ Do thời gian kiến thức cịn hạn chế nên tiểu luận khơng tránh khỏi thiếu sót Một lần nhóm nghiên cứu xin chân thành cảm ơn thầy giáo TS Phạm Đăng Hải bạn lớp ủng hộ, giúp đỡ suốt trình thực Trân trọng cảm ơn! PHẦN 1: TỔNG QUAN VỀ UML Lịch sử đời UML Những năm đầu thập kỷ 90 có nhiều phương pháp phân tích, thiết kế hệ thống hướng đối tượng với hệ thống ký hiệu khác Trong có phương pháp phổ biến OMT (Object Modeling Technique) James Rumbaugh, Booch Grady Booch OOSE (Object – Oriented Software Engienering) Ivar Jacobson Mỗi phương pháp có điểm mạnh điểm yếu Như OMT mạnh khâu phân tích yếu khâu thiết kế, Booch mạnh khâu thiết kế yếu khâu phân tích, cịn OOSE mạnh phân tích ứng xử, đáp ứng hệ thống mà yếu khâu khác Mỗi phương pháp luận ngơn ngữ có hệ thống ký hiệu riêng, phương pháp xử lý riêng công cụ hỗ trợ riêng Điều thúc đẩy người tiên phong lĩnh vực mơ hình hóa hướng đối tượng ngồi lại với để tích hợp điểm mạnh phương pháp với đưa mơ hình thống chung James Rumbaugh, Grady Booch Ivar Jacobson xây dựng ngơn ngữ mơ hình hóa thống đặt tên UML (Unifiled Modeling Language) UML đưa vào năm 1997 sau chuẩn hóa thành phiên 1.0 Hiện có 2.0 UML ngôn ngữ để trực quan hóa Sử dụng UML việc lập mơ hình, ký hiệu mang ý nghĩa rõ ràng nên nhà phát triển phần mềm đọc mơ hình xây dựng UML người khác viết Việc nắm bắt cấu trúc chương trình thơng qua đọc mã lệnh khó khăn thể trực quan Sử dụng UML làm cho mơ hình rõ ràng, sáng sủa làm tăng khả giao tiếp, trao đổi nhà phát triển UML ngơn ngữ dùng để chi tiết hóa Chi tiết hóa có nghĩa xây dựng mơ hình cách tỉ mỉ, rõ ràng, đầy đủ mức độ chi tiết khác UML thực việc chi tiết hóa tất định quan trọng phân tích, thiết kế thực thi hệ thống phần mềm UML ngôn ngữ dùng để sinh mã dạng nguyên mẫu Các mô hình xây dựng UML ánh xạ tới ngơn ngữ lập trình cụ thể Java, C++ hay bảng CSDL quan hệ hay CSDL hướng đối tượng Một mơ hình tốt trở nên vơ nghĩa khơng phản ánh hệ thống nên địi hỏi phải có chế đồng hóa mơ hình mã lệnh UML cho phép xây dựng mơ hình từ mã lệnh thực thi (ánh xạ ngược) Điều tạo qn mơ hình hệ thống đoạn mã thực thi mà ta xây dựng cho hệ thống UML ngơn ngữ dùng để lập cung cấp tài liệu Dưới loại tài liệu mà UML cung cấp: • Các yêu cầu khách hàng • Kiến trúc hệ thống • Thiết kế • Mã nguồn • Kế hoạch dự án …… Các thành phần UML 6.1 Các phần tử mang tính cấu trúc Các phần tử mang tính cấu trúc gồm: • Lớp (Class) Là tập hợp đối tượng có tập thuộc tính, hành vi mối quan hệ với đối tượng khác • Sự cộng tác (Collaboration) Là giải pháp thi hành bên hệ thống, bao gồm lớp/đối tương, mối quan hệ tương tác chúng để đạt chức mong đợi Use Case • Giao diện (Interface) Là tập hợp phương thức tạo nên dịch vụ lớp thành phần Các phương thức dừng mức khai báo khơng phải mức thực thi • Ca sử dụng (Use Case) Là khối chức thực hệ thống để mang lại kết có giá trị tác nhân • Thành phần (Component) Là biểu diễn vật lý mã nguồn file mã nguồn, file nhị phân tạo triển phát triển hệ thống • Lớp hoạt động (Active Class) Là lớp mà đối tượng thực hoạt động điều khiển • Nodes Là thể thành phần vật lý máy tính hay thiết bị phần cứng 6.2 Các phần tử thể hành vi Các phần tử thể hành vi bao gồm: • Sự tương tác (Interaction) Gồm tập thông báo trao đổi đối tượng ngữ cảnh cụ thể để thực chức • Máy chuyển trạng thái ( States Machine) Thể trạng thái đối tượng có kiện hay tác động từ bên ngồi vào 6.3 Các phần tử mang tính nhóm Các phần tử mang tính nhóm bao gồm: • Gói (Package) Để nhóm phần tử có ý nghĩa chung vào thành nhóm Nhóm mang tính trừu tượng dùng để nhìn hệ thống mức tổng qt • Ghi (Annotational) Là thích dùng để mô tả, sáng tỏ ghi phần tử có mơ hình 6.4 Các mối quan hệ Các mối quan hệ UML là: • Quan hệ phụ thuộc (Dependency) Nếu có thay đổi đối tượng độc lập đối tượng phụ thuộc bị ảnh hưởng • Quan hệ kết hợp (Association) Là mối quan hệ hai lớp nhận gửi thơng điệp cho • Quan hệ kết tập (Aggreagation) Là dạng đặc biệt quan hệ liên kết Là mối quan hệ toàn thể phận • Quan hệ gộp (Compostion) Là dạng quan hệ kết tập, đối tượng toàn thể bị hủy đối tượng phận bị hủy theo • Quan hệ tổng qt hóa (Generalization) Là mối quan hệ thổng quát hóa, đối tượng cụ thể kế thừa thuộc tính phương thức đối tượng tổng qt hóa • Quan hệ thức hóa (Realization) Là mối quan hệ giao diện lớp hay thành phần 6.5 Các loại biểu đồ UML cung cấp loại biểu đồ sau: • Biểu đồ lớp (Class Diagram) Bao gồm tập hợp lớp, giao diện, cộng tác mối quan hệ chúng Nó thể mặt tĩnh hệ thống • Biểu đối tượng (Object Diagram) Bao gồm tập hợp đối tượng mối quan hệ chúng • Biểu đồ ca sử dụng (Use Case Diagram) Bao gồm ca sử dụng, tác nhân mối quan hệ chúng • Biểu đồ trạng thái (State Diagram) Bao gồm trạng thái, bước chuyển trạng thái hoạt động • Biểu đồ (Sequence Diagram) Biểu diễn tương tác đối tượng theo thứ tự thời gian • Biểu đồ cộng tác (Collaboration Diagram) Gần giống biểu đồ tuần tự, thể việc trao đổi thông điệp qua lại đối tượng mà không quan tâm đến thứ tự thơng báo • Biểu đồ hoạt động (Activity Diagram) Chỉ luồng từ hoạt động sang hoạt động khác hệ thống • Biểu đồ thành phần (Component Diagram) Chỉ cách tổ chức phụ thuộc thành phần (component) • Biểu đồ triển khai (Deployment Diagram) Mô tả tài nguyên vật lý hệ thống, gồm nút (Nodes), thành phần kết nối • Biểu đồ gói (Package Diagram) Phản ánh tổ chức gói thành phần chúng • Biểu đồ liên lạc (Communication Diagram) Biểu đồ liên lạc thể thông tin giống biểu đồ nhấn mạnh vào mối quan hệ đối tượng Các chế chung UML ( General Mechnism) Các chế chung mà UML cung cấp gồm: • Trang trí (Adornment) Các ký hiệu UML giúp nhận biết đặc điểm quan trọng đối tượng, khái niệm mơ tả cách dễ dàng nhanh chóng • Ghi (Note) Ghi UML giúp thành phần biểu đồ khơng bị hiểu lầm • Đặc tả (Specification) Các phần tử mơ hình có thuộc tính chứa giá trị phần tử Một thuộc tính định nghĩa với tên giá trị đính kèm Thuộc tính sử dụng để thêm đặc tả bổ sung phần tử, thơng tin bình thường khơng thể đồ Kiến trúc hệ thống Khi xem xét hệ thống, cần xây dựng mơ hình từ khía cạnh khác nhau, xuất phát từ thực tế người làm việc với hệ thống với vai trò khác nhìn hệ thống từ khía cạnh khác UML xét hệ thống khía cạnh: • Hướng nhìn Use Case Đây hướng nhìn khía cạnh chức hệ thống, nhìn từ hướng tác nhân bên ngồi • Hướng nhìn Logic Chỉ chức bên hệ thống thiết kế • Hướng nhìn thành phần Chỉ khía cạnh tổ chức thành phần code • Hướng nhing song song Chỉ tồn song song/trùng hợp hệ thống, hướng đến việc giao tiếp đồng hệ thống • Hướng nhìn triển khai Chỉ khía cạnh triển khai hệ thống vào kiến trúc vật lý Mở rộng UML UML mở rộng sửa đổi để phù hợp với phương pháp đặc biệt, tổ chức cụ thể hay bạn đọc cụ thể • Khuôn mẫu (Stereotype) Cơ chế mở rộng khuôn mẫu định nghĩa loại phần tử mơ hình dựa phần tử mơ hình tồn Khn mẫu phần tử có sẵn, cộng thêm phần quy định ngữ nghĩa riêng biệt khơng có phần tử gốc • Giá trị đính kèm (Tagged Value) Các phần tử mơ hình có thuộc tính chứa cặp – tên giá trị thân chúng gọi giá trị đính kèm Mọi dạng thơng tin đính kèm vào phần tử • Rằng buộc (Constraint) Là giới hạn sử dụng ý nghĩa phần tử 10 Giới thiệu UML 2.0 Những cải tiến UML 2.0 nhanh chóng trở thành chuẩn chấp nhận việc nhận định, làm tài liệu, mường tượng hệ thống phần mềm UML sử dụng việc mơ hình hóa hệ thống khơng phải hệ thống phần mềm, dùng cách rộng rãi hầu hết lĩnh vực cơng nghiệp gồm tài chính, qn đội, thiết kế UML 2.0 định nghĩa 13 loại biểu đồ chia làm hai nhóm: nhóm biểu đồ cấu trúc (Structural Modeling Diagram) nhóm biểu đồ hành vi (Behavioral Modeling Diagram) Trong 11 loại giống UML 1.0 có biểu đồ 10.1 Biểu đồ tương tác (Interaction Overview Diagram) Biểu đồ tương tác dạng biểu đồ hoạt động với nút (Node) biểu diễn biểu đồ tương tác Biểu đồ tương tác bao gồm biểu đồ tuần tự, biểu đồ liên lạc, biểu đồ tương tác biểu đồ phối hợp thời gian Hầu hết ghi cho biểu đồ tương tác giống biểu đồ hoạt động Ví dụ nút khởi tạo, kết thúc, định, kết hợp, phân nhánh, nối giống Tuy nhiên, biểu đồ tương tác có hai thành phần kiện tương tác phần tử tương tác (interaction occurrences and interaction elements) Sự kiện tương tác (interaction occurrence): kiện tương tác tham chiếu tới biểu đồ tương tác hành Một kiện tương tác thể khung tham chiếu, nghĩa khung với tham chiếu tới góc trái Hình Biểu đồ hoạt động Phần tử tương tác (Interaction Element): phần tử tương tác tương tự kiện tương tác chỗ chúng hiển thị tham chiếu tới biểu đồ tương tác hành Chúng khác chỗ phần tử tương tác hiển thị nội dung biểu đồ tham chiếu trực tiếp Hình Biểu đồ tương tác 11.2 Biểu đồ thời gian (Timing Diagram) Biểu đồ phối hợp thời gian dùng để thị thay đổi trạng thái hay giá trị hay nhiều phần tử theo thời gian (over time) Nó hiển thị tương tác kiện khứ và khoảng thời gian điều chỉnh chúng State lifeline: thể thay đổi trạng thái item theo thời gian Trục X thể thời gian chọn, trục Y gán danh sách trạng thái Hình Biểu đồ State lifeline Value lifeline: Một giá trị state lifeline biểu diễn thay đổi giá trị item theo thời gian Trục X thể thời gian chọn Giá trị thể hai đường thẳng ngang chỗ giao thay đổi giá trị Hình Biểu đồ Value lifeline Putting it all together Trong kết hợp nào, state lifeline value lifeline xếp chồng lên đỉnh state lifeline value lifeline khác Chúng phải có trục X Thơng điệp chuyển từ state lifeline sang state lifeline khác Mỗi chuyển tiếp trạng thái giá trị có kiện định nghĩa, thời điểm hạn chế để kiện phải xuất hiện, tong khoảng thời gian 10 2.3 Xây dựng biểu đồ lớp Biểu đồ lớp mơ tả mối quan hệ gói hệ thống 2.4 Xây dựng biểu đồ đối tượng Dựa vào việc phân tích thiết kế lớp thực thể hệ thống, ta nhận thấy hệ thống có thực thể đối tượng thực thể phụ - thực thể đối tượng hệ thống gồm có: • Người dùng • Chun mục sách • Sách • Người quản trị • Chức hệ thống • Nhóm quyền - thực thể đối tượng phục là: • Chi tiết phân nhóm quyền cho quản trị • Chi tiết phân chức cho nhóm quyền 26 Sơ đồ quan hệ thực thể 27 Sử dụng Star UML xây dựng số biểu đồ • Biểu đồ ca sử dụng tổng quát • Biểu đồ ca sử dụng đăng nhập: 28 • Biểu đồ ca sử dụng đăng xuất: • Biểu đồ ca sử dụng đăng ký : 29 • Biểu đồ trình tự tìm kiếm: • Thêm thành viên : • Xóa thành viên: 30 • Tìm kiếm thành viên : 31 • Thêm viết mới: • Sửa viết: 32 • Xóa viết: 33 • Tìm kiếm viết: • Xem viết: 34 • Upload sách: • Download sách: 35 • Xóa sách: • Tìm sách : 36 • Sửa thơng tin sách: • Đọc sách trực tuyến: 37 • Chấm điểm sách : • Hiển thị chủ đề : 38 • Xóa chủ đề : • Thêm chủ đề : 39 • Thiết lập thơng tin tài khoản: • Đổi mật : 40 ... học xong mơn học ? ?Phân tích thiết kế kiến trúc phần mềm ứng dụng? ?? nhóm nghiên cứu chúng em lựa chọn tốn ? ?Phân tích thiết kế phần mềm quản lý phòng đọc điện tử Trường ĐH Hùng Vương? ?? làm nội dung... tác quản lý phịng đọc điện tử Hiện trung tâm TT-TL-TV sử dụng phần mềm thư viện điện tử Ilib công ty CMC quản lý sách quản lý bạn đọc Tuy vậy, việc áp dụng phần mềm quản lý Ilib vào phịng đọc điện. .. Biểu đồ kết hợp nhiều State lifeline Value lifeline 11 PHẦN 2: TỔNG QUAN VỀ PHẦN MỀM Tổng quan vấn đề nghiên cứu 1.1 Giới thiệu về phòng đọc điện tử trường Đại học Hùng Vương Phòng đọc điện tử thuộc