Công nghệ phần mềm - Pdf 23

Trường Đại Học Bách Khoa Tp. Hồ Chí Minh
Khoa Công Nghệ Thông Tin
Môn học
CÔNG NGHỆ PHẦN MỀM
-Trang 1-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm
GIỚI THIỆU MÔN HỌC
 Đặc điểm

Mã số: 501095 Số tín chỉ: 2 Phân phối giờ: 2(2.1.4)

Môn học trước: Toán Tin Học (501302)
 Tóm tắt nội dung

Các khái niệm cơ bản của Công Nghệ Phần Mềm: các mô hình phát triển
phần mềm, phân tích yêu cầu, thiết kế, kiểm tra…

2 trường phái chính: có cấu trúc (cổ điển) & hướng đối tượng

Chuẩn UML và việc áp dụng nó trong phương pháp hướng đối tượng

Thực hành tại phòng Lab: làm quen với công cụ Rational Rose
-Trang 2-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm
GIỚI THIỆU MÔN HỌC (t.t)
 Tài liệu tham khảo

[1] Software Engineering - A practitioner’s approach, R.S.
Pressman, McGraw-Hill, 1997

[2] OMG Unified Modeling Language Specification, version 1.3,

-Trang 5-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm
Trường Đại Học Bách Khoa Tp. Hồ Chí Minh
Khoa Công Nghệ Thông Tin
Chương 1
GIỚI THIỆU VỀ
CÔNG NGHỆ PHẦN MỀM

✦✦
✦ Một số khái niệm

✦✦
✦ Các mô hình phát triển phần mềm
-Trang 6-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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
-Trang 7-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM

Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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
-Trang 10-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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
craft
production
commercialization
science
professional
engineering
-Trang 11-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM

 sửa lỗi
 ...
-Trang 15-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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)
-Trang 16-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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)
-Trang 17-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
MÔ HÌNH CMM
Initial
(Level 1)

Coding
Test Maintenance
-Trang 20-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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
MÔ HÌNH TUẦN TỰ TUYẾN TÍNH (t.t)
-Trang 21-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
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

1
2
3
Kiểm tra hệ thống
Thiết kế kiến trúc
Phát triển module
Tích hợp
4
-Trang 24-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM
MÔ HÌNH TĂNG DẦN (t.t)
 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.
-Trang 25-
Khoa Công Nghệ Thông Tin - Môn Công Nghệ Phần Mềm - Chương 1: Giới thiệu về CNPM


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status