Tải bản đầy đủ (.pdf) (13 trang)

Giới thiệu công nghệ phần mềm (1) ppt

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 (100.34 KB, 13 trang )

Gi i thi u
công ngh ph n m m
(1)
Nguy n Thanh Bình
Khoa Cơng ngh Thơng tin
Trư ng ð i h c Bách khoa
ð i h c ðà N ng

N i dung
L ch s phát tri n ph n m m và
kh ng ho ng ph n m m ?
Công ngh ph n m m
Khái ni m
M c đích
Ngun t c

Ch t lư ng ph n m m
Phân lo i ph n m m
2

1


L ch s phát tri n ph n m m
1946, máy tính đi n t ra đ i
1950, máy tính ñư c thương m i hóa
Ph n m m b t ñ u ñư c phát tri n

Nh ng năm 1960
nh ng th t b i v phát tri n ph n m m
• s n ph m ph n m m ph c t p


• nhi u l i
• t ch c s n xu t: giá thành, ti n đ , ...

Ngư i ta nói đ n “Kh ng ho ng ph n m m”
3

L ch s phát tri n ph n m m
T th cơng đ n cơng ngh
• Chương trình nh
• D án l n
• khơng chuyên nghi p
• chuyên nghi p
• 1 ngư i làm
• nhi u ngư i làm
• ngư i s d ng = ngư i phát tri n • khách hàng & nhà cung c p
• 1 s n ph m = mã ngu n
• nhi u s n ph m
• ti n trình phát tri n đơn gi n
• ti n trình phát tri n ph c t p

1968, h i th o khoa h c đ u tiên v “Cơng ngh ph n m m”

4

2


Kh ng ho ng ph n m m
V m t s n ph m
ch t lư ng s n ph m ph n m m







khơng đáp ng u c u th c t
khó s d ng
khơng tin c y
khó b o trì
khách hàng khơng hài lịng

5

Kh ng ho ng ph n m m
V m t qu n lý
K ho ch
• khơng đánh giá đúng giá thành
• khơng đúng ti n đ
• chi phí phát tri n / chi phí b o trì

V m t pháp lý
• h p đ ng khơng r ràng, khơng ch t ch

Nhân l c
• đào t o
• giao ti p

Thi u tiêu chu n đánh giá s n ph m
Thi u quy trình qu n lý

6

3


Kh ng ho ng ph n m m
ði u tra c a General Acounting Office
(1982) trên nhi u s án v i t ng v n đ u tư
$68.000.000
Khơng giao s n ph m: 29%
Khơng đư c s d ng: 47%
B cu c: 19%
ðư c s d ng sau khi ñã ch nh s a: 3%
T t: 2%

7

Kh ng ho ng ph n m m

8

4


Công ngh ph n m m
Khái ni m
Công ngh ph n m m
nghiên c u và phát tri n các phương pháp,
kĩ thu t và công c nh m xây d ng các
ph n m m m t cách kinh t , có đ tin c y

cao và ho t ñ ng hi u qu
thi t k , xây d ng, và b o trì các ph n m m
ph c t p, b n v ng và ch t lư ng

9

Cơng ngh ph n m m
M c đích
M c đích
áp d ng th c t





các ki n th c khoa h c,
các nguyên t c kinh t ,
các nguyên t c qu n lí,
các k thu t và cơng c thích h p

đ s n xu t và b o trì các ph n m m nh m b o đ m
4 u c u (FQCD):
• ph n m m t o ra ph i ñáp ng ñư c yêu c u ngư i s
d ng
• ph n m m ph i ñ t ñư c các tiêu chu n v ch t lư ng
• giá thành ph i n m trong gi i h n đ t ra
• ti n ñ xây d ng ph n m m ph i ñ m b o
10

5



Công ngh ph n m m
Nguyên t c
Các nguyên t c cơ b n
Ch t ch (rigor and formality)
Chia nh (separation of concerns)
Mơ-đun hóa (modularity)
Tr u tư ng (abstraction)
Phịng ng a s thay đ i (anticipation of
change)
T ng qt hóa (generality)
Gi i quy t t ng bư c (incrementality)
11

Công ngh ph n m m
Nguyên t c
Ch t ch (rigor and formality)
s d ng mơ hình lý thuy t và tốn h c
áp d ng cho t t c các bư c, t t c các s n
ph m
Ví d
• “ch n z là giá tr l n nh t c a x và y”
• z = max(x, y)

12

6



Công ngh ph n m m
Nguyên t c
Chia nh (separation of concerns)
Làm ch đ ph c t p
• ch t p trung m t lĩnh v c cùng m t lúc

Chia v n đ thành các ph n nh hơn
• Gi i quy t m t ph n nh s ñơn gi n hơn
• “chia ñ tr ” (divide and conquer)

Có th chia nh theo
• th i gian: l p k ho ch
• khái ni m: giao di n / thu t tốn
• x lý: chia các x lý con
13

Cơng ngh ph n m m
Ngun t c
Mơ-đun hóa (modularity)
Chia nh ñ ph c t p
• d hi u
• d qu n lý các h th ng ph c t p

Quan h m t thi t v i nguyên t c “chia nh ”
Các phương pháp mơ-đun hóa
• chi n lư c t trên xu ng (top-down)
• chi n lư c t dư i lên (bottom-up)

Ch t lư ng c a mơ-đun hóa
• liên k t l ng l o (low coupling)

• k t c cao (high cohesion)

14

7


Công ngh ph n m m
Nguyên t c
Tr u tư ng (abstraction)
Lo i b nh ng gì khơng quan tr ng
Ch xem xét các y u t quan tr ng
S d ng các mơ hình
• mơ hình cho ngư i s d ng
• mơ hình cho ngư i phát tri n

Ví d
• ngơn ng l p trình / c u trúc ph n c ng
• xây d ng tài li u
• đ c t b i đi u ki n trư c và sau

15

Công ngh ph n m m
Nguyên t c
Phịng ng a s thay đ i (anticipation of
change)
ph n m m là s n ph m thư ng xuyên ph i
thay đ i
d báo các y u t có th thay đ i



nh hư ng có th

các thay đ i thư ng g p
• trong đ c t u c u
• trong ng c nh s d ng
• kh năng v công ngh
16

8


Công ngh ph n m m
Nguyên t c
T ng quát hóa (generality)
xem xét v n đ trong ng c nh t ng quát
gi i quy t v n ñ l n hơn
m c đích
• tái s d ng d dàng
• có th s d ng các cơng c có s n
• s d ng design patterns

• chi phí có th tăng cao

17

Công ngh ph n m m
Nguyên t c
Gi i quy t t ng bư c (incrementality)

Ngun t c





xác đ nh m t ph n (t p con)
phát tri n
ñánh giá
b tđ ul i

Áp d ng cho
• phát tri n m t s n ph m
• mơ đ c t / m t ki n trúc / ...

• mơ hình phát tri n
• mơ hình l p

18

9


Ch t lư ng ph n m m
Tính đúng đ n (correctness)
th c hi n ñúng các ñ c t v ch c năng
(functional specification)
Tính tin c y (reliability)
đáp ng ñư c nh ng yêu c u ñ t ra
Tính b n v ng (robustness)

ho t ñ ng t t trong nh ng ñi u ki n s d ng
khác nhau
19

Ch t lư ng ph n m m
Tính hi u qu (efficiency)
s d ng hi u qu các ngu n tài nguyên (b
nh , CPU, ...)
Tính thân thi n (user friendlyness)
d s d ng

Tính d ki m tra (verifiability)
d ki m tra ch t lư ng
20

10


Ch t lư ng ph n m m
Tính d b o trì (maintainability)
d xác đ nh và s a l i
d t o ra nh ng phiên b n m i khi có s m
r ng

Tính tái s d ng (reusability)
d tái s d ng trong nh ng ph n m m m i

Tính kh chuy n (portability)
d s d ng trong các môi trư ng m i
21


Ch t lư ng ph n m m
Tính d hi u (understandability)
d hi u ñ i v i ngư i s d ng cũng như đ i
v i ngư i phát tri n

Tính h p tác (interoperability)
d h p tác v i các ph n m m khác

S n xu t hi u qu (productivity)
ti n trình s n xu t ph n m m ph i hi u qu
22

11


Ch t lư ng ph n m m
Kh năng giao s n ph m ñúng h n
(timeliness)
giao s n ph m theo t ng gói
Tính trong su t (visibility)
đ i v i ngư i phát tri n/ngư i qu n lý
• hi u r ti n đ phát tri n
• hi u r nh hư ng c a các quy t đ nh

đ i v i khách hàng
• hi u r ti n đ phát tri n
• hi u r nh hư ng c a các quy t ñ nh

23


Ch t lư ng ph n m m
S th a hi p gi a các tiêu chu n ch t
lư ng
tính thân thi n / tính b n v ng
tính kh chuy n / tính hi u qu

24

12


Phân lo i ph n m m
Các h th ng thông tin (Information Systems)
qu n lý thông tin
cơ s d li u + giao tác
Các h th ng th i gian th c (Real-Time
System)
các h th ng khi ho t ñ ng c n ph i tr l i
các s ki n v i m t th i gian ñư c quy ñ nh
nghiêm ng t
25

Phân lo i ph n m m
Các h th ng phân tán (Distributed Systems)
m ng máy tính
phân tán d li u
phân tán x lí
Các h th ng nhúng (Emmbedded Systems)
giao ti p v i các h th ng/m ch ñi n t


26

13



×