Đề tài Tìm hiểu quy trình phát triển phần mềm hướng đối tượng

Mục lục

Chương I: Giới thiệu chung về công nghệ phần mềm và phần mềm hướng đối tượng

I.1: Phần mềm là gì ? .

I.2: Công nghệ phần mềm là gì?.

I.3: Vòng đời của phần mềm.

I.4: Phần mềm hướng đối tượng.

Chương II: Quy trình phát triển phần mềm

I: Khung quy trình phát triển phần mềm chung.

II: Một số mô hình phát triển phần mềm.

III: Các giai đoạn trong quy trình phát triển phần mềm.

Chương III: Quy trình phát triển phần mềm hướng đối tượng.

III.1: Xác định yêu cầu.

III.2: Phân tích yêu cầu hướng đối tượng (OOA).

III.3: Thiết kế hướng đối tượng.

III.4: Cài đặt.

III.5: Kiểm thử.

 

pdf30 trang | Chuyên mục: Phương Pháp Phát Triển Phần Mềm Hướng Đối Tượng | Chia sẻ: dkS00TYs | Lượt xem: 2053 | Lượt tải: 2download
Tóm tắt nội dung Đề tài Tìm hiểu quy trình phát triển phần mềm hướng đối tượng, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
• Phương pháp Wirfs – Brock: Quy trình phát triển do Wirfs – Brock đề xuất: 
− Xây dựng giao thức cho mỗi lớp.
− Tạo ra đặc tả thiết kế cho mỗi hệ thống con.
− Mô tả mỗi hệ thống con theo cách mà nó thực hiện.
− Thiết kế đối tượng.
− Thiết kế thông điệp.
3. Quy trình thiết kế hướng đối tượng
• Thiết kế hệ thống
+ Đặt tên cho các hệ thống con và các thành phần cơ bản
+ Định danh các hệ thống con cho bộ xử lí.
+ Lựa chọn chiến lược quản trị cơ sử dữ liệu.
+ Xác định chuẩn cho phát triển.
+ Xác định các yêu cầu cài đặt.
• Xác định đối tượng
− Một mô tả của đối tượng có thể là một trong 2 dạng sau:
+ Mô tả giao thức: Thiết lập giao diện của đối tượng bằng cách xác định 
mỗi thông điệp mà đối tượng có thể nhận và các phương thức liên quan 
đối tượng thực hiện khi nhận được thông điệp.
+ Mô tả thực hiện: Chỉ ra chi tiết thực hiện cho mỗi phương thức bằng 
cách chuyển thông điệp giữa các đối tượng. Chi tiết thực hiện bao gồm 
thông tin về các phần riêng của đối tượng.
− Giao thức mô tả là một tập các thông điệp và các chú thích tương ứng với 
mỗi thông điệp.
− Một mô tả thực hiện của một đối tượng cung cấp các chi tiết bên trong 
được yêu cầu để thực hiện nhưng không cần thiết cho viện dẫn. Người 
thiết kế đối tượng phải cung cấp mô tả thực hiện và do đó phải tạo ra chi 
tiết bên trong của đối tượng.
• Thiết kế thuật toán và cấu trúc dữ liệu
Một thuật toán được tạo ra để thực hiện một đặc tả cho mỗi phương thức. 
Trong nhiều trường hợp, thuật toán chỉ là tính toán đơn giản hoặc dãy các thủ 
tục được thực hiện như một module phần mềm tự chứa.
− Cấu trúc dữ liệu được thiết kế đồng thời với thuật toán. Do các phương 
thức thao tác các thuộc tính của lớp, thiết kế cấu trúc dữ liệu phản ánh 
tốt nhất thuộc tính sinh ra trong thiết kế thuật toán của các phương thức 
tương ứng.
21
− Các kiểu phương thức chia làm 3 loại chính:
+ Phương thức thao tác dữ liệu.
+ Phương thức thực hiện tính toán.
+ Phương thức điều khiển đối tượng cho sự kiện điều khiển.
− Để tối ưu hóa thiết kế hướng đối tượng. Rambaugh đã đưa ra các gợi ý 
sau:
+ Xem lại mô hình đối tượng – quan hệ để đảm bảo rằng các thiết kế 
được thực hiện sử dụng tài nguyên hiệu quả và nới lỏng các ràng buộc 
thực hiện thêm vào các dư thừa nếu thấy cần thiết.
+ Xem lại thuộc tính cấu trúc dữ liệu và các thuật toán tương ứng để tăng 
cường hiệu quả xử lí.
+ Tạo ra thuộc tính mới để giữ thông tin thừa kế, do đó tránh được việc 
tính toán lại.
• Thiết kế lớp đối tượng
+ Quá trình thiết kế lớp bao gồm các công đoạn sau: Xác định tên lớp đối 
tượng, xác định các quan hệ, xác định các thuộc tính, xác định các 
phương thức, xác định lớp cha của nó ( nếu có ).
+ Tên lớp tuân theo một số quy tắc:
- Tên lớp phải là danh từ.
- Tên lớp phải có chu trình sống của mình, phải có thời điểm sinh ra, 
chết đi của đối tượng đó. 
- Nó độc lập tương đối với các đối tượng khác (tức là nó sẽ độc lập 
hơn đối tượng khác một cách tương đối, về các mặt khác nó có thể phụ 
thuộc lẫn nhau giữa các đối tượng, nhưng nó là một thể thức ngoài đời 
có.).
+ Phần xác định các quan hệ . Việc xác định các quan hệ giữa các lớp là 
việc phải lập ra một từ điển quan hệ giữa các lớp ví như: lớp A là con 
lớp B chẳng hạn. Nó cũng có một số qui tắc sau để qui ước là: tên quan 
hệ phải là động từ,... Nó nói lên sự phụ thuộc lẫn nhau của các đối 
tượng.
+ Việc xác định các thuộc tính nó có một số qui định như sau: tên thuộc 
tính phải là danh từ, nó phải có sự lệ thuộc duy nhất vào đối tựng đang 
xét. Trong khi xác định thuộc tính cần chú ý: nếu thuộc tính đó phụ 
thuộc một đối tượng thì thuộc tính đó là thuộc tính của đối tượng, 
thuộc tính phụ thuộc vào nhiều đối tượng thì thuộc tính đó là thuộc 
tính quan hệ. 
+ Việc xác định phương thức thực chất đó là các hành động, công việc, 
của các phương thức đó, nên tên phương thức có nhiều loại phương 
thức trong xây dựng một lớp đối tượng:
- Các phương thức thuộc nhóm khởi tạo: gồm phương thức khởi tạo 
mặc định, phương thức khởi tạo khi biêt một số thuộc tính của nó, 
phương thức phá hủy.
- Phương thức thuộc nhóm cung cấp (phương thức get)
- Các phương thức thuộc nhóm thiết lập (phương thức set)
22
- Các phương thức xử lý tính toán: các phương thức này sẽ đóng vai 
trò là nơi thực thi các tính toán của từng class tương ứng trước khi 
thêm, hay làm gì đó với hệ thống dữ liệu.
- Các phương thức thuôc nhóm kiểm tra. Đây là nơi kiểm tra các ràng 
buộc về dữ liệu cho class tương ứng của bạn.
• Một số quy ước để thiết kế một class.
+ Để thiết kế một class trước tiên bạn phải đưa ra tên của nó là gì.
+ Xác định các phương thức, thuộc tính cho class đó như đã nói ở trên
+ Nếu các thuộc tính có cấu trúc phức tạp hoặc có các thuộc tính liên hệ 
với nhau và nó có ngữ nghĩa cụ thể (ngoài đời có nó) thì nên tách nó ra 
thành một lớp độc lập với nhau.
+ Khi 2 hay nhiều lớp có các thuộc tính chung thì nên tách thành một lớp 
cha của các lớp đó và các lớp đó được kế thừa từ lớp cha của nó.
+ Khi gặp các thuộc tính có khả năng phân loại trong một số trường hợp 
thì ta tách các thuôc tính con của nó thành thuộc tính con tương ứng.
• Thiết kế một mô hình class.
+ B1: Thiết kế các class như các cách ở trên đã nêu.
+ B2: Xác định quan hệ giữa các class.
+ B3: Xác định các quan hệ và bảng số của nó.
Bảng số của 2 lớp là phần mô tả dữ liệu giữa 2 lớp đó. Có các quan hệ 
giữa các bảng số như sau:
I- Một nhiều 
1 A thì tương ứng với nhiều B
1B tương ứng với 1A
II- Một - Một 1A thì tương ứng với 1B
1B tưng ứng với 1A.
1A tương ứng với 1B
III - nhiều nhiều.
1 A tương ứng với nhiều B.
1B tương ứng với nhiều A
• Thiết kế thành phần chương trình và giao diện
− Đây là khía cạnh quan trọng của chất lượng thiết kế phần mềm.
23
− Cách tiếp cận hướng đối tượng xác định đối tượng như một thành phần 
chương trình, bản thân nó liên kết với các thành phần khác. Chúng ta 
phải xác định được giao diện tồn tại giữa các đối tượng và toàn bộ cấu 
trúc của đối tượng.
− Giao diện yêu cầu phải dễ sử dụng.
III.4: Cài đặt
Thực hiện các việc xây dựng chương trình bằng ngôn ngữ lập trình. Mục đích của luồng công 
việc này là:
- Xác định cách thức viết mã cài đặt
- Cài đặt các lớp và đối tượng như là các thành phần
- Tích hợp vào trong một hệ thống có thể thực thi được
24
a) Vai trò của cài đặt trong vòng đời phần mềm
Cài đặt là trọng tâm của các bước lặp trong giai đoạn Xây dựng. Nó cũng được tiến 
hành trong giai đoạn Chi tiết để tạo ra khung kiến trúc khả thi. Cài đặt cũng được tiến 
hành trong giai đoạn chuyển giao để xử lí các lỗi được tìm thấy khi phát hành phiên 
bản beta.
b) Quy trình cài đặt
• Cài đặt kiến trúc.
− Xác định các thành phần quan trọng về mặt kiến trúc, chẳng hạn như 
các thành phần có thể thi hành được.
− Kiến trúc sư bảo trì, tinh chế và cập nhật mô tả kiến trúc và các khung 
nhìn kiến trúc của mô hình cài đặt và triển khai.
• Xác định các thành phần quan trọng về mặt kiến trúc.
• Xác định các thành phần chạy được và ánh xạ chúng lên các nút.
• Tích hợp hệ thống.
Mục tiêu: 
25
− Tạo ra một kế hoạch tích hợp sản phẩm mô tả các sản phẩm được yêu 
cầu trong một bước lặp và các yêu cầu đối với mỗi sản phẩm.
− Tính hợp mỗi sản phẩm trước khi kiểm thử tích hợp.
• Lên kế hoạch sản phẩm tiếp theo.
• Tích hợp một sản phẩm
− Thu thập các phiên bản đúng của các hệ thống con cài đặt, biên dịch 
chúng và kết nối chúng vào trong một sản phẩm.
• Cài đặt một hệ thống con
− Cài đặt một hệ thống con để đảm bảo rằng một hệ thống con hoàn 
thành vai trò của nó trong mỗi sản phẩm.
• Bảo trì nội dung hệ thống con.
III.5: Kiểm thử
• Sau khi một phần mềm được hoàn tất. Công việc cuối cùng là kiểm thử nhằm phát 
hiện lỗi bằng việc xem xét lại đặc tả, thiết kế và mã hoá.
• Là khâu mấu chốt đảm bảo chất lượng phần mềm.
• Nguyên tắc kiểm thử:
− Mọi hoạt động kiểm thử phải tuân theo yêu cầu của khách hàng.
− Kiểm thử phải được lập kế hoạch trước khi được tiến hành.
− Kiểm thử ban đầu ít, sau đó quá trình lớn dần.
− Không thể kiểm thử mọi khía cạnh.
− Để kiểm thử đạt kết quả cao nhất, quá trình kiểm thử phải có sự tham gia của 
bên thứ 3.
• Mục đích của kiểm thử là để đảm bảo chất lượng. Luồng công việc này liên quan đến:
− Xét duyệt sự tương tác giữa các thành phần trong hệ thống
− Xét duyệt sự tích hợp đúng đắn các thành phần
− Xét duyệt tất cả các yêu cầu đã được cài đặt
− Đảm bảo rằng phát hiện các lỗi trước khi triển khai hệ thống
• Các bước kiểm thử:
26
− Kiểm thử đơn vị
− Kiểm thử tích hợp
− Kiểm thử hệ thống
− Kiểm thử sự chấp nhận
27
28
Kết luận
Ngày nay các công ty đang phải đương đầu với việc co hẹp ngân sách. Điều này có nghĩa là 
quy mô đầu tư vào các dự án phần mềm bị cắt giảm rất lớn. Nó làm phát sinh nhu cầu về thời 
gian phát triển ngắn hơn và chi phí nhân lực thấp hơn.
Với việc tăng khuynh hướng nghiêng về các hệ phân bố, một tập hợp các công cụ trực quan 
mới hiện đã có sẵn trên thị trường. Những công cụ này đem cùng chúng cách tiếp cận mới tới 
việc phát triển hệ thống.
Các phương pháp luận truyền thống gây cản trở rất nhiều cho việc đáp ứng những thánh thức 
nói trên. Do đó có việc nổi lên của phương pháp luận hướng đối tượng.
Phát triển các phần mềm theo hướng đối tượng đang là sự chọn lựa hàng đầu của các công ty 
hiện nay khi họ muốn phát triển một sản phẩm nào đó. 
29
Tài liệu tham khảo.
1. Thạc Đình Cường. Nhập môn công nghệ phần mềm, NXB Giáo dục,10/2008.
2. TS.Lương Mạnh Bá (chủ biên) – Lương Thanh Bình – Cao Tuấn Dũng – Nguyễn Thị 
Thu trang – Lê đức Trung, NXB Giáo dục, 2010. 
3. Lê Đức Trung. Công nghệ phần mềm, NXB Khoa học và Kĩ thuật, 4/2002.
4. Ngô Trung Việt – Nguyễn Kim Ánh, Nhập môn kĩ nghệ phần mềm, NXB Khoa Học 
và Kĩ thuật, 2/2003.
5. Roger S.Pressman (Ngô Trung Việt dịch), Kĩ nghệ phần mềm, NXB Giáo dục, 1997.
6. Slide của trường Đại Học Bách Khoa Hà Nội và một số slide của một số trường Đại 
học khác.
7. Nguyễn Tuấn Huy ( biên dịch ), Quá trình phát triển phần mềm, NXB Thống kê,2003
30

File đính kèm:

  • pdfĐề tài Tìm hiểu quy trình phát triển phần mềm hướng đối tượng.pdf
Tài liệu liên quan