công cụ và môi trường phát triển

95
Công cụ và môi trường phát triển phần mềm GV. Nguyễn Trung Phú

Upload: nochily

Post on 16-Jun-2015

1.735 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Công cụ và môi Trường Phát Triển

Công cụ và môi trường phát triển phần mềm

GV. Nguyễn Trung Phú

Page 2: Công cụ và môi Trường Phát Triển

Công cụ và môi trường phát triển phần mềm

Số đơn vị học trình: 4 Trình độ: Chuyên ngành Phân bố thời gian: 33%lý thuyết + 67%

thực hành Điều kiện tiên quyết: Nhập môn công nghệ

phần mềm

Page 3: Công cụ và môi Trường Phát Triển

Công cụ và môi trường phát triển phần mềm

Chương 1: Tổng quanChương 2: Công cụ và môi trường phát triển phần mềm trong phân tích và thiết kế.Chương 3. Công cụ và môi trường phát triển phần mềm trong cài đặt và kiểm chứng Chương 4. Môi trường phát triển tích hợp

Page 4: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các khái niệm: Công cụ phát triển phần mềm

– Công cụ phát triển phần mềm: là sản phẩm được xây dựng phục vụ cho việc thực hiện xây dựng một phần mềm

– Công cụ phát triển phần mềm có thể kể đến đó là ngôn ngữ lập trình, công cụ hỗ trợ thiết kế, công cụ kiểm thử, công cụ cài đặt, hệ quản trị cơ sở dữ liệu.

Page 5: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Sự tích hợp các công cụ và môi trường phát triển phần mềm

Môi trường phát triển phần mềm

Page 6: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Phân loại mô hình theo giai đoạn– Mô hình Waterfall– Mô hình chữ V – Mô hình tiến hóa – Mô hình xoắn

Page 7: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Phân loại mô hình theo chức năng– Mô hình mẫu – Mô hình lặp và tăng dần

Phân loại mô hình theo phương pháp hỗ trợ– Mô hình phát triển nhanh

Page 8: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Lịch sử phát triển các công cụ và môi trường phát triển phần mềm– Các thế hệ ngôn ngữ lập trình– Các cơ sở dữ liệu của môi trường phát triển phần

mềm

Page 9: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các thế hệ ngôn ngữ lập trình – Thế hệ thứ nhất:

Xuất hiện vào thập niên 60Tập lệnh gần giống như tập lệnh máy

(machine code)Đại diện tiêu biểu: Fortran

Page 10: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các thế hệ ngôn ngữ lập trình – Thế hệ thứ hai

Phát triển các cấu trúc dữ liệu từ thế hệ thứ nhấtXuất hiện cấu trúc khối (block structure), các cấu

trúc điều khiển (control structures) và các dạng cú pháp linh hoạt hơn

Chương trình đã có thể được thiết kế (design)Đại diện tiêu biểu: Algol-60

Page 11: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các thế hệ ngôn ngữ lập trình – Thế hệ thứ ba:

Xuất hiện các kiểu dữ liệu do người sử dụng định nghĩa (user-defined data types)

Các dạng cấu trúc điều khiển tiếp tục được bổ sung hiệu quả hơn

Ngôn ngữ độc lập hơn với kiến trúc máy tínhĐại diện tiêu biểu: Pascal

Page 12: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các thế hệ ngôn ngữ lập trình – Thế hệ thứ tư: (Fourth Generation Languages – 4GL)

Dễ sử dụng hơn, đặc biệt dành cho những người không phải là chuyên gia

Cho phép đưa ra những giải pháp nhanh để xử lý dữ liệu Xúc tích hơn Gần với ngôn ngữ tự nhiên Gần gũi với người sử dụng Không có dạng thủ tục (non-procedural) Đại diện tiêu biểu: Structured Query Language (SQL)

Page 13: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các thế hệ ngôn ngữ lập trình – Thế hệ thứ năm:

Các ngôn ngữ được chuyên dụng hoá, độc lập với kiến trúc máy tính, phục vụ các nhu cầu lập trình đặc trưng

Hỗ trợ nhiều cấu trúc điều khiển và có các dạng cú pháp tương đối dễ đọc

Page 14: Công cụ và môi Trường Phát Triển

Chương 1: Tổng quan

Các cơ sở dữ liệu của môi trường phát triển phần mềm– Foxpro– Excel– Access– SQL Server– Oracal– MySQL

Page 15: Công cụ và môi Trường Phát Triển

Chương 2: Công cụ và môi trường phát triển phần mềm trong phân tích và thiết kế.

Phân tích– Nghiên cứu yêu cầu của khách hàng/người dùng

để định nghĩa một phạm vi bài toán, nhận dạng nhu cầu của một tổ chức, xác định xem nhân lực, phương pháp và công nghệ máy tính có thể làm sao để cải thiện một cách tốt nhất công tác của tổ chức này

Page 16: Công cụ và môi Trường Phát Triển

Phân tích

Thiết lập một cách nhìn tổng quan về hệ thống và các mục đích chính của hệ thống

Liệt kê nhiệm vụ mà hệ thống cần thực hiện Phát triển một bộ từ vựng để mô tả bài toán

cũng như các vấn đề liên quan Đưa ra hướng giải quyết bài toán

Page 17: Công cụ và môi Trường Phát Triển

Phân tích

Các bước phân tích hướng đối tượng– Mô hình Use Case: xây dựng mô hình chức năng

của sản phẩm phần mềm– Mô hình lớp: biểu diễn các lớp, các thuộc tính và

mối quan hệ giữa các lớp– Mô hình động: biểu diễn hoạt động liên quan đến

một lớp hay lớp con, hay còn được biểu diễn dưới dạng sơ đồ trạng thái

Page 18: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Cách tạo một mô hình Use Case– Xác định các tác nhân và các Use Case– Xác định mối quan hệ và phân rã biểu đồ Use

Case– Biểu diễn các Use Case thông qua các kịch bản– Kiểm tra và hiệu chỉnh mô hình

Page 19: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Tìm các tác nhân và các Use Case– Ai sử dụng hệ thống? (tác nhân chính)– Ai cần bảo trì, quản trị, đảm bảo hệ thống hoạt

động? (tác nhân phụ)– Các thiết bị nào được sử dụng? – Hệ thống có liên kết với hệ thống khác hay ko?– Ai quan tâm đến kết quả mà hệ thống đưa ra?

Page 20: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Đưa ra câu hỏi cho các tác nhân tìm được – Tác nhân cần chức năng nào của hệ thống?– Có cần đưa ra cảnh báo cho tác nhân hay ko?– Chức năng gì giúp đơn giản hóa công việc của

tác nhân– Các chức năng hệ thống có thể sinh ra bởi sự

kiện nào khác hay ko?– Thông tin đầu vào và đầu ra gồm những gì?

Page 21: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Xác định mối quan hệ biểu đồ Use Case– Quan hệ bao gồm <<include>>– Quan hệ mở rộng <<extend>>– Quan hệ tổng quát <<generalization>>– Quan hệ kết hợp <<aggregation>>

Page 22: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Xác định phân rã biểu đồ Use Case– Xác định sơ đồ Use Case mức tổng quát– Phân rã các Use Case mức cao– Tiếp tục phân rã Use Case cho đến khi gặp Use

Case ở nút lá– Hoàn thiện sơ đồ Use Case

Page 23: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Biểu diễn các Use Case bởi kịch bảnÝ nghĩa

Tên USE CASE Tên Use case

Tác nhân chính Tác nhân chính của Use Case

Mức Mức Use Case trong sơ đồ phân rã

Người chịu trách nhiệm: Người chịu trách nhiệm chính

Tiền điều kiện: Điều kiện mà Use Case được kích hoạt

Đảm bảo tối thiểu Trường hợp Use Case thất bại

Đảm bảo thành công Trường hợp Use Case thành công

Kích hoạt Sự kiện tác động kích hoạt 1 Use Case

Chuỗi sự kiện chính Kịch bản chuẩn trong trường hợp t/công

Ngoại lệ: Ngoại lệ tương ứng với kịch bản chuẩn

Page 24: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình Use Case

Hiệu chỉnh mô hình– Bước này kiểm tra toàn bộ mô hình Use Case

nhằm bổ xung, thay đổi các thông tin cần thiết– Bước này sẽ c ó sự chuyển giao cho khách hàng

kiểm tra– Bước này kết thúc khi khách hàng đã thống nhất

Page 25: Công cụ và môi Trường Phát Triển

Phân tích

Công cụ hỗ trợ lập kế hoạch– Bussiness Plan Pro của hãng Paolo Alto – Mindjet Mindmanager – Rational Rose– Microsoft Visio 2003

Page 26: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Các bước xây dựng sơ đồ Use Case– Biểu diễn các tác nhân– Biểu diễn và đặc tả các Use Case mức tổng quát– Biểu diễn các mối quan hệ– Phân rã biểu đồ Use Case và đặc tả các Use

Case mức thấp

Page 27: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các tác nhân– Chọn công cụ Actor trên hộp công cụ– Đưa con trỏ vào vị trí màn hình Diagram thích

hợp và đặt vào vị trí đó– Mở cửa sổ đặc tả của Actor và viết tên của các

tác nhân

Page 28: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các tác nhân

Page 29: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các Use Case mức cao– Chọn công cụ Use Case trên thanh công cụ– Đưa con trỏ vào màn hình Diagram và đặt Use

Case vào vị trí thích hợp– Mở cửa sổ đặc tả Use Case, đặt tên và mô tả các

thông tin khác

Page 30: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các Use Case mức cao

Page 31: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các đặc tả các quan hệ– Chọn kiểu quan hệ tương ứng trong hộp công cụ– Đặt con trỏ vào đối tượng khởi đầu quan hệ vào

kéo đến đối tượng cuối– Mở một số các đặc tả quan hệ để chọn kiểu quan

hệ và đặt tên quan hệ cùng các thông tin liên quan

Page 32: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các đặc tả các quan hệ

Page 33: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Biểu diễn các đặc tả các quan hệ

Page 34: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Phân rã biểu đồ Use Case– Nhấn chuột phải vào Use Case tương ứng cần

phân rã trong cửa sổ Browser và chọn chức năng Use Case Diagram mới

– Vẽ biểu đồ mức thấp tương tự như biểu đồ Use Case mức cao

Page 35: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Page 36: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ Use Case trong Rational Rose

Page 37: Công cụ và môi Trường Phát Triển

Phân tích – Mô hình lớp

Khái niệm: Lớp là một nhóm các đối tượng có chung thuộc tính và phương thức.

Xác định lớp thông qua 3 phương pháp:– Phương pháp trích danh từ– Phương pháp dùng thẻ CRC – Phương pháp xác định từ Use Case và kịch bản

Page 38: Công cụ và môi Trường Phát Triển

Phương pháp trích danh từ

Cần định nghĩa sản phẩm bằng một câu, sau đó kết hợp các ràng buộc để phát triển thành một đoạn

Thu thập danh từ trong đoạn đó chia thành các nhóm và đề cử ra các lớp cũng như các thuộc tính và phương thức của lớp đó

Page 39: Công cụ và môi Trường Phát Triển

Phương pháp thẻ ghi CRC

Thẻ ghi CRC - Class Responsibility Collaboration – Thực hiện dựa trên một số lớp biểu diễn các thông tin liên quan đến trách nhiệm của lớp đó và các lớp phối hợp với nó.

Từ thẻ ghi này người phát triển tìm ra các lớp khác cần thiết và quan trọng hơn là xác định đầy đủ các thuộc tính, phương thức và mối quan hệ của các lớp.

Page 40: Công cụ và môi Trường Phát Triển

Phương pháp xác định lớp từ Use Case và kịch bản

Tìm các thành phần trong Use Case và Scenario để từ đó tập hợp và đề cử ra lớp

Các danh từ xuất hiện trong các Scenario biểu diễn thông tin để xác định thuộc tính của lớp

Các động từ xuất hiện trong mối quan hệ giữa các thành phần có thể xác định được phương thức của lớp

Page 41: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ lớp từ Use Case và kịch bản

Biểu đồ lớp chưa hoàn chỉnh có các nhiệm vụ chính:– Xác định lớp– Xác định thuộc tính và phương thức cơ bản– Bước đầu chỉ ra mối quan hệ trong sơ đồ lớp

Page 42: Công cụ và môi Trường Phát Triển

Xác định lớp

Nguyên tắc– Nghiên cứu kỹ tìm ra danh từ có vai trò nào đó

trong Scenario. Các danh từ này sẽ trở thành các lớp ứng viên

– Loại bỏ các lớp ứng viên không thích hợp, hay các danh từ không thích hợp gồm có một trong số trường hợp sau:

Lớp dư thừa Danh từ ko thích hợp Danh từ mô tả lớp không rõ ràng Danh từ chỉ một vai trò trong mối quan hệ với lớp khác Danh từ chỉ các công cụ xây dựng phần mềm

Page 43: Công cụ và môi Trường Phát Triển

Xác định phương thức và thuộc tính cơ bản

Nghiên cứu các Use Case, Scenario và trả lời các câu hỏi bao gồm:

– Với mỗi lớp, danh từ nào mô tả thông tin lớp đó, trả lời được sẽ tìm được thuộc tính

– Thông tin nào thực sự liên quan đến lĩnh vực quan tâm của hệ thống, trả lời được sẽ loại bỏ được thuộc tính dư thừa

– Thông tin nào là thông tin riêng (Private), thông tin nào chia sẻ với lớp khác (Protected, Public)

Xem xét các động từ đi kèm với danh từ biểu diễn lớp trong Scenario và xem xét các động từ đó có trở thành các phương thức được hay không.

Page 44: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Các bước biểu diễn biểu đồ bao gồm:– Biểu diễn lớp– Đặc tả thuộc tính và phương thức của lớp– Đặc tả chi tiết lớp– Biểu diễn các quan hệ

Page 45: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Page 46: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Bước 1: Biểu diễn các lớp– Chọn công cụ trong hộp công cụ– Đưa con trỏ vào màn hình Diagram– Đặt tên cho lớp– Click vào vùng thứ 2 trong 3 vùng biểu diễn lớp

để thêm thuộc tình– Click vào vùng thứ 3 trong 3 vùng để biểu diễn

phương thức

Page 47: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Bước 2: Biểu diễn thuộc tính và phương thức– Ấn vào từng thuộc tính và phương thức cần đặc

tả– Chọn phạm vi truy nhập của thuộc tính– Đặc tả kiểu thuộc tính– Đặc tả giá trị tham số cho phương thức

Page 48: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Page 49: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Bước 3: Đặc tả chi tiết một lớp– Thực hiện trên các tab để mô tả– General: cung cấp thông tin chung– Operations và Attributes: cho biết thuộc tính và

phương thức– Relations: Mối quan hệ với các lớp khác– Component: thành phần của lớp nếu có– File: Các tệp tin đi kèm

Page 50: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Page 51: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Bước 4: Biểu diễn quan hệ giữa các lớp– Chọn quan hệ phù hợp– Kéo thả giữa hai lớp cần xác định– Đặc tả quan hệ

Page 52: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ lớp trong Rational Rose

Page 53: Công cụ và môi Trường Phát Triển

Phân tích - Mô hình động

Mô hình động được chia ra làm 3 dạng– Tương tác giữa các đối tượng trong thời gian

chạy– Hành động tổng quát biểu diễn các tiến trình hoặc

tương tác với người dùng– Các chuyển đổi trạng thái theo thời gian thông

qua biểu đồ trạng thái

Page 54: Công cụ và môi Trường Phát Triển

Phân tích - Mô hình động

Biểu đồ tuần tự– Mục đích: biểu diễn tương tác giữa người dùng

và đối tượng bên trong hệ thống. Biểu đồ cho biết các thông điệp được truyền tuần tự như thế nào theo thời gian.

– Biểu diễn: Biểu diễn bởi các đối tượng và các message truyền đi giữa các đối tượng đó

Page 55: Công cụ và môi Trường Phát Triển

Phân tích - Mô hình động

Biểu đồ cộng tác:– Mục đích: Biểu diễn tương tác giữa người dùng

và đối tượng bên trong hệ thống đồng thời giữa các đối tượng với nhau. Biểu đồ này nhấn mạnh mối quan hệ về mặt không gian giữa các đối tượng

– Các message trong biểu đồ cộng tác được đánh theo thứ tự thời gian và mối quan hệ về mặt không gian giữa các đối tượng.

Page 56: Công cụ và môi Trường Phát Triển

Phân tích - Mô hình động

Biểu đồ hoạt động– Mục đích: Biểu đồ này biểu diễn các hoạt động

như các luồng công việc hoặc tiến trình khác nhau trong hệ thống được xây dựng.

– Biểu diễn: qua các hoạt động, các đồng bộ hay rẽ nhánh và chuyển tiếp các hoạt động đó.

Page 57: Công cụ và môi Trường Phát Triển

Phân tích - Mô hình động

Biểu đồ trạng thái– Biểu diễn các trạng thái và sự chuyển tiếp giữa

các trạng thái của đối tượng trong 1 lớp xác định. Lớp trừu tượng ko có biểu đồ trạng thái

– Biểu diễn: dưới máy trạng thái hữu hạn với các trạng thái và sự chuyển tiếp của các trạng thái đó. Không có quá trình đồng bộ và rẽ nhánh.

Page 58: Công cụ và môi Trường Phát Triển

Mô hình động sử dụng biểu đồ trạng thái

Có hai dạng cho biểu đồ trạng thái– Biểu đồ trạng thái cho một Use Case mô tả trạng

thái và chuyển tiếp trạng thái của một đối tượng thuộc một lớp nào đó trong hoạt động của 1 lớp Use Case cụ thể.s

– Biểu đồ trạng thái hệ thống mô tả các trạng thái của một đối tượng trong toàn bộ hoạt động của cả hệ thống.

Page 59: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái

Biểu đồ trạng thái được xây dựng theo các bước sau:– Bước 1: Nhận biết các trạng thái và sự kiện– Bước 2: Xây dựng biểu đồ– Bước 3: Hiệu chỉnh biểu đồ

Page 60: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái

Bước 1: Nhận biết trạng thái và sự kiện thông qua các câu hỏi sau:– Một đối tượng có những trạng thái nào?– Những sự kiện có thể xảy ra?– Trạng thái mới là gì?– Có những thủ tục ảnh hưởng đến trạng thái của

một đối tượng không?– Những sự kiện và sự chuyển tiếp nào không xảy

ra?– Cái gì khiến cho một đối tượng được tạo ra?– Cái gì khiến một đối tượng bị hủy?

Page 61: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái

Bước 2: Xây dựng biểu đồ– Xuất phát trạng thái khởi đầu và xác định trạng

thái kế tiếp và biểu diễn các chuyển tiếp giữa các trạng thái đó là các sự kiện theo cấu trúc:

Sự kiến [điều kiện] hoạt động– Dựa vào quá trình chuyển tiếp trạng thái xác định

chuyển tiếp nào dẫn đến trạng thái kết thúc trong vòng đời của một đối tượng

Page 62: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái

Bước 3: Hiệu chỉnh biểu đồ trạng thái– Xem xét lại toàn bộ các biểu đồ trạng thái cho

từng lớp và sửa lại biểu đồ trạng thái nếu cần thiết.

– Các biểu đồ trạng thái được sử dụng để xác định đầy đủ các thuộc tính của biểu đồ lớp nên có thể thực hiện tiếp trong phần thiết kế.

Page 63: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái bằng Rational Rose

Bước 1: Trong Browser Windows, từ một lớp tương ứng nhấn chuột phải chọn New – chọn Statechart Diagram.

Bước 2: Chọn công cụ State để thêm trạng thái vào biểu đồ

Bước 3: Đặc tả trạng thái bằng cửa sổ đặc tả Bước 4: Biểu diễn quan hệ trong biểu đồ

trạng thái

Page 64: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái bằng Rational Rose

Page 65: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ trạng thái bằng Rational Rose

Page 66: Công cụ và môi Trường Phát Triển

Phân tích

Công cụ soạn thảo đồ hình– Relation Rose– Microsoft Visio 2003

Page 67: Công cụ và môi Trường Phát Triển

Phân tích

Các công cụ khác– Microsoft Word– Corel Draw– Adobe Prime– Adobe Photoshop– Macromedia Flash

Page 68: Công cụ và môi Trường Phát Triển

Chương 2: Công cụ và môi trường phát triển phần mềm trong phân tích và thiết kế.

Thiết kế– Mô hình hóa chi tiết hệ thống dựa trên các lớp,

các đối tượng trên miền ứng dụng của hệ thống– Thiết kế dựa trên chiến lượng trừu tượng hóa

phân cấp dữ liệu trong đó các thành phần sẽ được thiết kế từ các lớp, đối tượng, các module và các tiến trình

– Các phương thức được thiết kế trong mối quan hệ với các đối tượng xác định hoặc một lớp đối tượng nào đó

Page 69: Công cụ và môi Trường Phát Triển

Chương 2: Công cụ và môi trường phát triển phần mềm trong phân tích và thiết kế.

Các bước thiết kế hướng đối tượng– Xây dựng biểu đồ tương tác gồm biểu đồ tuần tự,

biểu đồ cộ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, mối quan hệ của từng lớp

– Thiết kế chi tiết: xây dựng biểu đồ động cho các phương thức phức tạp, lên kế hoạch cài đặt tích hợp

– Xây dựng biểu đồ thành phần và biểu đồ triển khai– Phát sinh mã, chuẩn bị cài đặt hệ thống

Page 70: Công cụ và môi Trường Phát Triển

Thiết kế - Các biểu đồ tương tác

Trong thiết kế có 2 dạng biểu đồ tương tác bao gồm:– Biểu đồ tuần tự (Sequence diagram) nhấn mạnh

thực hiện tương tác– Biểu đồ cộng tác (Collaboration diagram) nhấn

mạnh đến mối quan hệ và sự bố trí giữa các đối tượng trong tương tác đó.

Page 71: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tuần tự

Các biểu đồ tuần tự gắn liền với các Use Case. Các message trong biểu đồ tuần tự mô tả lại thứ tự các sự kiện trong Scenario của các Use Case đó (cả chuẩn và ngoại lệ)

Chú ý khi vẽ biểu đồ:– Sự kiện được biểu diễn kèm theo các message nằm ngang– Đối tượng luôn gắn với các đường thẳng (life line) dọc theo

biểu đồ– Trục thời gian qui định từ trên xuống– Có thể xuất hiện các message từ một đối tượng đến chính

bản thân nó

Page 72: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tuần tự

Biểu diễn các message lặp

Page 73: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tuần tự

Sử dụng các message tạo và hủy

Page 74: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tuần tự

Sử dụng phân nhánh đối tượng

Page 75: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ cộng tác

Biểu đồ cộng tác cũng có các message với nội dung tương tự như trong biểu đồ tuần tự nhưng các đối tượng được đặt một cách tự do trong không gian của biểu đồ và không có đường life line cho mỗi đối tượng

Các message được đánh số thứ tự theo thứ tự thời gian.

Page 76: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ cộng tác

Chú ý khi xây dựng biểu đồ cộng tác– Giữa hai đối tượng có thể có nhiều message. Các

message này được biểu diễn trong không gian giữa hai đối tượng kèm theo số thứ tự của nó

– Trong biểu đồ cộng tác cũng có thể có các message từ một đối tượng đến bản thân nó. Message này biểu diễn bởi một đường vô hướng xuất phát và kết thúc tại đối tượng đó.

Page 77: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ cộng tác

Các thành phần trong biểu đồ cộng tác bao gồm– Các đối tượng (object): các đối tượng vẫn được

biểu diễn giống biểu đồ tuần tự nhưng không có đường life line phía dưới

– Các message có đánh số thứ tự: giữa các đối tượng tương tác trong biểu đồ cộng tác thể hiện bằng các đường liên kết vô hướng và được đánh số thứ tự theo trình tự thời gian của message.

Page 78: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tương tác bằng Rational Rose

Bước 1: Chọn Use Case cần xây dựng biểu đồ tuần tự hoặc cộng tác, chọn New– Sequence Diagram với biểu đồ tuần tự– Collaboration Diagram với biểu đồ cộng tác

Bước 2: Thêm đối tượng vào biểu đồ bằng ký hiệu của đối tượng trên thanh công cụ

Bước 3: Thêm các message Bước 4: Đặc tả các message bằng tên hoặc

hàm

Page 79: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tương tác bằng Rational Rose

Page 80: Công cụ và môi Trường Phát Triển

Xây dựng biểu đồ tương tác bằng Rational Rose

Page 81: Công cụ và môi Trường Phát Triển

Thiết kế - Các biểu đồ tương tác

Trong thiết kế có 2 dạng biểu đồ tương tác bao gồm:– Biểu đồ tuần tự (Sequence diagram) nhấn mạnh

thực hiện tương tác– Biểu đồ cộng tác (Collaboration diagram) nhấn

mạnh đến mối quan hệ và sự bố trí giữa các đối tượng trong tương tác đó.

Page 82: Công cụ và môi Trường Phát Triển

Thiết kế - Biểu đồ lớp chi tiết

Xác định phương thức cho mỗi lớp dựa vào biểu đồ tương tác theo nguyên tắc:– Xem xét các message trong các biểu đồ tương

tác để xác định hành động tương ứng với message đó thuộc trách nhiệm lớp nào

– Phương thức nào cần thiết để chuyển đổi trạng thái trong biểu đồ trạng thái của một lớp

– Xác định trên mỗi lớp xem có hàm tạo hàm hủy hay không

Page 83: Công cụ và môi Trường Phát Triển

Thiết kế - Biểu đồ lớp chi tiết

Xác định mối quan hệ giữa các lớp– Xác định cụ thể dạng quan hệ của các lớp

Quan hệ kết hợp: động từ biểu hiện sự thay thế, đại diện, sự bao hàm, sự giao tiếp, sự sở hữu hay thỏa mãn điều kiện nào đó

Quan hệ gộp: biểu diễn thông qua động từ như “được tạo thành từ”, “bao gồm”, ...

Quan hệ kế thừa: lớp này là khái quát hóa của lớp kia

Quan hệ phụ thuộc: hoạt động của lớp này quyết định lớp kia

Page 84: Công cụ và môi Trường Phát Triển

Thiết kế - Biểu đồ lớp chi tiết

Xác định mối quan hệ giữa các lớp– Xác định số lượng trong mối quan hệ thông qua

số lượng quan hệ tương ứng ở đầu ở mỗi lớp. Mối quan hệ gồm có các dạng

0..1: Không có hoặc 1 thể hiện, nếu n..m thì sẽ có n đến m thể hiện

0..*hoặc*: Không giới hạn số thể hiện của lớp (gồm cả giá trị 0)

0: Có chính xác 1 thể hiện 1..n: Có ít nhất 1 thể hiện

Page 85: Công cụ và môi Trường Phát Triển

Thiết kế - Biểu đồ lớp chi tiết

Hoàn chỉnh sơ đồ lớp chi tiết– Bổ sung các lớp còn thiếu gồm có: các lớp biên,

các lớp trung gian, các lớp trừu tượng và các lớp điều khiển.

– Hiệu chỉnh mô tả thuôc tính và phương thức theo đúng chuẩn của ngôn ngữ sẽ sử dụng trong phần cài đặt.

– Kiểm thử tính đúng đắn của biểu đồ lớp thông qua một số công cụ hoặc thử sinh mã theo ngôn ngữ chọn để kiểm tra và xác định lỗi trong biểu đồ

Page 86: Công cụ và môi Trường Phát Triển

Thiết kế chi tiết

Xây dựng biểu hoạt động để mô tả các phương thức phức tạp trong biểu đồ lớp. Biểu đồ này là cơ sở để người lập trình cài đặt chính xác phương thức.

Xây dựng các bảng thiết kế chi tiết gắn với quá trình lập kế hoạch và phân công công việc trong quá trình cài đặt hệ thông

Page 87: Công cụ và môi Trường Phát Triển

Thiết kế chi tiết

Xây dựng biểu đồ hoạt động– Hoạt động (activity)– Đồng bộ hóa (Synchronistion bar)

– Điều kiện (Guard Condition)– Các luồng (swimlane)

Page 88: Công cụ và môi Trường Phát Triển

Bảng thiết kế chi tiết

Tên lớp

Người thiết kế

Người cài đặt

Thời gian

Tên thuộc tính Mô tả Kiểu Phạm vi

Thuộc tính 1

Thuộc tính 2

Tên phương thức

Mô tả Giá trị trả về Phạm vi

Phương thức 1

Phương thức 2

Đoạn khung cho mã lớp

Page 89: Công cụ và môi Trường Phát Triển

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ỗi một thành phần được coi là một phần mềm nhỏ hơn, cung cấp một khối dạng hộp đen trong quá trình xây dựng phần mềm lớn

Các thành phần là các gói ở mức cao hoặc các gói thư viện liên kết động, phần mềm nhỏ tạo ra từ các phần mềm nhỏ hơn như các lớp và các thư viện chức năng

Page 90: Công cụ và môi Trường Phát Triển

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à liên kết 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, TCP/IP ...

Mối quan hệ các node trong biểu đồ được biểu diễn thông qua các liên kết truyền thông và được đánh số thứ tự theo thời gian

Page 91: Công cụ và môi Trường Phát Triển

Biểu đồ triển khai

Các dạng truyền thông trong liên kết triển khai:– TCP/IP– SNA– Microwave– Hồng ngoại– Giao thức không dây

Page 92: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ thành phần trên Rational Rose

Bước 1: Thêm các thành phần Bước 2: Đặc tả các thành phần Bước 3: Biểu diễn các quan hệ giữa các

thành phần Bước 4: Bổ sung các thành phần con

Page 93: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ thành phần trên Rational Rose

Page 94: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ triển khai trên Rational Rose

Bước 1: Thêm các Processor Bước 2: Thêm các Device Bước 3: Biểu diễn các quan hệ giữa các

thành phần

Page 95: Công cụ và môi Trường Phát Triển

Biểu diễn biểu đồ triển khai trên Rational Rose