1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng công nghệ phần mềm nâng cao những khó khăn của kỹ nghệ phần mềm Phạm Ngọc Hùng

32 246 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 239,07 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

[Webster’s Dict.] Điểm ngoặt trong tiến trình của bất kỳ cái gì; thời điểm, giai đoạn hoặc biến cố quyết định hay chủ chốt Điểm ngoặt trong quá trình diễn biến bệnh khi trở nên rõ ràng

Trang 1

Những khó khăn của Kỹ Nghệ Phần mềm

Công Nghệ Phần Mềm Nâng Cao

Trang 3

Tài liệu tham khảo

„ Bài giảng trên lớp

Trang 4

Một số dự án thất bại

„ AAS (FAA Advanced Automation System) (1989)

… IBM phát triển (2.3 triệu dòng lệnh bằng Ada)

… 1994: xây dựng lại từ đầu (vì đặc tả yêu cầu k đúng)

„ FBI CIC

„ IRS Modernization Program

„ C-17: 20M, cuối 80s ->85 (lần thử đầu tiên 7/1990)

… Gặp nhiều vđề khó về kỹ thuật, quá thời gian và kinh phí

„ Ariane 5 (June 04, 1996) nổ sau khi phóng (40s)

… Do lỗi PM điều khiển (chuyển 1 số thực 64bit -> số nguyên 16bit)

„ Head of AF Systems Command: ‘‘PM là nhược điểm của việc phát triển vũ khí “

Trang 5

Những con số biết nói

„ Việc phát triển các ứng dụng > 5000 function points

(~500,000 LOC) là một trong những nhiệm vụ rủi ro

nhấttrong thế giới hiện đại (Capers Jones)

„ Những rủi ro dẫn đến hủi hoặc đình trệ tăng nhanh cùng với việc tăng của kích thước các ứng dụng (Capers

Jones):

… 65% các HT lớn (>1,000,000 LOC) bị hủi trước khi hoàn thành

… 50% các HT ước lượng sai kích thước > 1/2 million LOC

… 25 % các dự án > 100,000 LOC

„ Tỷ lệ thất bại (Failure or cancellation) của các dự án lớn

là >20% (Capers Jones)

Trang 6

Ví dụ về kích thước dự án

Trang 7

Những con số biết nói (cont.)

Group cho biết khoảng 30% bị hủi trước

khi hoàn thành

năm tiến hành và tiêu tốn 200% kinh phí

dự kiến (Capers Jones).

kinh phí PM của Mỹ ($14 billion in 1993

dollars) (Capers Jones).

Trang 8

Thống kê của Standish Group (2006)

„ Có tới 50% trong số các dự án phần mềm thất bại

„ Chỉ có 16.2% dự án là hoàn thành đúng hạn và nằm

trong giới hạn ngân sách, đáp ứng tất cả tính năng và đặc tính như cam kết ban đầu

„ Có 52.7% dự án được hoàn thành và đi vào hoạt

động nhưng không hoàn thành đúng hạn và bội chi,

thêm nữa không đáp ứng đầy đủ tính năng và đặc

tính như thiết kế ban đầu

„ Và có 31.1% dự án thất bại trước khi được hoàn

thành

„ -> hơn 83.8% dự án thất bại hoặc không đáp ứng

những yêu cầu ban đầu

Trang 9

Những con số biết nói (cont.)

„ 2/3 dự án được hoàn thành vượt quá thời gian

và kinh phí dự kiến (Capers Jones) [bad

estimates?]

„ 2/3 dự án được hoàn thành là có độ tin cậy vàchất lượng thấp trong một năm đầu triển khai

(Jones)

„ Tỷ lệ xảy ra lỗi của PM từ 0.5 đến 3.0 /1000

LOC (Bell Labs survey)

„ Civilian software: tối thiểu 100 từ tiếng Anh

được sinh ra cho mọi câu lệnh

… Military: ~ 400 từ (Capers Jones)

Trang 11

„ Khủng hoảng là gì ? [Webster’s Dict.]

… Điểm ngoặt trong tiến trình của bất kỳ cái gì; thời

điểm, giai đoạn hoặc biến cố quyết định hay chủ chốt

… Điểm ngoặt trong quá trình diễn biến bệnh khi trở nên

rõ ràng bệnh nhân sẽ sống hay chết

„ Trong phần mềm: Day dứt kinh niên (chronic

affliation, by Prof Tiechrow, Geneva, Arp 1989)

Trang 12

Tại sao tồn tại khủng hoảng PM?

„ Là sự day dứt kinh niên (kéo dài theo thời gianhoặc thường tái diễn, liên tục không kết thúc)

gặp phải trong phát triển phần mềm máy tính, như:

… Phải làm thế nào với việc giảm chất lượng vì những lỗi tiềm tàng có trong phần mềm ?

… Phải xử lý ra sao khi bảo dưỡng phần mềm đã có ?

… Phải giải quyết thế nào khi thiếu kỹ thuật viên phần mềm?

… Phải chế tác phần mềm ra sao khi có yêu cầu phát

triển theo qui cách mới xuất hiện ?

Trang 13

Một số yếu tố ảnh hưởng đến khủng hoảng

„ Phần mềm càng lớn sẽ kéo theo phức tạp hóa

và tăng chi phí phát triển

„ Đổi vai trò giá thành SW vs HW

„ Công sức cho bảo trì càng tăng thì chi phí choBacklog càng lớn

„ Nhân lực chưa đáp ứng được nhu cầu phần

mềm

„ Những phiền hà của phần mềm gây ra những

vấn đề xã hội

„ … (?)

Trang 14

Những dự án lớn của NASA

(National Aeronautics and Space Administration)

Trang 15

+ 2000

+ 1985

Phần cứng

Phát triển

Bảo trì

Phần mềm

Trang 16

Chi phí cho các pha

Trang 17

Chi phí cho các pha (cont.)

Trang 18

Chi phí cho các pha (cont.)

Trang 19

Backlog tại Nhật Bản năm 1985

Trang 20

Chi phí cho các pha

Trang 21

Software Evolution (Maintenance)

…PM tiếp tục thay đổi với tốc độ nhanh

…PM sẽ trở nên không có cấu trúc như việc nó

Trang 22

Liệu đã có những cải thiện?

Trang 24

Những khó khăn trong phát triển PM

(1) Không có phương pháp mô tả rõ ràng định

nghĩa yêu cầu của người dùng (khách hàng), sau khi bàn giao sản phẩm dễ phát sinh nhữngtrục trặc (troubles)

(2) Với những phần mềm quy mô lớn, tư liệu đặc

tả đã cố định thời gian dài, do vậy khó đáp

ứng nhu cầu thay đổi của người dùng một

cách kịp thời trong thời gian đó

Trang 25

Những khó khăn trong phát triển PM

(cont.)

(3) Nếu không có Phương pháp luận thiết kế nhất

quán mà thiết kế theo cách riêng (của công ty, nhóm), thì sẽ dẫn đến suy giảm chất lượng

phần mềm (do phụ thuộc quá nhiều vào con người)

(4) Nếu không có chuẩn về làm tư liệu quy trình

sản xuất phần mềm, thì những đặc tả không rõràng sẽ làm giảm chất lượng phần mềm

Trang 26

Những khó khăn trong phát triển PM

(cont.)

(5) Nếu không kiểm thử tính đúng đắn của phần mềm

ở từng giai đoạn mà chỉ kiểm ở giai đoạn cuối và phát hiện ra lỗi, thì thường bàn giao sản phẩm

không đúng hạn

(6) Nếu coi trọng việc lập trình hơn khâu thiết kế thì

thường dẫn đến làm giảm chất lượng phần mềm (7) Nếu coi thường việc tái sử dụng phần mềm

(software reuse), thì năng suất lao động sẽ giảm

Trang 27

Những khó khăn trong phát triển PM

(cont.)

(8) Phần lớn trong quy trình phát triển phần mềm có

nhiều thao tác do con người thực hiện, do vậy

năng suất lao động thường bị giảm

(9) Không chứng minh được tính đúng đắn của phần

mềm, do vậy độ tin cậy của phần mềm sẽ giảm (10) Chuẩn về một phần mềm tốt không thể đo được

một cách định lượng, do vậy không thể đánh giá được một hệ thống đúng đắn hay không

Trang 28

Những khó khăn trong phát triển PM

(cont.)

(11) Khi đầu tư nhân lực lớn vào bảo trì sẽ

làm giảm hiệu suất lao động của nhân viên

(12) Công việc bảo trì kéo dài làm giảm

chất lượng của tư liệu và ảnh hưởng xấu đến những việc khác

Trang 29

Những khó khăn trong phát triển PM

(cont.)

(13) Quản lý dự án lỏng lẻo kéo theo quản lý

lịch trình cũng không rõ ràng(14) Không có tiêu chuẩn để ước lượng nhân lực

và dự toán sẽ làm kéo dài thời hạn và vượt

kinh phí của dự án

Đây là những vấn đề phản ánh các khía cạnh

khủng hoảng phần mềm, hãy tìm cách nỗ lực vượtqua để tạo ra phần mềm tốt!

Trang 30

…Là động lực cho việc cải tiến qui trình phát

triển PM

Trang 32

Cách viết tài liệu mô tả bài toán (Proposal)

„ Thông tin nhóm: Danh sách thành viên, nhóm trưởng

„ Tên sản phẩm

„ Mô tả các chức năng mong muốn của sản phẩm

… Khái quát

… Chi tiết từng chức năng

… Yêu cầu về giao diện

„ Yêu cầu phi chức năng

… Môi trường phát triển

… Môi trường triển khai

… Chất lượng

Ngày đăng: 02/01/2016, 08:56

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm