Tải bản đầy đủ (.ppt) (277 trang)

Slide CÔNG NGHỆ PHẦN mềm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.13 MB, 277 trang )

CÔNG NGHỆ PHẦN MỀM
Chương 1: Giới thiệu về Công nghệ phần mềm
2

Nội dung
1.1. Một số khái niệm
1.1.1. Khủng hoảng phần mềm
1.1.2. Định nghĩa
1.1.3. Chu trình (process), phương pháp (method), công cụ
(tool)
1.1.4. Một cách nhìn tổng quan về công nghệ phần mềm
1.1.5. Mô hình CMM
1.2. Các mô hình phát triển phần mềm
1.2.1. Mô hình tuần tự tuyến tính
1.2.2. Mô hình prototype
1.2.3. Mô hình xoắn ốc
1.2.4. Mô hình tăng dần
1.2.3. Mô hình RAD
3

KHỦNG HOẢNG PHẦN MỀM

Phần mềm được viết ngay từ khi xuất hiện các hệ máy tính và
ngôn ngữ lập trình đầu tiên

Trên thực tế sản xuất phần mềm không đáp ứng kịp yêu cầu
của người sử dụng
4

KHỦNG HOẢNG PHẦN MỀM (t.t)


Các dữ liệu quan sát được

Cứ 6 đề án triển khai thì có 2 bị huỷ bỏ

Trung bình thời gian thực hiện thực tế bị kéo dài 50 % (cá
biệt 200-300%)

Các đề án lớn dễ thất bại

3/4 các hệ thống lớn có lỗi khi thực thi

Quá trình phân tích yêu cầu (5 % công sức): để lại 55 % lỗi,
có 18 % phát hiện được

Quá trình thiết kế (25 % công sức): để lại 30 % lỗi, có 10 %
phát hiện được

Quá trình mã hoá, kiểm tra và bảo trì: để lại 15 % lỗi, có 72
% phát hiện được
5

KHỦNG HOẢNG PHẦN MỀM (t.t)

Nguyên nhân

Phát triển phần mềm giống như một nghệ thuật, chưa được
xem như một ngành khoa học

Quá trình phát triển phần mềm chưa được thống nhất


Phải viết lại s/w mỗi khi có sự thay đổi về ngôn ngữ, h/w
hoặc o/s

Chưa đạt được 1 chuẩn cho việc đo lường hiệu suất và sản
phẩm

Độ phức tạp của phần mềm quá cao đối với 1 "kiến trúc sư"

Kỹ thuật đặc tả để lại sự nhập nhằng trong các yêu cầu
phần mềm

Làm việc nhóm không đúng kỷ luật gây ra các lỗi
6

KHỦNG HOẢNG PHẦN MỀM (t.t)

Hướng tới công nghệ sản xuất phần mềm chuyên nghiệp
7

ĐỊNH NGHĨA
Định nghĩa cổ điển (của Fritz Bauer)

Công Nghệ Phần Mềm là sự thiết lập và sử dụng các nguyên
tắc khoa học nhằm mục đích tạo ra các phần mềm một cách
kinh tế mà các phần mềm đó hoạt động hiệu quả và tin cậy trên
các máy tính.
8

ĐỊNH NGHĨA (tt)
Định nghĩa khác: Công Nghệ Phần Mềm


Là các quy trình đúng kỷ luật và có định lượng được áp dụng
cho sự phát triển, thực thi và bảo trì các hệ thống thiên về phần
mềm

Tập trung vào quy trình, sự đo lường, sản phẩm, tính đúng thời
gian và chất lượng
9

CHU TRÌNH

Chu trình (process) định nghĩa một bộ khung các tiêu chuẩn
phải được thiết lập để triển khai công nghệ phần mềm.
10

PHƯƠNG PHÁP

Phương pháp (method) chỉ ra cách thực hiện những công việc
cụ thể ("how to"):

phân tích yêu cầu

thiết kế

xây dựng chương trình

kiểm tra

sửa lỗi
11


CÔNG CỤ

Công cụ (tool) cung cấp các hỗ trợ tự động hay bán tự động
đối với chu trình và phương pháp

Các công cụ được tích hợp tạo thành CASE (Computer Aided
Software Engineering)
12

MỘT CÁCH NHÌN TỔNG QUAN VỀ CNPM

Gồm 3 giai đoạn lớn

Giai đoạn định nghĩa: Phân tích hệ thống (system engineering),
Hoạch định đề tài (software project management), Phân tích
yêu cầu (requirement analysis).

Giai đoạn phát triển: Thiết kế phần mềm (software design), sinh
mã (code generation), kiểm tra phần mềm (software testing)

Giai đoạn bảo trì: Sửa lỗi (correction), thay đổi môi trường thực
thi (adaptation), tăng cường (enhancement)
13

MÔ HÌNH CMM
14

CÁC MÔ HÌNH PHÁT TRIỂN PHẦN MỀM


Mô hình tuần tự tuyến tính: cổ điển

Mô hình prototyping: prototype

Mô hình xoắn ốc: đánh giá rủi ro

Mô hình tăng dần: các bước lặp

Mô hình RAD: thời gian phát triển ngắn
15

MÔ HÌNH TUẦN TỰ TUYẾN TÍNH

Mô hình phát triển phần mềm đầu tiên

Các công việc tiếp nối nhau một cách tuần tự

Đặt nền móng cho các phương pháp phân tích, thiết kế, kiểm
tra…
16

MÔ HÌNH TUẦN TỰ TUYẾN TÍNH (tt)

Bộc lộ một số khuyết điểm

Bản chất của phát triển phần mềm là quá trình lặp đi lặp lại
chứ không phải tuần tự

Bắt buộc khách hàng đặc tả tất cả yêu cầu một cách chính
xác và đầy đủ ngay từ ban đầu


Khách hàng thường phải chờ đợi rất lâu để thấy được phiên
bản đầu tiên của sản phẩm

Tồn tại "delay" trong nhóm làm việc
17

MÔ HÌNH PROTOTYPING

Prototype như là một cơ chế để
nhận diện chính xác yêu cầu của
khách hàng

Prototype có thể bị "throw-away"

Một số khuyết điểm

Khách hàng hối thúc nhà
phát triển hoàn thành sản phẩm
một khi thấy được các prototype
đầu tiên

Các prototype thường không
hoạt động hiệu quả
18

MÔ HÌNH XOẮN ỐC

Được thực hiện theo một chuỗi lặp kiểu xoắn ốc, mỗi lần lặp
cải thiện sản phẩm


Có phương pháp đánh giá rủi ro

Có thể áp dụng prototype

Mỗi lần lặp được cải thiện cho thích nghi với bản chất của đề
án
19

MÔ HÌNH TĂNG DẦN
20

MÔ HÌNH TĂNG DẦN (tt)

Các bước (iteration) đầu tập trung vào yêu cầu của phần mềm
và thiết lập một kiến trúc ổn định cho hệ thống (ít phải thay đổi
sau này)

Các bước sau tập trung vào việc xây dựng sản phẩm để cuối
cùng chuyển sang giai đoạn kiểm tra hệ thống

Mỗi bước hiện thực một phần cụ thể trong toàn bộ yêu cầu của
hệ thống

Quá trình xây dựng và chiến thuật kiểm tra theo kiểu tăng dần
và dựa trên phương pháp kiểm tra hồi quy.
21

MÔ HÌNH RAD


Rapid Application Development là mô hình tuần tự tuyến tính
có thời gian phát triển rất ngắn

Sử dụng các thành phần có sẵn càng nhiều càng tốt

Sử dụng công cụ lập trình ở dạng tự động sinh mã chứ không
phải các ngôn ngữ truyền thống
CÔNG NGHỆ PHẦN MỀM
Chương 2: Phân tích yêu cầu theo phương pháp
cổ điển
23

Giới thiệu

Khách hàng và nhà phát triển gặp nhau để thảo luận về yêu
cầu của hệ thống phần mềm cần xây dựng

Nhà phát triển kiểm chứng lại (validate) yêu cầu và biểu diễn
nó bằng mô hình phân tích

Mô hình phân tích (WHAT?): các chức năng, dữ liệu input &
output, các trạng thái khác nhau
24

Nội dung
2.1. Các yếu tố căn bản của mô hình phân tích
2.2. Mô hình chức năng và dòng thông tin
2.2.1. Lược đồ dòng chảy dữ liệu với các ký hiệu cơ bản
2.2.2. Mở rộng của Ward và Mellor
2.2.3. Mở rộng của Hatley & Pirbhai

2.3. Mô hình hành vi phần mềm
2.4. Kỹ thuật phân tích yêu cầu
2.4.1. Xây dựng DFD
2.4.2. Viết PSPEC
2.5. Từ điển dữ liệu
25

CÁC YẾU TỐ CĂN BẢN CỦA MÔ HÌNH
PHÂN TÍCH

Mô hình chức năng và dòng thông tin: DFD, PSPEC

Mô hình dữ liệu: ERD, đặc tả đối tượng dữ liệu

Mô hình hành vi: STD, CSPEC

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×