2.1-2.2.Vòng đời phát triển phần mềm-Các hoạt động phát triển phần mềm

Màu nền
Font chữ
Font size
Chiều cao dòng

2.1. Vòng đời phát triển PM:

+ Là khoảng thời gian tính từ khi phần mềm được đề xuất cho đến khi bỏ đi: cụ thể là từ khi được đặt hàng,  phát triển, sử dụng đến khi bị loại bỏ.

+ Vòng đời phần mềm được phân chia thành các pha chính như xác định yêu cầu, triển khai, kiểm thử, bảo trì (vận hành)... Phạm vi, thứ tự các pha khác nhau tùy theo từng

mô hình, dự án cụ thể

+ Tùy mô hình áp dụng mà việc phân chia các pha, các bước có thể có sự khác nhau: từ 3

đến 20 pha.

Xác định yêu cầu->Triển khai->Kiểm thử->Vận hành(bào trì)

_____________

2.2. Các hoạt động phát triển PM:

+ Phân tích tính khả thi

+ Phân tích và đặc tả yêu cầu

+ Thiết kế

+ Mã hóa

+ Kiểm thử

+ Bảo trì

*Phân tích tính khả thi

+ Phân tích tính khả thi

–  Xác định vấn đề cần giải quyết

–Xem xét các giải pháp và kỹ thuật khác nhau (đánh giá ưu nhược điểm của từng giải pháp)

–Đánh giá về thời gian, giá thành, nguồn tài nguyên cần thiết

–  Sản phẩm: tài liệu phân tích

*Phân tích và đặc tả yêu cầu:

+Đặc tả yêu cầu (hay còn gọi là kỹ thuật xác định yêu cầu) là quy trình tìm hiểu và định nghĩa những dịch vụ nào được yêu cầu và các ràng buộc trong quá trình vận hành và xây dựng hệ thống.

+  Quy trình xác định yêu cầu bao gồm bốn pha chính:

1.Nghiên cứu khả thi: Nghiên cứu khả thi giúp xác định những yêu cầu của người sử dụng có thoả mãn những công nghệ hiện tại hay không. Về góc độ kinh doanh, nghiên cứu khả thi nhằm xác định hệ thống đưa ra có mang lại lợi nhuận không. Việc nghiên cứu khả thi nên được thực hiện một cách nhanh chóng và không quá tốn kém. Kết quả của việc nghiên cứu khả thi sẽ xác định có nên tiếp tục xây dựng hệ thống nữa hay không.

2.Phân tích và rút ra các yêu cầu: đây là quy trình đưa ra các yêu cầu hệ thống thông qua một số phương pháp như: quan sát hệ thống hiện tại, phỏng vấn và thảo luận với người sử dụng, phân tích nhiệm vụ, phân tích tài liệu hoặc hệ thống cũ … Trong pha này, chúng ta có thể phải xây dựng một hoặc nhiều mô hình hệ thống và các mẫu thử.

3. Đặc tả yêu cầu: Pha này sẽ tư liệu hoá những thông tin thu thập

được. Có hai loại yêu cầu cần được xác định:

* Yêu cầu của người sử dụng: là những yêu cầu bằng ngôn ngữ tự nhiên bổ sung thêm cho các biểu đồ của các dịch vụ mà hệ thống cung cấp và các ràng buộc vận hành của nó. Kiểu yêu cầu này được viết bởi người sử dụng.

* Yêu cầu hệ thống: là những tài liệu có cấu trúc mô tả chi tiết về các chức năng, dịch vụ và các ràng buộc vận hành của hệ thống. Yêu cầu hệ thống sẽ định nghĩa những gì cần phải xây dựng, cho nên nó có thể trở thành bản hợp đồng giữa khách hàng và nhà thầu.

4. Đánh giá yêu cầu: pha này sẽ kiểm tra lại các yêu cầu xem chúng có đúng thực tế hay không, có thống nhất không, có đầy đủ không. Nếu phát hiện ra lỗi thì ta phải chỉnh sửa các lỗi này.

+ Phân tích và đặc tả yêu cầu

–  Xác định nhu cầu của khách hàng/người sử dụng

.Xác định bài toán, chứ không phải là giải pháp

–  Khó khăn

.Khách hàng không biết rõ cái họ cần

.Khách hàng không trình bày rõ cái họ muốn thay đổi

–  Sản phẩm: tài liệu đặc tả yêu cầu

*Thiết kế phần mềm:

+Thiết kế phần mềm là quá trình thiết kế cấu trúc phần mềm dựa trên những tài liệu đặc tả. Hoạt động thiết kế bao gồm những công việc chính sau:

–Thiết kế kiến trúc: Các hệ thống con cấu thành lên hệ thống cần xây dựng và mối quan hệ giữa chúng được xác định và tư liệu hoá.

–   Đặc tả trừu tượng: với mỗi hệ thống con, phải có một bản đặc tả về

các dịch vụ của nó và những ràng buộc khi nó vận hành.

–Thiết kế giao diện: với mỗi hệ thống con, các giao diện của nó với những hệ thống con khác phải được thiết kế và tư liệu hoá.

–Thiết kế thành phần: các dịch vụ cung cấp cho các thành phần khác và các giao diện tương tác với chúng phải được thiết kế.

–Thiết kế cấu trúc dữ liệu: cấu trúc dữ liệu được sử dụng để cài đặt hệ thống phải được thiết kế một cách chi tiết và cụ thể.

–Thiết kế thuật toán: Các thuật toán được sử dụng để cung cấp các dịch vụ phải được thiết kế chi tiết và chính xác.

+ Các công việc trong thiết kế phần mềm

+ Các công việc trong thiết kế phần mềm

+Thiết kế phần mềm là quá trình thiết kế cấu trúc phần mềm dựa trên những tài liệu đặc tả. Hoạt động thiết kế bao gồm những công việc chính sau:

–Thiết kế kiến trúc: Các hệ thống con cấu thành lên hệ thống cần xây dựng và mối quan hệ giữa chúng được xác định và tư liệu hoá.

–  Đặc tả trừu tượng: với mỗi hệ thống con, phải có một bản đặc tả về các dịch vụ của nó và những ràng buộc khi nó vận hành.

–Thiết kế giao diện: với mỗi hệ thống con, các giao diện của nó với những hệ thống con khác phải được thiết kế và tư liệu hoá.

–Thiết kế thành phần: các dịch vụ cung cấp cho các thành phần khác và các giao diện tương tác với chúng phải được thiết kế.

–Thiết kế cấu trúc dữ liệu: cấu trúc dữ liệu được sử dụng để cài đặt hệ thống phải được thiết kế một cách chi tiết và cụ thể.

–Thiết kế thuật toán: Các thuật toán được sử dụng để cung cấp các dịch vụ phải được thiết kế chi tiết và chính xác.

+ Các phương pháp thiết kế

.Hướng chức năng

.Hướng đối tượng

*Mã hóa và gỡ rối:

–Mã hóa: cài đặt các thiết kế bằng ngôn ngữ lập trình không đơn thuần chỉ là lập trình

.Viết tài liệu

.Chuẩn lập trình

.Lập trình theo cấp

.Công cụ

.Quản lý phiên bản

–  Gỡ rối: phát hiện các lỗi trong quá trình lập trình

–  Sản phẩm: chương trình

*Kiểm thử:

+ Kiểm thử - Đánh giá phần mềm hay còn gọi là thẩm tra và đánh giá (V&V - Verification and validation)                được sử dụng để chỉ ra rằng hệ thống đã thực hiện theo đúng các đặc tả và thoả mãn mọi yêu cầu của khách hàng.

+ Kiểm thử bao gồm các công đoạn: kiểm tra, xem xét lại, và kiểm thử hệ thống. Kiểm thử hệ thống tức là cho hệ thống thực hiện trên những trường hợp có dữ liệu thật được lấy từ tài         liệu đặc tả hệ thống. Quy trình kiểm thử gồm các pha sau:

–Khi chuyển giao hệ thống cho khách hàng thì quy trình   kiểm  thử  beta  sẽ  được  thực  hiện.  Khách hàng sẽ thông báo các lỗi cho đội dự án. Những lỗi này sẽ được chỉnh sửa và tiếp tục kiểm thử beta hoặc chuyển giao thực sự cho khách hàng.

–Các công việc cần làm trong quá trình kiểm thử

. Phát hiện lỗi trong chương trình

. Lập kế hoạch thực hiện kiểm thử

–  Tạo các trường hợp kiểm thử

–  Tiêu chuẩn kiểm thử

–  Nguồn tài nguyên kiểm thử

• Mã nguồn được kiểm thử theo tài liệu thiết kế

• Sản phẩm: báo cáo kiểm thử

+ Các phương pháp kiểm thử

–  Kiểm thử tĩnh

–  Kiểm thử động

. Kiểm thử hộp đen

. Kiểm thử hộp trắng

*Bảo trì hệ thống

+ Bảo trì hệ thống:

–  Bảo đảm chương trình vận hành tốt

–  Cài đặt các thay đổi

–  Cài đặt các yêu cầu mới

–  Xử lý các lỗi khi vận hành

–  Sản phẩm: chương trình

Cải tiến phần mềm

+ Cải tiến phần mềm

–Khi các yêu cầu hệ thống thay đổi theo sự thay đổi của các yêu cầu nghiệp vụ thì phần mềm phải cải tiến và thay đổi để hỗ trợ khách hàng. Thông thường chi phí để bảo trì và cải tiến thường đắt

hơn nhiều so với chi phí xây dựng phần mềm.

Xác định yêu cầu hệ thống->Đánh giá hệ thống hiện tại->Đề xuất các thay đổi hệ thống->Chỉnh sửa hệ thống->Hệ thống mới

Bạn đang đọc truyện trên: Truyen2U.Pro