1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Công Nghệ Phần Mềm

409 6 0

Đ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 409
Dung lượng 1,87 MB

Nội dung

3 Xác định những nguồn nào cần để thực hiện từng nhiệm vụ 4 Xác định thời gian cần sử dụng nguồn của từng nhiệm vụ 5 Xác định thời điểm bắt đầu và kết thúc của từng nhiệm vụ 6 [r]

(1)

Nhập môn

Công nghệ học Phần mềm

(Introduction to Software Engineering)

Department of Software Engineering Faculty of Information Technology

Hanoi University of Technology

(2)

Cấu trúc mơn học

• 45 tiết + Đồ án mơn học

Cần kiến thức CNTT • Cung cấp nguyên lý chung

Công nghệ học Phần mềm (CNHPM)

• Cung cấp kiến thức để học môn

chuyên ngành hẹp Phân tích thiết kế phần mềm, Xây dựng đánh giá

(3)

Cấu trúc mơn học (tiếp)

Nội dung: gồm phần với 11 chương

Giới thiệu chung CNHPM (3 buổi) Quản lý dự án PM (2b)

– Yêu cầu người dùng (1b)

Thiết kế lập trình (2b) Kiểm thử bảo trì (2b)

Chủ đề nâng cao tổng kết (1b+1b)

(4)

Tài liệu tham khảo

• R Pressman, Software Engineering: A Practioner’s

Approach 5th Ed., McGraw-Hill, 2001

• R Pressman, Kỹ nghệ phần mềm Tập 1, 2,

NXB Giáo dục, Hà Nội, 1997 (Người dịch: Ngô Trung Việt)

• I Sommerville, Software Engineering 5th Ed.,

Addison-Wesley, 1995

• K Kawamura, Nhập mơn Công nghệ học Phần

(5)

Phần I

Giới thiệu chung CNHPM

Chương 1: Bản chất phần mềm

1.1 Định nghĩa chung phần mềm

1.2 Kiến trúc phần mềm

1.3 Các khái niệm

1.4 Đặc tính chung phần mềm

1.5 Thế phần mềm tốt ?

(6)

1.1 Định nghĩa chung phần

mềm

Phần mềm (Software - SW)

khái niệm đối nghĩa với phần cứng

(Hardware - HW), nhiên, đây khái niệm tương đối

Từ xưa, SW thứ cho khơng

hoặc bán kèm theo máy (HW)

Dần dần, giá thành SW ngày cao

(7)

Các đặc tính SW HW

HW Vật “cứng” • Kim loại Vật chất Hữu hình

Sản xuất cơng nghiệp

bởi máy móc

Định lượng

SW Vật “mềm”

Kỹ thuật sử dụng Trừu tượng

• Vơ hình

Sản xuất

người

(8)

Định nghĩa 1: Phần mềm là

• Các lệnh (chương trình máy tính)

được thực cung cấp chức năng kết mong muốn

• Các cấu trúc liệu làm cho chương

trình thao tác thơng tin thích hợp

• Các tư liệu mô tả thao tác cách sử

(9)

SW đối nghĩa với HW

• Vai trò SW ngày thể trội

• Máy tính chiếc hộp khơng có SW • Ngày nay, SW quyết định chất lượng

một hệ thống máy tính (HTMT), chủ đề cốt lõi, trung tâm HTMT

(10)

Định nghĩa

Trong hệ thống máy tính, trừ bỏ các thiết bị loại phụ kiện phần cịn lại phần mềm (SW)

Nghĩa hẹp: SW dịch vụ chương trình để

tăng khả xử lý phần cứng máy tính (như hệ điều hành - OS)

Nghĩa rộng: SW tất kỹ thuật ứng

(11)

SW theo nghĩa rộng

• Khơng chỉ SW SW ứng dụng Phải gồm khả năng, kinh nghiệm thực

tiễn kỹ kỹ sư (người chế phần mềm): Know-how of Software

Engineer

• Là tất kỹ thuật làm cho sử dụng

(12)

Phần mềm ?

Nhóm Kỹ thuật, Phương pháp

luận

Nhóm

chương trình Nhóm tư liệu

(13)

Nhóm kỹ thuật, phương pháp luận

• Các khái niệm trình tự cụ thể hóa hệ

thống

• Các phương pháp tiếp cận giải vấn đề

• Các trình tự thiết kế phát triển chuẩn

hóa

• Các phương pháp đặc tả yêu cầu, thiết kế hệ

(14)

• Là phần giao diện với phần cứng, tạo thành từ

nhóm lệnh thị cho máy tính biết trình tự thao tác xử lý liệu

Phần mềm bản: với chức cung cấp môi

trường thao tác dễ dàng cho người sử dụng nhằm tăng hiệu xử lý phần cứng (ví dụ OS là chương trình hệ thống)

Phần mềm ứng dụng: dùng để xử lý nghiệp vụ

thích hợp (quản lý, kế tốn, ), phần mềm đóng gói, phần mềm người dùng,

(15)

Nhóm tư liệu

Những tư liệu hữu ích, có giá trị cao

rất cần thiết để phát triển, vận hành bảo trì phần mềm

Để chế phần mềm với độ tin cậy cao

(16)

Những yếu tố khác

Sản xuất phần mềm phụ thuộc nhiều vào

con người (kỹ sư phần mềm) Khả hệ thống hóa trừu tượng, khả lập trình, kỹ năng cơng nghệ, kinh nghiệm làm việc, tầm bao quát, : khác người

Phần mềm phụ thuộc nhiều vào ý tưởng (idea)

(17)

1.2 Kiến trúc phần mềm

1.2.1 Phần mềm nhìn từ cấu trúc phân cấp

Cấu trúc phần mềm cấu trúc phân cấp

(hierarchical structure): mức hệ thống (system), hệ thống (subsystems)

Dưới hệ thống chương trình Dưới chương trình Modules

(18)

Kiến trúc phần mềm

System

Subsystem Subsystem

Program Program

Module Module Subroutine

Master files

Temporary files

Job unit

Jobstep unit

Member unit

(19)

1.2.2 Phần mềm nhìn từ cấu trúc thủ tục

• Hai yếu tố cấu thành phần mềm

Phương diện cấu trúc Phương diện thủ tục

Cấu trúc phần mềm: biểu thị kiến trúc

chức mà phần mềm có điều kiện phân cấp chức (thiết kế cấu trúc)

Thiết kế chức năng: theo chiều đứng (càng sâu

(20)

Cấu trúc phần mềm

Fuction A

Function B Function C

Function D Function E Function F

Cấu trúc chiều ngang

(21)

Thủ tục (procedure) phần mềm

• Là quan hệ trình tự mà phần

mềm có

Thuật tốn với phép lặp, rẽ nhánh, điều

khiển luồng xử lý (quay lui hay bỏ qua)

• Là cấu trúc lơgic biểu thị chức có

trong phần mềm trình tự thực chúng

(22)

1.3 Các khái niệm

• Khi chế tác phần mềm cần nhiều kỹ thuật

Phương pháp luận (Methodology): chuẩn

mực để chế tạo phần mềm với tiêu định tính

– Các phương pháp kỹ thuật (Techniques):

trình tự cụ thể để chế tạo phần mềm cách tiếp cận khoa học mang tính định lượng

(23)

Các khái niệm

(Software concepts)

• Khái niệm tính mơđun (modularity

concept)

• Khái niệm chi tiết hóa dần bước

(stepwise refinement concept)

• Khái niệm trừu tượng hóa (abstraction

concept): về thủ tục, điều khiển, liệu

• Khái niệm che giấu thơng tin (information

hiding concept)

(24)

Từ phương pháp luận phần mềm sang kỹ thuật phần mềm

Tính Mơđun Chi tiết hóa dần

Trừu tượng hóa (Che giấu t.tin)

Phân tích cấu trúc Thiết kế cấu trúc Lập trình cấu trúc Dữ liệu trừu tượng

(25)

1.3.1 Tính mơđun (Modularity)

• Là khả phân chia phần mềm thành

môđun ứng với chức năng, đồng thời cho phép quản lý tổng thể: khái niệm phân chia trộn (partion and merge)

• Hai phương pháp phân chia mơđun theo chiều

– sâu (depth, thẳng đứng): điều khiển phức tạp dần rộng (width, nằm ngang): môđun phụ thuộc dần

• Quan hệ môđun: qua đối số

(26)

Chuẩn phân chia mơđun

Tính độc lập

dần

Điều khiển

SW Phân chia chiều rộng

Ph â n c hi a ch iều sâu

Cấu trúc rộng chiều ngang

(27)

1.3.2 Chi tiết hóa bước

Cách tiếp cận từ xuống (top-down approach) Chi tiết hóa bước Thế giới bên

Đặc tả yêu cầu

Trừu tượng hóa mức cao: Thế giới bên ngồi,

trạng thái chưa rõ ràng

(28)

dụ: Trình tự giải vấn đề từ mức thiết kế chương trình đến mức lập trình

• Bài tốn: từ nhóm N số khác

tăng dần, tìm số có giá trị K

(nhập từ vào) in vị trí

Giải bước từ khái niệm đến chi tiết

hóa từng câu lệnh ngơn ngữ lập trình nào đó

Chọn giải thuật tìm kiếm nhị phân (pp

(29)

Cụ thể hóa thủ tục qua chức năng

Bài toán cho Nhập giá trị K

Nhận giá trị nhóm N số

(30)

Cụ thể hóa bước

Tìm kiếm giá trị (pp nhị phân)

Xác lập phạm vi mảng số

Lặp lại xử lý tìm kiếm giá trị K phạm vi tìm kiếm

Tìm vị trí phân đôi mảng So sánh K với giá trị

Lặp lại tìm kiếm K

(31)

Mức mơ tả chương trình (bằng PDL)

Bắt đầu Đọc K

Nhận giá trị cho mảng chiều A(I), (I =1, 2, ,.N) MIN =

MAX = N

DO WHILE (Có giá trị K khơng, MIN > MAX) Lấy MID = (MIN + MAX) /

IF A(MID) > K THEN MAX = MID - ELSE

IF A(MID) < K THEN MIN = MID + ELSE

In giá trị MID ENDIF

(32)

1.3.3 Khái niệm Che giấu thơng tin

Để phân rã phần mềm thành môđun

một cách tốt nhất, cần tuân theo nguyên lý che giấu thông tin: “các môđun nên được đặc trưng định thiết kế cho mơđun ẩn kín đối với mơđun khác” [Parnas1972]

(33)

Khái niệm Trừu tượng hóa

• Abstraction cho phép tập trung vấn đề mức tổng

quát, gạt chi tiết mức thấp liên quan

• mức trừu tượng

Trừu tượng thủ tục: dãy thị với chức

đặc thù giới hạn

Trừu tượng liệu: tập hợp liệu mô tả đối

tượng liệu

Trừu tượng điều khiển: Cơ chế điều khiển chương

(34)

1.4 Đặc tính chung phần mềm

• Là hàng hóa vơ hình, khơng nhìn thấy

Chất lượng phần mềm: khơng mịn mà có

xu hướng tốt lên sau lần có lỗi (error/bug) được phát sửa

Phần mềm vốn chứa lỗi tiềm tàng, theo quy

mô lớn khả chứa lỗi cao

Lỗi phần mềm dễ phát người

(35)

Đặc tính chung phần mềm (tiếp)

Chức phần mềm thường biến hóa,

thay đổi theo thời gian (theo nơi sử dụng)

Hiệu ứng sóng thay đổi phần mềm Phần mềm vốn chứa ý tưởng sáng tạo

tác giả/nhóm làm

Cần khả “tư nhị phân” xây

dựng, phát triển phần mềm

(36)

1.5 Thế phần mềm tốt ?

Hiệu suất xử lý

Các tiêu Tính dễ hiểu

Yếu tố khái niệm phần mềm

tốt

(37)

1.5.1 Các chỉ tiêu

Phản ánh yêu cầu người dùng (tính

hiệu - effectiveness)

Chứa lỗi tiềm tàng

• Giá thành không vượt giá ước lượng

ban đầu

Dễ vận hành, sử dụng

(38)

1.5.2 Hiệu suất xử lý cao

Hiệu suất thời gian tốt (efficiency):

Độ phức tạp tính tốn thấp (Time

complexity)

Thời gian quay vòng ngắn (Turn Around

Time: TAT)

Thời gian hồi đáp nhanh (Response time)

(39)

1.5.3 Tính dễ hiểu

Kiến trúc cấu trúc thiết kế dễ hiểu Dễ kiểm tra, kiểm thử, kiểm chứng Dễ bảo trì

• Có tài liệu (mơ tả u cầu, điều kiện

(40)

1.6 Các ứng dụng phần mềm

Phần mềm hệ thống (System SW)

Phần mềm thời gian thực (Real-time SW) Phần mềm nghiệp vụ (Business SW)

Phần mềm tính tốn KH&KT (Eng.&Scie SW) Phần mềm nhúng (Embedded SW)

Phần mềm máy cá nhân (Personal computer SW) Phần mềm Web (Web-based SW)

(41)

Chương 2:

Khủng hoảng phần mềm (Software Crisis)

2.1 Khủng hoảng phần mềm ?

2.2 Những vấn đề (khó khăn)

(42)

2.1 Khủng hoảng phần mềm gì?

• 10/1968 Hội nghị NATO chuyên gia phần mềm đã đưa thuật ngữ “Khủng hoảng phần mềm” (Software crisis) Qua hàng chục năm, thuật ngữ dùng và ngày mang tính cấp bách

Khủng hoảng ? [Webster’s Dict.]

Điểm ngoặt tiến trình gì; thời điểm, giai đoạn biến cố định hay chủ chốt

Điểm ngoặt trình diễn biến bệnh trở nên rõ ràng bệnh nhân sống hay chết

(43)

Khủng hoảng phần mềm gì? (tiếp)

sự day dứt kinh niên (kéo dài theo thời gian

thường tái diễn, liên tục không kết thúc) gặp phải phát triển phần mềm máy tính,

Phải làm với việc giảm chất lượng lỗi

tiềm tàng có phần mềm ?

Phải xử lý bảo dưỡng phần mềm có ? Phải giải thiếu kỹ thuật viên phần

mềm?

Phải chế tác phần mềm có yêu cầu phát triển

theo qui cách xuất ?

(44)

Một số yếu tố

Phần mềm lớn 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ì tăng chi phí cho

Backlog lớn

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

mềm

Những phiền hà phần mềm gây

(45)

Những dự án lớn NASA

(National Aeronautics and Space Administration) Tên dự n

Thời ®iĨm ph¸ t triĨn

Tỉng sè b- í c (triƯu)

GEMINI Gi÷a 1960 6

APPOLO

(1 Bill $) Đ ầu 1970 13

SPACE

(46)

So sánh chi phí cho

Phần cứng Phần mềm % 100 80 60 40 20 - - -

- Phần cứng

Phát triển

Bảo trì

(47)

So sánh chi phí cho pha

3 3

5 7

8 7

67

X c định yê u cầu 3% Đ ặc tả 3%

ThiÕt kÕ 5% LËp tr×nh 7%

(48)

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

15.5

24.7 18.4

9.4

D- í i th¸ ng 15.5%

6 thá ng đến nă m 24.7%

Từ đến nă m 32.5%

Từ đến nă m 18.4%

(49)

Những vấn đề (khó khăn) trong

sản xuất phần mềm

(1) Khơng có phương pháp mơ tả rõ ràng định nghĩa yêu cầu người dùng (khách hàng), sau bàn giao sản phẩm dễ phát sinh

những trục trặc (troubles)

(50)

Những vấn đề sản xuất phần mềm (tiếp)

(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), dẫn đến suy giảm chất lượng phần mềm (do phụ thuộc nhiều vào người)

(51)

Những vấn đề sản xuất phần mềm (tiếp)

(5) Nếu khơng kiểm thử tính đắn phần mềm giai đoạn mà kiểm giai đoạn cuối phát lỗi, thường bàn giao sản phẩm khơng hạn

(6) Nếu coi trọng việc lập trình khâu thiết kế 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

(52)

Những vấn đề sản xuất phần mềm (tiếp)

(8) Phần lớn quy trình phát triển phần mềm có nhiều thao tác người thực hiện, vậy suất lao động thường bị giảm

(9) Không chứng minh tính đắn

phần mềm, độ tin cậy phần mềm giảm

(53)

Những vấn đề sản xuất phần mềm (tiếp)

(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 nhân viên

(54)

Những vấn đề sản xuất phần mềm (tiếp)

(13) Quản lý dự án lỏng lẻo kéo theo quản lý lịch trình khơng rõ ràng

(14) Khơng có tiêu chuẩn để ước lượng nhân lực dự toán làm kéo dài thời hạn vượt kinh phí dự án

(55)

Chương

Công nghệ học Phần mềm

(Software Engineering)

3.1 Lịch sử tiến triển Công nghệ học phần mềm

3.2 Sự tiến triển phương pháp thiết kế

phần mềm

3.3 Định nghĩa Công nghệ học phần mềm

3.4 Vòng đời phần mềm

(56)

3.1 Lịch sử tiến triển CNHPM

Nửa đầu 1960: quan tâm đến phần

mềm, chủ yếu tập trung nâng cao tính năng độ tin cậy phần cứng

Giữa năm 1960: Phát triển hệ

điều hành phần mềm lớn (IBM

(57)

Lịch sử tiến triển CNHPM (tiếp)

Năm 1968: Tại Tây Đức, Hội nghị khoa học

của NATO đưa từ “Software

Engineering” Bắt đầu bàn luận khủng khoảng phần mềm xu hướng hình thành CNHPM chuyên mơn riêng

Nửa cuối 1960: IBM đưa sách phân

biệt giá phần cứng phần mềm Từ đó, ý thức phần mềm ngày cao Bắt

(58)

Lịch sử tiến triển CNHPM (tiếp)

Nửa đầu năm 1970: Nhằm nâng cao

chất lượng phần mềm, khơng có nghiên cứu lập trình, kiểm thử, mà có

nghiên cứu đảm bảo tính tin cậy quy

trình sản xuất phần mềm Kỹ thuật: lập trình cấu trúc hóa, lập trình mơđun, thiết kế cấu trúc hóa, vv

Giữa năm 1970: Hội nghị quốc tế đầu

(59)

Lịch sử tiến triển CNHPM (tiếp)

Nửa sau năm 1970: Quan tâm đến

pha quy trình phát triển phần mềm,

nhưng tập trung pha đầu ICSE tổ chức lần 2, vào 1976, 1978 1979

Nhật Bản có “Kế hoạch phát triển kỹ thuật sản xuất

phần mềm” từ năm 1981

Cuộc “cách tân sản xuất phần mềm” bắt đầu

(60)

Lịch sử tiến triển CNHPM (tiếp)

Nửa đầu năm 1980: Trình độ học vấn

và ứng dụng CNHPM nâng cao, công nghệ chuyển vào thực tế Xuất sản phẩm phần mềm công cụ khác làm tăng suất sản xuất phần mềm đáng kể

– ICSE tổ chức lần năm 1981 1982 với

1000 người tham dự năm

Nhật Bản sang “Kế hoạch phát triển kỹ thuật

(61)

Lịch sử tiến triển CNHPM (tiếp)

Nửa cuối năm 1980 đến nay: Từ học

vấn sang nghiệp vụ! Chất lượng phần mềm tập trung chủ yếu tính suất, độ tin cậy

tính bảo trì Nghiên cứa hỗ trợ tự động hóa sản

xuất phần mềm

Nhật Bản có “Kế hoạch hệ thống cơng nghiệp hóa

sản xuất phần mềm”(SIGMA: Software

Industrialized Generator & Maintenance Aids, 1985-1990)

(62)

Hiện

• Cơng nghiệp hóa sản xuất phần mềm

cách đưa kỹ thuật công nghệ học

(Engineering techniques) thành sở khoa học của CNHPM

Thể chế hóa lý luận sản xuất phần mềm

và ứng dụng phương pháp luận cách quán

(63)

3.2 Sự tiến triển phương

pháp thiết kế phần mềm

Phương pháp luận CNHPM: bắt

đầu từ năm 1970

• Trong phát triển phần mềm: nâng cao

năng suất, độ tin cậy, giá thành - tính năng (productivity, reliability,

cost-performance)

Tiến triển phương pháp thiết kế: Sơ

(64)

Sơ khởi: nửa đầu 1970

• Khái niệm tính mơđun, cụ thể hóa

từng bước phương pháp luận thiết kế

• N Wirth: Chi tiết hóa giai đoạn

(65)

Trưởng thành: nửa cuối 1970

Phương pháp luận quy trình thiết kế phần

mềm với phương pháp phân chia môđun thiết kế môđun

• L.L Constantine, 1974: Thiết kế cấu trúc hóa

(phân chia mơđun);

• E.W Dijkstra, 1972: Lập trình cấu trúc hóa

(trong môđun) Phương pháp M.A Jackson (1975) J.D Warnier (1974)

(66)

Phát triển: nửa đầu 1980

Triển khai cơng cụ hỗ trợ phát triển phần

mềm dựa phương pháp kỹ thuật đưa năm 1970

Bộ khởi tạo chương trình (program

generators: pre-compiler; graphics-input editors, etc.)

• Ngơn ngữ đối thoại đơn giản (4GL, DB SQL)

(67)

Biến đổi: nửa cuối 1980 đến Đưa mơi trường phát triển phần

mềm Triển khai kết hợp CNHPM và CNH Tri thức (Knowledge Engineering)

Triển khai mơi trường bậc cao phát

(68)

Hình thái sản xuất Phần mềm

Đưa kỹ thuật, phương pháp luận ứng dụng thực tế vào quy trình

Cải biên, biến đổi vào sản phẩm cơng cụ phần mềm (máy tính hóa phần)

Tổng hợp, hệ thống hóa cho loại công cụ

(69)

3.3 Định nghĩa Cơng nghệ học phần mềm

• Bauer [1969]: CNHPM việc thiết lập sử dụng nguyên tắc công nghệ học đắn dùng để thu phần mềm cách kinh tế vừa tin cậy vừa làm việc hiệu máy thực

• Parnas [1987]: CNHPM việc xây dựng phần mềm nhiều phiên nhiều người

• Ghezzi [1991]: CNHPM lĩnh vực khoa học máy tính, liên quan đến xây dựng hệ

(70)

Định nghĩa CNHPM (tiếp)

• IEEE [1993]: CNHPM

(1) việc áp dụng phương pháp tiếp cận có hệ thống, lượng hóa

phát triển, vận hành bảo trì phần mềm; (2) nghiên cứu phương pháp tiếp cận

được dùng (1)

(71)

Định nghĩa CNHPM (tiếp)

• Sommerville [1995]: CNHPM lĩnh vực liên quan đến lý thuyết, phương pháp công cụ dùng cho phát triển phần mềm

• K Kawamura [1995]: CNHPM lĩnh vực học vấn kỹ thuật, phương pháp luận công

(72)

Định nghĩa CNHPM (tiếp)

Công nghệ học phần mềm lĩnh vực khoa học phương pháp luận, kỹ thuật

cơng cụ tích hợp quy trình sản xuất vận hành phần mềm nhằm tạo phần mềm với chất lượng mong muốn [Software Engineering is a scientìic field to deal with

methodologies, techniques and tools integrated in software production-maintenance process to

(73)

Công nghệ học CNHPM ? (1) Như ngành công nghệ học khác, CNHPM

cũng lấy phương pháp khoa học làm sở

(2) Các kỹ thuật thiết kế, chế tạo, kiểm thử bảo trì phần mềm hệ thống hóa hóa thành

phương pháp luận hình thành nên CNHPM (3) Tồn quy trình quản lý phát triển phần mềm

(74)

Công nghệ học CNHPM ? (tiếp)

(4) Trong vịng đời phần mềm khơng có chế tạo mà bao gồm thiết kế, vận hành bảo dưỡng (tính quan trọng thiết kế bảo dưỡng)

(5) Trong khái niệm phần mềm, khơng có chương trình mà tư liệu phần mềm

(75)

3.4 Vòng đời phần mềm (Software life-cycle)

• Vịng đời phần mềm thời kỳ tính từ

phần mềm sinh (tạo) chết đi (từ lúc hình thành đáp ứng yêu cầu, vận

hành, bảo dưỡng loại bỏ không đâu dùng)

• Quy trình phần mềm (vịng đời phần mềm)

(76)

Mơ hình vịng đời phần mềm Boehm

Xác định yêu cầu hệ thống

Kiểm chứng

Xác định yêu cầu phần mềm

Kiểm chứng

Thiết kế Kiểm chứng

Thiết kế chi tiết Kiểm chứng

Lập trình Gỡ lỗi

(77)

Suy nghĩ vòng đời phần mềm

(1) Pha xác định u cầu thiết kế có vai trị quyết định đến chất lượng phần mềm, chiếm phần lớn cơng sức so với lập trình, kiểm thử và chuyển giao phần mềm

(2) Pha cụ thể hóa cấu trúc phần mềm phụ thuộc nhiều vào suy nghĩ xuống (top-down) trừu tượng hóa, chi tiết hóa

(78)

Suy nghĩ vòng đời phần mềm

(4) Trước chuyển sang pha phải đảm bảo pha kiểm thử khơng cịn lỗi

(5) Cần có chế kiểm tra chất lượng, xét duyệt các pha nhằm đảm bảo không gây lỗi cho pha

sau

(79)

Suy nghĩ vòng đời phần mềm

(7) Cần chuẩn hóa mẫu biểu, cách ghi chép tạo tư liệu cho pha, nhằm đảm bảo chất lượng phần mềm

(8) Thao tác bảo trì phần mềm việc xử lý quay vòng trở lại pha vòng đời phần

(80)

Các phương pháp luận kỹ thuật cho pha

Tªn pha Néi dung nghiƯp vơ Ph- ¬ng ph¸ p, kü thuËt

Xá c định yêu cầu

Đ ặc tả yêu cầu ng- ời dù ng Xá c định yêu cầu phần mềm

Ph©n tÝch cÊu tróc hãa

ThiÕt kÕ hƯ thèng

Thiết kế phần mềm

Thiết kế cấu trúc phần mềm

Thiết kế cấu trúc hóa

Thiết kế ch- ơng trình

L thit kế chi tiết: Thiết kế cấu trúc bê n phần mềm (đơn vị ch- ơng trình mơđun)

Lập trình cấu trúc Ph- ơng phá p Jackson Ph- ơng phá p

Warnier

Lập trình MÃ hóa ngôn ngữ lập trình MÃ hóa cấu trúc hóa Đ ảm bảo

chất l- ợ ng

Kiểm tra chất l- ợ ng phần mềm đã phá t triển

(81)

3.5 Quy trình phát triển phần mềm

Common process framework - Khung quy trình chung

Framework activities - Hoạt động khung Task sets - Tập tác vụ

Tasks - Tác vụ

Milestones, deliverables

(82)

3.5.1 Capability Maturity Model (CMM) by SEI: Mơ hình thuần thục khả

• Level 1: Initial (Khởi đầu) Few processes are defined Success depends on individual effort

• Level 2: Repeatable (Lặp lại) Basic project

management processes Repeat earlier succeses on projects with similar applications

• Level 3: Defined (Xác định) Use a documented and approved version of the organization’s

(83)

CMM (cont.)

• Level 4: Managed (Quản trị) Both SW process and products are quantitatively understood

and controlled using detailed measures

• Level 5: Optimizing (Tối ưu) Continuous process improvement is enabled by

quantitative feedback from the process and

from testing innovative ideas and technologies

(84)

18 KPAs of CMM

LEVEL 2: Repeatable SW configuration management SW quality assurance

3 SW subcontract management

4 SW project tracking and oversight

5 SW project planning

6 Requirements management

7 Peer reviews Intergroup coordination SW product engineering 10 IntegratedSW management 11 Training program 12 Organization

process definition 13 Organization process focus

LEVEL 3: Defined

14 SW quality Management 15 Quantitative process management

LEVEL 4: Managed

(85)

3.5.2 Mơ hình tuyến tính

Phân tích Thiết kế Lập trình Kiểm thử Cơng nghệ học

Hệ thống / Thông tin

(86)

Mơ hình tuyến tính

• Cơng nghệ học Hệ thống / Thơng tin mơ hình

hóa (System / Information engineering and

modeling): thiết lập yêu cầu, ánh xạ số tập

con yêu cầu sang phần mềm trình tương tác phần cứng, người CSDL

• Phân tích u cầu (Requirements analysis): hiểu

lĩnh vực thông tin, chức năng, hành vi, tính và giao diện phần mềm phát triển Cần

(87)

Mô hình tuyến tính

Thiết kế (Design): q trình nhiều bước với

thuộc tính khác chương trình: cấu trúc liệu, kiến trúc phần mềm, biểu diễn giao

diện chi tiết thủ tục (thuật toán) Cần tư liệu hóa và phần quan trọng cấu hình phần mềm

Tạo mã / lập trình (Code generation /

programming): Chuyển thiết kế thành chương trình

(88)

Mơ hình tuyến tính

Kiểm thử (Testing): Kiểm tra chương trình

và mơđun lơgic bên chức bên ngồi, nhằm phát lỗi đảm bảo với đầu vào xác định cho kết mong muốn

Hỗ trợ / Bảo trì (Support / Maintenance): Đáp

(89)

Điểm yếu Mơ hình tuyến tính

Thực tế dự án tn theo dịng tuần

tự mơ hình, mà thường có lặp lại (như mơ hình Boehm)

• Khách hàng tuyên bố rõ ràng

xong hết yêu cầu

• Khách hàng phải có lịng kiên nhẫn chờ đợi

(90)

3.5.3 Mơ hình chế thử (Prototyping model)

Nghe Khách trình bày

Tạo / sửa mẫu

(91)

Mơ hình chế thử: Khi ?

• Khi rõ mục đích chung chung phần

mềm, chưa rõ chi tiết đầu vào hay xử lý hoặc chưa rõ yêu cầu đầu

• Dùng “Hệ sơ khai” để thu thập yêu cầu

người dùng qua thiết kế nhanh

• Các giải thuật, kỹ thuật dùng làm mẫu có

(92)

3.5.4 Mơ hình phát triển ứng dụng

nhanh (Rapid Application Development: RAD)

• Là quy trình phát triển phần mềm gia tăng, tăng dần

từng bước (Incrimental software development) với chu trình phát triển ngắn (60-90 ngày)

• Xây dựng dựa hướng thành phần

(Component-based construction) với khả tái sử dụng (reuse)

Gồm số nhóm (teams), nhóm làm RAD theo

(93)(94)

RAD: Business modeling

Luồng thơng tin mơ hình hóa để trả lời câu hỏi:

– Thông tin điều khiển xử lý nghiệp vụ ?

– Thơng tin sinh ra?

– Ai sinh ?

– Thông tin đến đâu ?

(95)

RAD: Data and Process modeling

• Data modeling: đối tượng liệu cần để hỗ trợ nghiệp vụ (business) Định nghĩa

thuộc tính đối tượng xác lập quan hệ đối tượng

(96)

RAD: Appl Generation and Testing

• Application Generation: Dùng kỹ thuật hệ để tạo phần mềm từ thành phần có

sẵn tạo thành phần tái dụng lại sau Dùng công cụ tự động để xây dựng phần mềm

• Testing and Turnover: Kiểm thử thành

(97)

RAD: Hạn chế ?

Cần nguồn nhân lực dồi để tạo nhóm cho

các chức

• u cầu hai bên giao kèo thời gian ngắn

phải có phần mềm hồn chỉnh, thiếu trách nhiệm của bên dễ làm dự án đổ vỡ

• RAD khơng phải tốt cho ứng dụng,

(98)

3.5.5 Các mơ hình tiến hóa:

gia tăng, xoắn ốc, xoắn WINWIN,

Phần lớn hệ phần mềm phức tạp tiến hóa

theo thời gian: môi trường thay đổi, yêu cầu phát sinh thêm, hồn thiện thêm chức năng, tính

• Các mơ hình tiến hóa (evolutionary models) có

tính lặp lại Kỹ sư phần mềm tạo phiên (versions) ngày hoàn thiện hơn, phức tạp

• Các mơ hình: incremental, spiral, WINWIN

(99)

Mơ hình gia tăng

(The incremental model)

Kết hợp mơ hình ý tưởng lặp

lại chế mẫu

Sản phẩm lõi với yêu cầu

nhất hệ thống phát triển

• Các chức với yêu cầu khác

được phát triển thêm sau (gia tăng)

(100)

Mơ hình gia tăng

Ph©n tÝch ThiÕt kÕ LËp tr×nh KiĨm thư System/info

Engineering

Phân tích Thiết kế Lập trình Kiểm thử

Phân tích Thiết kế Lập trình Kiểm thử

Phân tích Thiết kế Lập trình Kiểm thử

Gia tăng

Gia tăng

Gia tăng

Gia tăng

Xuất xưởng Xuất xưởng

Xuất xưởng

(101)

Mô hình xoắn ốc (spiral)

Giao tiếp khách hàng

Lập kế hoạch

Phân tích rủi ro

Kỹ nghệ

Xây dựng & Khách hàng

(102)

Mơ hình xoắn ốc (tiếp)

• Giao tiếp khách hàng: người phát triển

khách hàng để tìm hiểu yêu cầu, ý kiến

Lập kế hoạch: Xác lập tài nguyên, thời hạn

những thông tin khác

• Phân tích rủi ro: Xem xét mạo hiểm kỹ thuật

và mạo hiểm quản lý

Kỹ nghệ: Xây dựng hay số biểu diễn

(103)

Mơ hình xoắn ốc (tiếp)

• Xây dựng xuất xưởng: xây dựng, kiểm thử,

cài đặt cung cấp hỗ trợ người dùng (tư liệu, huấn luyện, )

Đánh giá khách hàng: Nhận phản hồi

(104)

Mơ hình xoắn ốc: Mạnh yếu?

Tốt cho hệ phần mềm quy mô lớn

Dễ kiểm sốt mạo hiểm mức tiến

hóa

• Khó thuyết phục khách hàng phương

pháp tiến hóa xoắn ốc kiểm sốt được

(105)

Mơ hình xoắn ốc WINWIN

Nhằm thỏa hiệp người phát triển

khách hàng, hai “Thắng” (win-win)

– Khách có phần mềm thỏa mãn u cầu Người phát triển có kinh phí thỏa đáng thời

gian hợp lý

• Các hoạt động xác định hệ thống:

– Xác định cổ đông (stakeholders)

(106)

Mơ hình xoắn ốc WINWIN

1 Xác định mức tiếp cổ đông

2 Xác định điều kiện thắng cổ đơng

3a Hịa hợp điều kiện thắng 3b Thiết lập mục tiêu mức tiếp ràng buộc, dự kiến

4 Đánh giá tiến trình dự kiến sản phẩm, giải rủi ro

5 Xác định mức tiếp Xét duyệt đánh giá

(107)

Mơ hình phát triển đồng thời

(The concurrent development model)

• Xác định mạng lưới hoạt động đồng thời

(Network of concurrent activities)

• Các kiện (events) xuất theo điều kiện vận

động trạng thái hoạt động

• Dùng cho loại ứng dụng cho hình ảnh

chính xác trạng thái trạng dự án

Thường dùng phát triển ứng dụng

(108)

3.5.6 Mơ hình theo thành phần (Component-based model)

Gắn với cơng nghệ hướng đối tượng

(Object-oriented technologies) qua việc tạo lớp (classes) có chứa liệu giải thuật xử lý liệu

• Có nhiều tương đồng với mơ hình xoắn ốc

Với ưu điểm tái sử dụng thành phần qua Thư

(109)

Mơ hình theo thành phần

Giao tiếp khách hàng

Lập kế hoạch

Phân tích rủi ro

Kỹ nghệ

Xây dựng & Khách hàng

Xác định thành phần

ứng viên

Tìm thành phần

từ thư viện Lấy thành phần

nếu có Xây dựng

Đặt thành phần vào thư viện Xây dựng bước lặp thứ n

(110)

3.5.7 Mơ hình hình thức (Formal model)

• Cịn gọi CNHPM phịng (Cleanroom SE)

Tập hợp cơng cụ nhằm đặc tả tốn học phần

mềm máy tính từ khâu định nghĩa, phát triển đến kiểm chứng

• Giúp kỹ sư phần mềm phát sửa lỗi

khó

Thường dùng phát triển SW cần độ an

(111)

Mơ hình hình thức: Điểm yếu ?

Cần nhiều thời gian công sức để phát

triển

• Phí đào tạo cao người có

bản cho áp dụng mơ hình hình thức

• Khó sử dụng rộng rãi cần kiến thức

(112)

3.5.8 Các kỹ thuật hệ

(Fourth generation techniques)

Tập hợp cơng cụ cho phép xác định đặc

tính phần mềm mức cao, sau sinh tự động mã nguồn dựa theo đặc tả

• Các cơng cụ 4GT điển hình: ngơn ngữ phi

thủ tục cho truy vấn CSDL; tạo báo cáo; xử dữ liệu; tương tác hình; tạo mã

(113)

4GT: How ?

Từ thu thập yêu cầu sản phẩm: đối thoại

giữa khách người phát triển quan trọng

• Khơng nên bỏ qua khâu thiết kế 4GT áp dụng

để triển khai thiết kế qua 4GL

Mạnh: giảm thời gian phát triển tăng suất Yếu: 4GT khó dùng ngơn ngữ lập trình, mã

khó tối ưu khó bảo trì cho hệ thống lớn ⇒ cần kỹ kỹ sư phần mềm

(114)

3.5.9 Sản phẩm quy trình (Product and process)

• Quy trình yếu sản phẩm khó mà tốt,

song không nên coi trọng mức vào quy trình hoặc mức vào sản phẩm

Sản phẩm quy trình cần coi

(115)

Bài tập Phần I Đồ án I

• Xem lại khái niệm, mơ hình phần mềm

CNHPM

Đồ án mơn học I (cho 13 nhóm, nạp báo cáo, tư

liệu tìm Web thư viện):

– Tìm hiểu viết báo cáo, trình bày mơ hình

phát triển phần mềm (10 mơ hình / 10 nhóm)

Chuẩn ISO 9001 cho SE

Chuẩn CMM (www.sei.com)

(116)

Phần II

Phương pháp Quản lý Dự án CNTT

Chương

Quản lý dự án CNTT

(117)

Nội dung trình bày

Tổng quan

Lập kế hoạch quản lý Tổ chức dự án

Quản lý rủi ro Phát triển nhóm

Quản lý chất lượng

Lập kế hoạch làm việc chi tiết Kiểm soát lập báo cáo dự án

(118)

I Tổng quan

(119)

Mục tiêu

Để hiểu

Khái niệm dự án quản lý dự án

(120)

Các định nghĩa quản lý dự án

Một dự án:

là riêng biệt, độc lập

điểm bắt đầu điểm kết thúc

sản phẩm cụ thể cuối

(121)

Tại dự án lại thất bại?

điều khiến dự án thành công?

Quản lý dự án để đưa sản phẩm cuối cùng:

đúng hạn

• phạm vi ngân sách hay nguồn tài cho

phép

• phù hợp theo đặc tả

với mức độ chất lượng để phục vụ nhu cầu

(122)

Định nghĩa dự án bị thất bại

Một dự án mà:

Không đạt mục tiêu dự án, và/hoặc

Bị vượt q ngân sách 30%

Khơng quen thuộc với phạm vi phức tạp dự án: 17%

thiếu thông tin: 21%

quản lý dự án lý khác: 12%

(123)

Những nguyên nhân thất bại

Do nhà cung cấp phần cứng/phần mềm Nhân viên kinh doanh cao cấp nhóm làm việc khơng hiệu Quản lý dự án tồi Công nghệ tổ chức Ước tính lập kế hoạch tồi Các mục tiêu dự án không nêu đầy đủ

(124)

0 10 20 30 40 50 60 70 80 90

Để tránh thất bại Cải tổ việc quản lý

dự án Nghiên cứu khả thi Tăng số thành viên tham gia Tăng phương sách từ bên ngồi Khơng phải lý

(125)

Các hoạt động dự án

Nguồn

Các đầu vào khác

các yêu cầu Các kết bàn giao

của dự án

Các đầu khác

Quản lý Dự án

Những yêu cầu người quản lý

(126)

Các thuộc tính đặc trưng dự án IT

 Các kết bàn giao hữu hình quen thuộc so với loại dự án khác

 Phạm vi khó kiểm sốt

 Đội dự án thường có kỹ năng, kinh nghiệm, thái

độ kỳ vọng trái ngược

 Dự án bị căng thẳng để đạt mục tiêu

kinh doanh

 Dự án kết nối với thay đổi quan

trọng tổ chức

(127)

Cấu trúc Phương pháp QLDA

quản lý ngời thực hợp đồng phụ quản lý cán dự án

quản lý thay đối tổ chức

quản lý rủi ro Quản l ý chất lợng

quản lý vấn đề kiểm soát thay di

Định nghĩa dự án

Lập Kế hoạch dự án

Quản lý kiĨm so¸t dù ¸n

(128)

10 quy tắc vàng

Quản lý dự án thành cơng vấn đề người

nhưng không quên quản trị

Khám phá nguồn hỗ trợ chống đỡ

Sự diện dối trá - xem xét lịch trình ẩn đằng sau

Phải hiểu người khác có cách nhìn khác

nhau

hãy đặt vào địa vị họ

Thiết lập kế hoạch bạn cho chỉnh sửa dễ dàng Đối mặt với kiện có từ trước

Sử dụng quản trị để hỗ trợ cho mục đích dự án

Thời gian mục tiêu nhiệm vụ không giống nêu

trong kế hoạch

(129)

II Lập kế hoạch quản lý

(130)

Các mục tiêu

Sau kết thúc phần bạn sẽ:

Hiểu cần thiết việc lập kế hoạch

các bước việc lập kế hoạch quản lý

Có thể lập kế hoạch quản lý toàn diện một mức độ chi tiết hợp lý dự án chính bước mở đầu dự án

(131)

Lập kế hoạch quản lý

Xác định ranh giới dự án

đội lập kế hoạch, văn bản/thơng tin có

Xây dựng lựa chọn tiếp cận dự án

chiến lược thực phương pháp luận tổ chức dự án

Xây dựng ước tính ban đầu

Xây dựng sở hạ tầng nguồn

môi trường làm việc

Xây dựng sở hạ tầng dự án

quản lý cấu hình, chất lượng, rủi ro, kiện, thay đổi, kiểm soát dự án, lập báo cáo, lập kế hoạch

(132)

Các vai trò trách nhiệm dự án

Ban điều hành Chiến lược kinh doanh Không Không

Ban đạo điều hành dự án phê chuẩn từ lúc bắt đầu dự án Nhà tài trợ d/a sẵn sàng đầu vào phạm vi, từ lúc bắt đầu d/a

hỗ trợ dự án mục tiêu, lợi ích

Giám đốc dự án quản lý chiến xem xét từ lúc bắt đầu d/a

dự án phê chuẩn

Quản lý dự án quản lý hoạt động chịu trách nhiệm Trong thời gian dự án kết thực dự án Nhóm trưởng dự án chịu trách nhiệm hỗ trợ người suốt thời gian

về nhiệm vụ dự án quản lý dự án lập kế hoạch quản lý

Vai trò Trách nhiệm

Vai trò viẹc lập kế

(133)

Xây dựng & Thông qua kế hoạch quản lý

Các lợi ích lập kế hoạch quản lý

Khởi đầu sai lệch

Không đáp ứng đợc mong đợi nhà tài trợ và/hoặc mục tiêu

Bị nhầm ln

Thụng tin nghốo nn

Đáp ứng mục tiêu nhà tài trợ

Gõy dng lũng tin đối tác Thiết lập hớng làm việc chung Bao quát đợc thách thức

Më c¸c kênh thông tin liên lạc

(134)

Các mục tiêu Đội dự án

Giỏ tr mục tiêu rõ ràng

 Thiết lập mong đợi nhà tài trợ

dự án nhà đầu tư

 Đưa điểm mục tiêu để hướng dẫn

đội dự án

(135)

Các bước xác định phạm vi dự án

 Xem xét lại văn có

 Lập danh sách văn bản/ thông tin chưa đầy đủ

hay thiếu

 Tiến hành vấn và/hoặc hội thảo để thu thập

thông tin cịn thiếu

 Phân loại thơng tin cụ thể liên quan đến

cam kết, lịch trình kết bàn giao

 Tiếp tục kết hợp chặt chẽ chi tiết vào kế

hoạch quản lý

(136)

“Báo cáo phạm vi dự án” xây dựng

Các lợi ích dự án lập thành văn bản rõ ràng

Xác định kết tiêu thức để hoàn thành dự án

Xác định rõ hạn chế, giả thuyết, điểm

(137)

Các tiêu thức Xác định tốt

Rõ ràng

 khơng có ngơn từ nhập nhằng

 khơng có ngơn ngữ marketing bán hàng

 khơng có từ viết tắt

Ngắn gọn

 25 từ

 nêu “là gì” “như nào”

Đầy đủ

 Trình bày phạm vi, lịch trình, nguồn

(138)

PM

đội chủ chốt

đội mở rộng

văn phòng dự án

Nhà tài trợ dự án

ban điều hành dự án

(139)

 Kết bàn giao đáp ứng tiêu chuẩn

 Tối thiểu hoá rủi ro dự án

 Kế hoạch làm việc xây dựng phù hợp với mẫu

 Tiến trình đo lường, ghi chép báo cáo

 Các trở ngại xác định

(140)

Theo dõi & xem xét dữ liệu mục tiêu

Rà xét kết bàn giao

Báo cáo phân tích tiến trình

Tái định hướng dự án cần thiết

Lựa chọn phần mềm quản lý dự án

(141)

Các sách

 Các thủ tục hành  Các tiêu chuẩn

(142)

Ban chỉ đạo nhà tài trợ phải phê chuẩn:

Phạm vi dự án

Phương pháp luận sử dụng

Thành phần đội dự án

Ước tính kỹ lưỡng thời gian chi phí

(143)

Các yếu tố thành công

Một kế hoạch quản lý hiệu

Mô tả tiêu thức thành công dự án;

Phác thảo khung thời gian, ngân sách, kết bàn giao chủ yếu mức chất lượng thiết kế;

Xác định phưong pháp tiếp cận khung thời gian tổng quan việc thực thi dự án;

Xác định nguồn nhân lực cần thiết để thực công việc dự án; và,

(144)

Điểm chủ yếu để hiểu dự án

lập cấu trúc hay khuôn khổ cho tất

cácvăn quản lý dự án

Nền tảng vững cho quản lý dự án

Truyền thông

Kế hoạch quản lý tảng cho việc quản lý một dự án

(145)

III Tổ chức dự án

(146)

Các mục tiêu tổ chức dự án

Vào cuối phần này, người tham dự khoá học có thể:

Hiểu tầm quan trọng tổ chức tốt Thiết lập cấu đội dự án hiệu

Phân định vai trò trách nhiệm

(147)

Các kết chuyển giao từ tổ chức dự án

 Xác định “những người có ảnh hưởng” dự án

 Xác định lĩnh vực chủ yếu có lực cản

 Tác động qua lại yêu cầu dự án trước thành lập uỷ ban hay hội đồng

 Danh sách thành viên tiềm ban điều hành dự án

 Biểu đồ tổ chức dự án: - cấu trúc quản lý dự án - cấu trúc đội dự án

 Vai trò trách nhiệm dự án

 Mô tả công việc dự án

(148)

Quy trình tổ chức dự án

Xác định vị trí

dự án tổ chức

Thiết kế tổ chức dự án

Lập thành văn bản vai trò trách nhiệm

dự án

Xây dựng mô tả công việc quyền

lợi vị trí

Lựa chọn đội dự án Step

Step

(149)

dụ cấu trúc Quản lý dự án Ban điều hành dự án

Chủ tịch = nhà tài trợ dự án

Quản lý đơn vị nghiệp vụ Quản lý bảo đảm

chất lượng Quản lý dự án

nhóm trưởng nhóm trưởng quản lý nhóm nhóm trưởng

(150)

Những điểm chính:

Cơ cấu tổ chức dự án

Cơ cấu người vô quan trọng đối

với thành công dự án

giám đốc dự án điều hành nhóm quản lý các mối quan hệ cần phải thiết lập

Vai trị kiểm sốt dự án phải ln có nhiệm vụ kiểm sốt quản trị

khơng cần thiết phải có cán làm việc full time

(151)

Vai trò trách nhiệm dự án

nhà tài trợ dự án “Người đứng đầu”, chủ sở hữu nhà tài chính dự án

giám đốc dự án đại diện cho nhà tài trợ dự án

ban đạo giám sát hoạt động dự án, hỗ trợ việc lập phương hướng để đưa định nhóm nghiệp vụ thừa nhận kết bàn giao chủ yếu

nghiệp vụ

quản lý dự án điều phối dự án tổng thể, quản lý giám sát (có hỗ trợ hành từ văn phịng dự án) nhóm trưởng hàng ngày quản lý kiêm soát tiến triển theo

kế hoạch làm việc chi tiết

(152)

Các yêu cầu mô tả

Ngắn gọn súc tích Xác định rõ:

Các mục đích mục tiêu

Những trách nhiệm Số thành viên

(153)

Văn phịng dự án gì?

Là trung tâm của:

Họp

Điều phối, kết hợp

Theo dõi

(154)

Nhiệm vụ trách nhiệm văn phòng dự án

ph©n tÝch xu híng

sơ đồ tổ chức

kiểm soát thay đổi lập bỏo cỏo

về thực trạng lập bảng

biểu

đa

giải pháp sử dụng

các nguồn

duy trì kế hoạch

ngân sach dù ¸n lËp b¸o c¸o

theo thêi gian ®a

các kết khơng cần thẩm định

gi¸m s¸t thêi gian híng dÉn lËp kÕ ho¹ch

theo dõi lịch trình

(155)

Tổ chức dự án - Các điểm học

Nhà tài trợ có trách nhiệm cao tổ chức

Hỗ trợ tích cực từ ban điều hành

Phân định rõ trách nhiệm, thẩm quyền, trách nhiệm giải trình

Trao đổi hợp lý cán kỹ thuật cán chức năng

Hồn thành cơng việc dự án với nguồn lực

Dịng thơng tin liên lạc hiệu

Tỉ lệ cán so với người quản lý nhỏ

Tối giản mức báo cáo, loại trừ yêu cầu không

cần thiết

(156)

IV Quản lý rủi ro

(157)

Những mục tiêu phần

Hiểu cần thiết quản lý rủi ro

trong suốt trình thực dự án

Có thể thực việc phân tích đánh giá rủi ro dự án

(158)

Định nghĩa rủi ro

Những kiện làm phá vỡ dự án

Những điều không chắn, khoản nợ hay

những điểm yếu làm cho dự án không theo đúng kế hoạch định

Có thể quản lý

(159)

Các lý cần có quản lý rủi ro

Tất dự án phụ thuộc vào rủi ro Tiến trình khơng theo kế hoạch

trong một số giai đoạn dự án

(160)

Định nghĩa quản lý rủi ro

(161)

 Giảm thiểu ảnh hưởng cố không

biết trước cho dự án

 Nâng cao xác suất thực thành công dự án

 Tạo ý thức kiểm soát

 được giải pháp hiệu kịp thời

(162)

Khi cần quản lý rủi ro Lập kế hoạch quản lý

Khi trách nhiệm dự án sẵn sàng thực thi

Khi khôi phục dự án bỏ dở

Trong suốt trình rà xét dự án

(163)

Quy trình quản lý rủi ro

Xác định mức rủi ro ban đầu

của dự án lập thành văn

rủi ro cụ

thể tiến hành phân tích ảnh hưởng

rủi ro triển khai kế xây dựng hoạch quản lý

rủi ro

giám sát

Xác định Phân tích Quản lý Giám sát

bước

bước

bước

(164)

Hoạt động ngăn ngừa (ví dụ)

Đưa đào tạo bổ sung cho lập trình viên (để

giảm rủi ro tiềm năng)

Thuê hợp đồng với lập trình viên có nhiều kinh nghiệm (loại bỏ rủi ro tiềm năng)

Đội dự án bị chậm so với lịch trình

giai đoạn xây dựng phần mềm nhà lập trình đang giai đoạn khó mã chương

trình dự đoán Xác suất khoảng 30 % nhân viên đáp ứng kiện

(165)

Hành động dự phòng

Phải:

Dựa thừa nhận từ thực

tiễn (ví dụ: nguồn sẵn có)

Các thành viên nhóm phải hiểu được (và uỷ ban điều hành)

Phải kiểm tra tính khả thi

(166)

Các điểm học

Chương trình quản lý rủi ro hiệu

Tập trung vào việc phòng ngừa chữa trị

Bao gồm đánh giá rủi ro theo thời kỳ suốt vòng đời của dự án

Kết hợp chặt chẽ quy trình liên tục xác định rủi ro,

phân tích, quản lý rà xét

Nhận biết giá trị quyền hạn

không giới hạn kết thúc khơng xác!

(167)

V Phát triển nhóm

(168)

Xây dựng nhóm - Các mục tiêu

Xây dựng hiểu biết bạn

các đặc tính nhóm làm việc hiệu

Xác định phương pháp để

(169)

Nhóm hiệu

Các mục đích thống

Nhóm tin tưởng vào vai trò mục tiêu

Chấp thuận mục tiêu dự án chất

lượng dự án

Truyền thông đối lưu hiệu

Các ý tưởng trao đổi triển khai

Đưa giải pháp hiệu

Mối quan hệ hợp tác hỗ trợ thành

(170)

thành lập xung kích Quy chuẩn thực

xây dựng nhóm

lịch trình

của thành viên hợp tác cam kết

Quy trình xây dựng nhóm

(171)

Xây dựng nhóm - điểm học

Mục tiêu rõ ràng

Trách nhiệm rõ ràng

Thông tin liên lạc hiệu

Phản hồi có tính xây dựng Lãnh đạo linh hoạt

Cán đủ khả

Xác định với nhóm

(172)

VI Quản lý chất lượng

(173)

Hai Định nghĩa Chất lượng

Thích hợp với mục đích

(174)

Thoả mãn

nhu cầu

mục đích

thực phương pháp

(175)

Các khái niệm chất lượng chủ chốt

Đạt chất lượng phải đựoc lên kế

hoạch - không tuỳ tiện

Đạt chất lượng xuất phát từ bảo

đảm chất lượng kiểm soát chất lượng

Đạt chất lượng phụ thuộc vào hỗ

(176)

Quản lý chất lượng 1.Lập kế

haọch chất lượng

2.Thiết lập khung đảm bảo chất

lượng

3 Tiến hành hoạt động kiểm soát chất lượng

4 Triển khai họat động hiệu

(177)

Những điểm chủ chốt học

Cam kết quản lý

Người sử dụng tham gia

Cấu trúc phương pháp tiếp cận

Các yêu cầu chất lượng đo lường

Thẩm định phương pháp, kiểm sốt, quy trình

và sản phẩm dự án

Thông tin liên lạc

một kế hoạch có chất lượng tốt mô tả việc làm

(178)

VII Lập kế hoạch làm việc chi tiết

(179)

Các mục tiêu phần

Giải thích mối quan hệ Kế hoạch hoạt động (một phần

của kế hoạch quản lý) Kế hoạch làm việc

Nhìn vào yếu tố cuả kế hoạch: Tài liệu nhiệm vụ Các phụ thuộc Các nguồn lực

Để giải thích chu kỳ lập kế hoạch làm việc

(180)

Làm thế để tạo kế hoạch làm việc

Tách giai đoạn thành hoạt động

Tách hoạt động thành nhiệm vụ

Các nhiệm vụ nhỏ dễ dàng ước tính quản lý giai đoạn lớn

Các nhiệm vụ cần:

thường không nhỏ người/giờ làm việc thường không nhiều 70 người/giờ làm việc thường không sử dụng nhiều hn ngun

(181)

Giai đoạn

Møc

hoạt động hoạt động

Møc

nhiƯm vơ nhiƯm vơ nhiƯm vơ nhiƯm vơ

Møc

(182)

Lập kế hoạch - Xây dựng WBS

Mục tiêu nghiệp vụ

kế hoạch hoạt động

định nghĩa kế hoạch

Các hoạt động cần đạt

được kết bàn

giao mốc xác

định WBS

(183)

Nhiệm vụ phải xác định là:

Xác định nhiệm vụ

 thiết kế để đưa kết bàn giao

(như phần hoạt động)

 trách nhiệm cá nhân

 có hạn

♦ xác định tiêu thức việc bắt đầu kết thúc

 đơn vị cơng việc quản lý  dễ hiểu

(184)

Xác định nhiệm vụ phụ thuộc

 Không bị cản trở nguồn giai đoạn

 Hỏi “Công việc cần hồn thành trước nhiệm vụ

có thể bắt đầu?”

 Hỏi “Những nhiệm vụ thực cơng

việc kết thúc?”

 Giảm tối đa chuỗi dài nhiệm vụ phụ thuộc

 Thực nhiệm vụ song song với  Xem xét khoảng cách

 Xem xét chồng chéo

 Chuyển thông tin phụ thuộc vào thành công cụ lập

(185)

Chỉ định nguồn lực cho nhiệm vụ

Các nguyên tắc

Sử dụng hợp lý nguồn

Kinh nghiệm & kỹ đáp ứng nhu cầu nhiệm vụ

không bỏ qua cán thiếu kinh nghiệm

(186)

Các nguồn dự án cam kết để đạt mục tiêu dự án nguồn Quản trị viên dự án tổ chức đạo để đạt mục tiêu dự án phạm vi chi phi lịch trình cho phép

Các loại nguồn tiêu biểu bao gồm:

Nguồn lực dự án gì?

 Con người - người lựa chọn cho đội dự án Họ thể kinh nghiệm kỹ sẵn sàng để hoàn thành mục

tiêu

 Thiết bị - Thiết bị cần thiết cho dự án Nó bao gồm từ

những thiết bị lớn đến máy tính cơng cụ kiểm tra đặc biệt

Văn phòng phẩm - đồ dùng cần thiết cho dự án Nó có

thể bao gồm thứ từ giấy bút chì đến đĩa mềm đồ vật khác

(187)

Lên lịch trình nên

 Giảm tối đa thời gian bỏ phí  Tận dụng tối đa nguồn

 Dàn xếp chỗ thừa chỗ thiếu nguồn

 Xem xét hạn chế của: ♦ nhiệm vụ phụ thuộc

♦ nguồn sẵn có

 Là quy trình lặp lại ♦ thời gian biểu quy trình

♦ rà xét thời gian biểu

♦ sửa thời gian biểu

♦ lập lại thời gian biểu

(188)

10 đặc điểm kế hoạch làm việc tốt

1 Chia nhỏ giai đoạn lớn phức tạp (tức kế hoạch quản lý) thành nhiều nhiệm vụ quản lý

2 Xác định phạm vi mục tiêu nhiệm vụ

3 Xác định nguồn cần để thực nhiệm vụ 4 Xác định thời gian cần sử dụng nguồn nhiệm vụ 5 Xác định thời điểm bắt đầu kết thúc nhiệm vụ 6 Bao gồm ước tính thực tế

7 Giảm tối đa thất thường công việc sử dụng nguồn 8 Kết hợp chi phí nhiệm vụ dự phòng

9 Tiêu chuẩn hố dự án để giám sát

(189)

Các nhân tố thành công Những điều học

Một kế hoạch làm việc tốt xác định mục tiêu phạm

vi lượng cơng việc quản lý

Nó xác định nỗ lực, nguồn lịch trình đáp ứng nhu cầu của mục tiêu

Nó thực tế bao gồm phần dự phịng

Nó sử dụng nguồn hiệu hợp lý

Nó thiết lập tiêu chuẩn để kiểm tra tiến trình cơng việc

(190)

VIII Kiểm sốt lập báo cáo dự án

(191)

Lập báo cáo kiểm soát dự án - mục tiêu

Để :

 Chứng minh cần thiết việc lập báo cáo kiểm

soát dự án hiệu giải thích lợi ích

 Để nhận biết phương pháp kỹ khác

được sử dụng cho việc lập báo kiểm soát dự án

 Đánh giá tầm quan trọng việc trình bày thơng tin

hhiện trạng hợp lý cho thính giả khác

 Đánh giá tầm quan trọng cuả chu kỳ kiểm soát dự án

(192)

Các định nghĩa

Kiểm soát dự án:

Nắm bắt quản lý tiến trình

Lập báo cáo dự án:

(193)

Quản trị viên dự án có thể:

Báo cáo khách quan thực trạng dự án

Xác định cản trở hành động hiệu chỉnh Triển khai giải pháp

Hiểu ảnh hưởng công việc tương lai

Đưa định hợp lý dựa thông tin xác thực

Quản trị viên dự án, trưởng nhóm thành viên nhóm

phải:

Lắng nghe tin nhắn chuyển đến

(194)

Lập báo cáo hiệu thực trạng vấn đề

toàn dự án sẽ:

Trao đổi tình trạng dự án

Tập trung vào thành tựu mục tiêu

kinh doanh, khơng phải vào quy trình dự án

Đưa thơng tin xác tin cậy dựa kế

hoạch dự án

Nêu bật điểm ngoại lệ so với kế hoạch

Cung cấp thông tin kịp thời

(195)

Dự án Giai đoạn

Phạm vi

Nhiệm vụ Hoạt động

Mức WBS

1

Quan sát bên

(196)

Lập kế hoạch, theo dừi, bỏo cỏo

Các mục tiêu kinh doanh

Kết bàn giao Xác định kết bàn giao

kế hoạch hoạt động

xác định kế hoạch

Dữ liệu - đầy đủ

B¸o cáo thực trạng

Các báo cáo từ kế haọch

Báo cáo vấn đề

Xác định vấn đề

(197)

Lập báo cáo kiểm soát dự án Replan/ Rebaseline quản lý thực hành kế hoạch quản lý KH công việc

chi tiết

dữ liệu tiến trình

dữ liệu hoàn thiện

khác dữ liệu nhiệm vụ quản lý nguồn kiểm soát khác giải pháp

lập báo cáo hiện trạng

xu hướng nguồn

tài thay đổi

phiên vấn đề chất lương

phân tích hoạt động hiệu chnh

kế hoạch

công việc

chi tiết

theo dõi rà xét

các kiện

mục tiêu

rà xét KQBG

nỗ lực báo cáo phân tích trình tiến

Tái định hướng

dự án

(198)

Khuôn khổ kiểm sốt dự án

C«ng viƯc kiĨm so¸t Møc

kiĨm so¸t

B¸o c¸o

Ban điều hành

Quản trị viên dự án

Trởng nhóm

B/c Ban điều hành

B/c Quản trị viên dự án

B/c trởng nhóm

B/c thành kế hoạch quản lý

kế hoạch công việc chi tiết kế hoạch công việc chi tiết

(199)

Một chu kỳ kiểm soát dự án thống nhất:

Chu kỳ kiểm soát dự án

Nêu rõ ràng chu kỳ kiện cho việc lập báo cáo thực trạng

Xác định thông tin thông thường yêu cầu với mức điều hành, quản lý, nhóm

Thiết lập thời gian biểu cho việc lập báo

(200)

Chu kỳ kiểm soát dự án - yếu tố

HĐQT Uỷ ban điều

hành

Các giám đốc dự án Các nhà tài trợ kinh doanh

Chủ thực

Ai Khi

Chủ thực Quản trị viên dự án

Quản lý kinh doanh

hàng tháng: thứ sáu

2 tuần lần: thứ hai tuần lần: thứ tư

hàng tuần: thứ sáu Các giám đốc dự án

Quản trị viên dự án quản lý đơn

Ngày đăng: 20/04/2021, 03:52

w