NHẬP MÔN
CÔNG NGHỆ PHẦN MỀM
Giảng viên: Trương Minh Thái
[email protected]
1
Nội dung môn học
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Giới thiệu về CNPM
Các mô hình về tiến trình phần mềm
Ước lượng chi phí phần mềm
Quản lý nhân sự và tổ chức
Quản lý chất lượng
Quản lý cấu hình
Lập kế hoạch và kiểm soát dự án
cầu kỹ thuật phần mềm
4
NHẬP MÔN
CÔNG NGHỆ PHẦN MỀM
CHƯƠNG 1 – GIỚI THIỆU VỀ
CÔNG NGHỆ PHẦN MỀM
5
Nội dung
ðịnh nghĩa về CNPM
Các giai ñoạn trong phát triển phần mềm
Những người tham gia trong dự án phát triển
phần mềm
Các yếu tố chính làm thay ñổi sự phát triển phần
mềm
Thuật ngữ
Phân loại phần mềm
ðặc tính của phần mềm
6
Công nghệ phần mềm là gì?
1968/69 NATO conferences: Giới thiệu thuật ngữ
8
Khủng hoảng phần mềm những
năm 70
9
ở ñầu thế kỹ 21
10
ðịnh nghĩa về CNPM
IEEE: CNPM là
(1) Việc áp dụng phương pháp tiếp cận có hệ thống,
có kỹ luật và ñược lượng hóa trong phát triển, vận
hành và bảo trì phần mềm;
(2) Nghiên cứu các phương pháp tiếp cận ñược dùng
trong (1)
NATO: CNPM là việc thiết lập và dùng các nguyên tắc
công nghệ ñúng ñắn ñể thu ñược phần mềm một cách
kinh tế nhất và chạy hiệu quả trên các máy thật.
11
ðịnh nghĩa về CNPM
Mục tiêu của CNPM là làm sao ñể tạo ra phần mềm:
Khả năng mở rộng
Các loại tài liệu ñòi hỏi
Thời gian ñáp ứng hoặc các yêu cầu về chất lượng của
hệ thống
Nghiên cứu khả thi
Thiết kế: mô hình hóa hệ thống, module hóa hệ
thống
14
Các giai ñoạn trong phát triển
phần mềm
Cài ñặt: tập trung vào từng module riêng lẻ:
Giải thuật
Tài liệu
Coding
Kiểm thử: sự kiểm tra (verification) và sự xác
nhận tính hợp lệ (validation) của
Tài liệu ñặc tả
Thiết kế
Module
Chuyển tiếp giữa các giai ñoạn
15
Các giai ñoạn trong phát triển
phần mềm
Cài ñặt 20%
ðặc tả 10%
Xác ñịnh yêu cầu 10%
Kiểm thử 45%
18
Các giai ñoạn trong phát triển
phần mềm
Công sức của từng giai ñoạn
Hoạt ñộng bảo trì chiếm khoảng 50 – 70% toàn bộ
công sức
Các loại bảo trì: Hoàn thiện, Phòng ngừa, Hiệu chỉnh
và Thích ứng
Sự phân phối của các loại bảo trì
Hiệu chỉnh 21%
Hoàn thiện 50%
Thích ứng 25%
Phòng ngừa 4%
19
Những người tham gia trong dự
án phát triển phần mềm
Các yếu tố chính làm thay ñổi sự
phát triển phần mềm
Các yếu tố chính:
23
Các thuật ngữ
24
Phân loại phần mềm
25