Bài giảng Nhập môn Công nghệ phần mềm: Tuần 10 - Nguyễn Thị Minh Tuyền

53 53 0
Bài giảng Nhập môn Công nghệ phần mềm: Tuần 10 - Nguyễn Thị Minh Tuyền

Đ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

Bài giảng Nhập môn Công nghệ phần mềm - Tuần 10: Thiết kế và cài đặt cung cấp cho người học các kiến thức: Thiết kế hướng đối tượng sử dụng UML, thiết kế mẫu, các vấn đề về cài đặt. Mời các bạn cùng tham khảo nội dung chi tiết.

Nhập môn Công nghệ phần mềm Tuần 10: Thiết kế cài đặt Nội dung slide dịch hiệu chỉnh dựa vào slides Ian Sommerville CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Thiết kế hướng đối tượng sử dụng UML Thiết kế mẫu Các vấn đề cài đặt NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Thiết kế hướng đối tượng sử dụng UML Thiết kế mẫu Các vấn đề cài đặt NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Phát triển hướng đối tượng £ Phân tích, thiết kế lập trình hướng đối tượng có liên quan với tách rời £ Phân tích hướng đối tượng p liên quan đến việc phát triển mơ hình đối tượng miền ứng dụng £ Thiết kế hướng đối tượng p liên quan đến việc phát triển mô hình hệ thống hướng đối tượng để cài đặt yêu cầu £ Lập trình hướng đối tượng p liên quan đến việc thực hóa thiết kế hướng đối tượng sử dụng ngơn ngữ lập trình hướng đối tượng NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Đối tượng lớp đối tượng £ Đối tượng thực thể có trạng thái tập thao tác hoạt động trạng thái £ Lớp đối tượng sử dụng template cho đối tượng p Gồm việc khai báo tất thuộc tính dịch vụ liên quan đến đối tượng lớp NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Quy trình thiết kế hướng đối tượng £ Thiết kế lớp đối tượng quan hệ lớp £ Các hệ thống hướng đối tượng thường dễ thay đổi so với hệ thống phát triển dựa vào phương pháp hướng chức p Đối tượng bao gồm liệu thao tác liệu è dễ hiểu dễ thay đổi thực thể độc lập p Việc thay đổi cài đặt đối tượng hay việc thêm dịch vụ không nên gây ảnh hưởng đến đối tượng khác hệ thống NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các giai đoạn quy trình thiết kế £ Để phát triển thiết kế hệ thống từ khái niệm đến chi tiết: • Định nghĩa ngữ cảnh tương tác bên ngồi với hệ thống • Thiết kế kiến trúc hệ thống • Nhận diện đối tượng • Phát triển mơ hình thiết kế • Đặc tả giao diện đối tượng NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các giai đoạn quy trình thiết kế • Định nghĩa ngữ cảnh tương tác bên ngồi với hệ thống • Thiết kế kiến trúc hệ thống • Nhận diện đối tượng • Phát triển mơ hình thiết kế • Đặc tả giao diện đối tượng NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Ngữ cảnh hệ thống tương tác £ Việc hiểu mối quan hệ phần mềm thiết kế mơi trường bên ngồi cần thiết p định việc cung cấp chức hệ thống p cách cấu trúc hoá hệ thống để giao tiếp với mơi trường £ Việc hiểu ngữ cảnh giúp ta p thiết lập ranh giới hệ thống với môi trường p định xem tính cài đặt hệ thống thiết kế tính nằm hệ thống có liên quan NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Mơ hình ngữ cảnh mơ hình tương tác £ Mơ hình ngữ cảnh hệ thống p Mơ hình cấu trúc hệ thống khác môi trường hệ thống phát triển £ Mơ hình tương tác hệ thống p Mơ hình động mơ tả cách hệ thống tương tác với mơi trường p Sử dụng use case để tương tác 10 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Mẫu Observer Tên mẫu Mô tả Observer Tách rời việc hiển thị trạng thái khỏi đối tượng cung cấp hiển thị thay Khi trạng thái đối tượng thay đổi, tất hiển thị thông báo tự động cập nhật thay đổi Trong nhiều tình huống, ta phải cung cấp nhiều hiển thị khác thông tin trạng thái, ví dụ hiển thị đồ họa hiển thị bảng Các biểu diễn thay nên hỗ trợ tương tác, trạng thái bị thay đổi, tất hiển thị phải cập nhật Mơ tả vấn đề Mẫu sử dụng tất tình nhiều định dạng hiển thị thơng tin trạng thái u cầu khơng cần thiết phải trì thơng tin trạng thái để biết định dạng hiển thị cụ thể sử dụng 39 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Tên mẫu Observer Mô tả giải pháp Gồm hai đối tượng trừu tượng: Subject Observer, hai đối tượng cụ thể: ConcreteSubject ConcreteObject thừa kế thuộc tính đối tượng trừu tượng liên quan Các đối tượng trừu tượng chứa thao tác chung áp dụng tình Trạng thái hiển thị trì ConcreteSubject, cho phép thêm loại bỏ Observer (mỗi observer tương ứng với hiển thị) đưa thông báo trạng thái bị thay đổi ConcreteObserver trì copy trạng thái ConcreteSubject cài đặt giao diện Update() Observer ConcreteObserver tự động hiển thị trạng thái phản ánh thay đổi trạng thái cập nhật Subject biết Observer chi tiết lớp cụ thể Vì có mối liên hệ đối tượng Vì thiếu thơng tin, việc tối ưu để nâng cao hiệu hiển thị khơng thực tế Thay đổi Hệ Subject gây nên loạt cập nhật Observer NGUYỄNđược phát sinh cách không cần thiết 40 Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Đa hiển thị sử dụng mẫu Observer 50 D A C 25 B A B C D Subject Observer A: 40 B: 25 C: 15 D: 20 Observer 41 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Mơ hình UML mẫu Observer Observer Subject Attach (Observer) Detach (Observer) Notify () Update () for all o in observers o -> Update () ConcreteObserver ConcreteSubject GetState () return subjectState subjectState Update () observerState = subject -> GetState () observerState 42 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Thiết kế hướng đối tượng sử dụng UML Thiết kế mẫu Các vấn đề cài đặt 43 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các vấn đề cài đặt £ Phần khơng tập trung lập trình, phần lập trình quan trọng, tập trung vào vấn đề liên quan đến cài đặt: p Tái sử dụng p Quản lý cấu hình p Phát triển host-target 44 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Tái sử dụng £ Trong khoảng 1960 – 1990, đa phần phần mềm phát triển từ đầu, cách viết tất mã nguồn ngơn ngữ lập trình bậc cao p Việc tái sử dụng chủ yếu sử dụng hàm đối tượng thư viện ngơn ngữ lập trình £ Áp lực chi phí tiến độ dự án phương pháp không thực tế, đặc biệt cho hệ thống dựa vào web thương mại £ Tái sử dụng phương pháp phổ biến việc phát triển phần mềm ngày 45 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các mức tái sử dụng £ Mức trừu tượng p Tái sử dụng kiến thức thiết kế mức trừu tượng £ Mức đối tượng p Sử dụng trực tiếp đối tượng từ thư viện có sẵn £ Mức component p Component tập hợp đối tượng lớp đối tượng mà ta tái sử dụng hệ thống ứng dụng £ Mức hệ thống p Tái sử dụng toàn hệ thống ứng dụng 46 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Chi phí việc tái sử dụng £ Chi phí cho thời gian tìm kiếm phần mềm để tái sử dụng đánh giá liệu có đáp ứng yêu cầu đặt hay khơng £ Chi phí để chỉnh sửa cấu hình lại component/hệ thống phần mềm tái sử dụng để đáp ứng yêu cầu hệ thống phát triển £ Chi phí tích hợp thành phần tái sử dụng mã nguồn mà ta phát triển 47 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Quản lý cấu hình £ Quản lý cấu hình tên gọi cho quy trình quản lý hệ thống phần mềm thay đổi £ Mục tiêu: Hỗ trợ quy trình tích hợp hệ thống cho p tất người phát triển truy cập vào tài liệu mã nguồn dự án theo cách kiểm sốt, p tìm thay đổi thực p biên dịch liên kết component để tạo hệ thống 48 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các hoạt động quản lý cấu hình £ Quản lý phiên p hỗ trợ việc theo dõi phiên khác component £ Tích hợp hệ thống p giúp người phát triển định nghĩa phiên component sử dụng để tạo phiên hệ thống £ Theo dõi vấn đề p cho phép người dùng report bugs vấn đề khác; cho phép tất người phát triển thấy giải vấn đề chúng sửa lỗi NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt 49 Phát triển host-target £ Hầu hết phần mềm phát triển máy tính (host) chạy máy tính khác (target) £ Ta đề cập đến tảng (platform) phát triển tảng thực thi p Một tảng không phần cứng p Còn bao gồm hệ điều hành + phần mềm hỗ trợ (hệ quản trị CSDL) hay tảng phát triển (môi trường phát triển tương tác) p Nền tảng phát triển thường có phần mềm khác cài đặt tảng thực thi; tảng có kiến trúc khác NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt 50 Công cụ tảng phát triển £ Bộ biên dịch tích hợp hệ thống chỉnh sửa cú pháp £ Hệ thống debug £ Công cụ chỉnh sửa đồ hoạ, ví dụ cơng cụ chỉnh sửa mơ hình UML £ Các cơng cụ kiểm thử (ví dụ: JUnit) £ Các công cụ hỗ trợ dự án 51 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Integrated development environments (IDEs) £ Các công cụ phát triển phần mềm thường gom nhóm lại để tạo thành mơi trường phát triển tích hợp (IDE) £ Một IDE tập cơng cụ hỗ trợ nhiều khía cạnh khác việc phát triển phần mềm 52 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Các nhân tố triển khai component/hệ thống £ Nếu component thiết kế cho kiến trúc phần cứng cụ thể, dựa vào số hệ thống khác, phải triển khai tảng cung cấp phần cứng phần mềm yêu cầu £ Các hệ thống hỗ trợ đa tảng yêu cầu component triển khai nhiều tảng Nghĩa là, trường hợp triển khai tảng thất bại, phải có cài đặt thay component £ Nếu lượng truy cập thông tin component lớn, nên triển khai chúng tảng tảng gần mặt vật lý è giảm độ trễ thời gian gởi nhận thông điệp 53 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt ... đề cài đặt NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Nội dung Thiết kế hướng đối tượng sử dụng UML Thiết kế mẫu Các vấn đề cài đặt NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com... Instruments 15 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Kiến trúc hệ thống thu thập liệu Data collection Transmitter Receiver WeatherData 16 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com... 26 NGUYỄN Thị Minh Tuyền CuuDuongThanCong.com https://fb.com/tailieudientucntt Mơ hình hệ thống £ Là mơ hình tĩnh £ Chỉ cách gom nhóm đối tượng liên quan đến mặt logic 27 NGUYỄN Thị Minh Tuyền

Ngày đăng: 11/01/2020, 20:14