Huúnh Xu©n HiÖp - CNPM
39
4
4n
n
h
h
ã
ã
m
ml
l
μ
μ
m
mv
v
i
i
Ö
ôn
n
g
g
h
h
Ò
Òn
n
g
g
h
h
i
i
Ö
Ö
p
p
(
(
T
T
E
O
L
L
S
SO
O
F
FT
T
H
H
E
E
I
I
R
RT
T
R
R
A
1
1
K
K
K
h
h
h
á
á
á
i
i
i
q
q
q
u
u
u
á
á
á
t
phần mềm, các sản phầm trợ giúp các nhóm công nghệ phần mềm
trong phát triển và bảo trì phần mềm. Thờng gọi là các công cụ
CASE (computer-adied software engineering tools - CASE tools)
Huỳnh Xuân Hiệp - CNPM
41
4
4
4
.
.
.
2
2
2
T
T
T
ổ
ổ
ổ
l
l
l
à
à
à
m
m
m
v
v
v
i
i
i
ệ
ệ
ệ
c
c
c
(team organization)
Các sản phẩm tơng đối lớn trở đi phải do những ngời chuyên nghiệp
thực hiện và những ngời này đợc tổ chức thành nhóm làm việc (team)
T
T
T
i
i
i
ế
ế
ế
p
p
p
c
c
c
ậ
ậ
ậ
n
n
n
i
i
i
ệ
ệ
ệ
c
c
c
d
d
d
â
â
â
n
n
n
c
c
c
h
h
h
.
4
4
4
T
T
T
i
i
i
ế
ế
ế
p
p
p
c
c
c
ậ
ậ
ậ
n
n
g
n
n
n
h
h
h
ó
ó
ó
m
m
m
l
l
l
ậ
ậ
ậ
p
p
p
đ
i
i
i
ể
ể
ể
n
n
n
(classical chief programmer team approach)
Th ký lập trình Trởng nhóm
lập trình
Lập trình viên
hỗ trợ
Lập trình viên Lập trình viên Lập trình viên
Hình 4.3 Cấu trúc về trởng nhóm lập trình cổ điển
Chính thức hóa bởi Mills [Backer, 1972]
Các thành viên trong nhóm:
trởng nhóm (chief), quản lý tốt, giỏi lập
trình, xử lý các công việc khó khăn khác
lập trình viên hỗ trợ (back-up programmer), sẵn sàng thay thế trởng
nhóm quán xuyến các công việc khi cần
th ký lập trình (secretary), bảo trì th viện, tài liệu, danh sách mã
nguồn, dữ liệu kiểm thử, JCL (job control language)
lập trình viên (programmer)
Trợ giúp của các chuyên gia luật, tài chính, trong các vấn đề liên quan
t
t
s
s
s
ố
ố
ố
c
c
c
ấ
ấ
ấ
u
u
u
t
t
t
r
ậ
ậ
p
p
p
t
t
t
r
r
r
ì
ì
ì
n
n
n
h
h
h
h
h
h
i
Lập trình viên Lập trình viên Lập trình viên
Quản lý kỹ thuật
Quản lý không kỹ thuật
Hình 4.4 Cấu trúc nhóm lập trình hiện đại
Huỳnh Xuân Hiệp - CNPM
45
Lãnh đạo dự án
Lãnh đạo nhóm Lãnh đạo nhóm Lãnh đạo nhóm
Lập trình
viên
Lập trình
viên
Lập trình
viên
Lập trình
viên
Lập trình
viên
Lập trình
viên
Lập trình
viên
Quản lý kỹ thuật
Hình 4.6 Phiên bản của Hình 4.5 với việc phi tập trung hóa các quyết định
và các kênh giao tiếp kỹ thuật
Huỳnh Xuân Hiệp - CNPM
46
4
4
4
.
.
.
6
6
6
à
à
à
m
m
m
v
v
v
i
i
i
ệ
ệ
ệ
c
c
c
d
d
d
ạ
ạ
ạ
h
h
h
o
o
o
á
á
á
v
v
v
à
à
à
ổ
ổ
ổ
n
n
n
các lập trình viên luôn sáng tạo và đổi mới, hớng cùng mục đích
Khuyết điểm:
phải tôn trọng triệt để thời gian đa mã nguồn vào cơ sở dữ
liệu của sản phẩm để đồng bộ hóa
Huỳnh Xuân Hiệp - CNPM
47
4
4
4
.
.
.
7
7
7
S
S
S
o
o
o
s
i
i
ế
ế
ế
p
p
p
c
c
c
ậ
ậ
ậ
n
n
n
t
t
t
ổ
ổ
ổ
l
l
l
à
à
à
m
m
m
v
v
v
i
i
i
ệ
ệ
ệ
c
c
c
(comparison of approaches to team organization)
Tổ chức nhóm làm việc Điểm mạnh Điểm yếu
Các nhóm dân chủ Chất lợng mã lệnh cao vì thái độ
4
4
.
.
.
8
8
8
L
L
L
à
à
à
m
m
m
m
m
m
ị
ị
ị
n
Ba tập tin đầu ra:
- chứa dữ liệu mới về các thuê bao
- báo cáo về các ngoại lệ (exception)
- tổng kết và thông báo kết thúc công việc
Huỳnh Xuân Hiệp - CNPM
49
Kiểu
giao dịch
Tên Địa chỉ
3 Bình
1 Hùng 18/09 đờng 30/4, Tp.Cần Thơ
2 Sanh 67 đờng Trần Hng Đạo, TP.HCM
3 Sanh
1 Toàn 88 đờng Đại Cồ Việt, Hànội
Hình 4.8 Các mẩu tin giao dịch
Cập nhật tập tin dữ liệu Đầu vào Xử lý Đầu ra
Hình 4.10 Bớc thiết kế mịn thứ nhất Tập tin giao dịch
Tập tin dữ liệu cũ
Tập tin dữ liệu mới
Tổn
g
kết và
thông báo
kết thúc
Huỳnh Xuân Hiệp - CNPM
50
Lỗi
Thực
hiện
sửa đổi
THEM XOASUADOI THEM XOASUADOI
A
A
A
A
=
>
<
Huỳnh Xuân Hiệp - CNPM
51
A
>
Đ
ọc mảu tin từ tập
tin dữ liệu cũ
A
Ghi mẩu tin lên tập
tin dữ liệu mới
Đ
ọc tập tin
giao dịch
<
Kiểm thử
kiểu giao
dịch
Ghi
tập tin dữ
liệu mới
THEM XOASUADOI
A
Lỗi
Đ
ọc tập tin
giao dịch
Huỳnh Xuân Hiệp - CNPM
52
í
í
í
c
c
c
h
h
h
g
g
g
i
i
i
á
á
á
t
t
t
h
h
h
n
n
n
h
h
h
u
u
u
ậ
ậ
ậ
n
n
n
(cost-benefit analysis)
Ước tính giá thành và lợi nhuận trong tơng lai
Một số vấn đề quan tâm:
sự thay đổi trị giá của tiền [Yourdon, 1989]
giá thành phần cứng, phần mềm
tiền thuê chuyên gia công nghệ phần mềm
tính giá trị sản phẩm nh thế nào ?
Một số hớng giải pháp:
tính theo mệnh giá của đồng tiền mạnh
sử dụng chiến lợc thích hợp để đánh giá
n
n
n
h
h
h
g
g
g
i
i
i
á
á
á
p
p
p
h
h
h
ầ
ầ
ầ
Huỳnh Xuân Hiệp - CNPM
54
4
4
4
.
.
.
1
1
1
1
1
1
P
P
P
h
h
h
â
â
â
g
g
g
c
c
c
ụ
ụ
ụ
C
C
C
A
A
A
S
S
S
E
E
E
(taxonomy of CASE)
Đơn giản nhất là công cụ phần mềm (software tool), trợ giúp một mặt nào
Đặc tả Đặc tả Đặc tả
Thiết kế Thiết kế Thiết kế
Cài đặt Cài đặt Cài đặt
Tích hợp Tích hợp Tích hợp
Bảo trì Bảo trì Bảo trì
(a) Công cụ (b) Workbench (c) Môi trờng
Hình 4.14 Giới thiệu công cụ, workbench và môi trờng
Huỳnh Xuân Hiệp - CNPM
56
4
4
4
.
.
.
1
1
1
2
2
2
C
C
C
ả
ả
ả
n
n
n
p
p
p
h
h
h
ầ
ầ
ầ
n
n
n
m
m
m
ề
ề
ề