Giáo trình Phân tích thiết Kế Hệ Thống
1
LỜI NÓI ĐẦU
Chào mừng các bạn đến với môn học Phân tích thiết kế thống, một môn học rất thú vị, cần
thiết trong việc xây dựng một ứng dụng thực tế. Nó cũng sẽ trang bị cho các bạn những kiến
thức cần thiết dùng để viết phần lý thuyết của đề án tốt nghiệp. Tài liệu sẽ cung cấp những
kỹ năng cần thiết trong phân tích thiết kế một hệ thống thông tin quản ly.
Tài liệu này một phần được dịch và biên soạn lại từ quyển sách Practical Data Modelling
For Database Design của hai tác giả Renzo D’Orazio & Gunter Happel và từ Giáo trình
Phân tích Thiết kế Hệ Thống của Nguyễn Văn Vỵ
Tài liệu trình bày tường tận chi tiết các kỹ năng cần thiết trong phân tích thiết kế một hệ
thống thông tin, từ việc trình bày các nguyên tắc cần thiết để phân biệt một khái niệm là tập
thực thể hay thuộc tính đến việc trình bày hình ảnh dữ liệu bằng mô hình thực thể kết hợp.
Nó cũng đào sâu vào các khía cạnh tập thực thể cha con, mối kết hợp một ngôi, mối kết
hợp ba ngôi, nhiều mối kết hợp giữa các tập thực thể. Tài liệu có nhiều ví dụ cụ thể dễ hiểu
từ đơn giản đến phức tạp.
Dù đã cố gắng hết sức, tài liệu cũng không thể tránh khỏi những thiếu sót, rất mong sư đóng
góp của các bạn.
Mọi góp ý xin gởi về Th.S. Trần Đắc Phiến Bộ môn Hệ thống thông tin trường Đại học
Công nghiệp Tp Hồ Chí Minh.
Chúng tôi chân thành cám ơn sự động viên và đóng góp ý kiến của các bạn đồng nghiệp
trong quá trình biên soạn tài liệu.
Giáo trình Phân tích thiết Kế Hệ Thống
2
M ỤC L ỤC
Chương 1 : PHƯƠNG PHÁP LUẬN PHÁT TRIỂN HỆ THỐNG THÔNG TIN 3
Chương 2 : KHẢO SÁT HIỆN TRẠNG XÁC ĐỊNH YÊU CẦU HỆ THỐNG 21
Chương 3 : MÔ HÌNH NGHIỆP VỤ CỦA HỆ THỐNG 32
Chương 4 : MÔ HÌNH HÓA QUÁ TRÌNH XỬ LÝ 42
Chương 5 : MÔ HÌNH HÓA LOGIC TIẾN TRÌNH 57
Chương 6 : GIỚI THIỆU VỀ MÔ HÌNH HÓA DỮ LIỆU 65
Chương 7 : MÔ HÌNH QUAN HỆ 79
Chương 8 : PHÂN TÍCH DỮ LIỆU VÀ YÊU CẦU CHỨC NĂNG 89
Chương 9 : TÍNH BẮT BUỘC, KHÔNG BẮT BUỘC TRONG MỐI KẾT HỢP 96
Chương 10 : TẬP THỰC THỂ CHA VÀ TẬP THỰC THỂ CON 104
Chương 11 : MỞ RỘNG KHÁI NIỆM MỐI KẾT HỢP 113
Chương 12 : SỰ CHUẨN HÓA 123
CÁC TRƯỜNG HỢP NGHIÊN CỨU 132
oOo
Giáo trình Phân tích thiết Kế Hệ Thống
3
Chương 1 : PHƯƠNG PHÁP LUẬN PHÁT TRIỂN HỆ THỐNG THÔNG TIN
1.1. Khái niệm và thống thông tin
Phát triển một HTTT là một quá trình tạo ra một HTTT cho một tổ chức. Quá trình đó bắt đầu từ khi
nêu vấn đề cho đến khi đưa hệ thống vào vận hành trong tổ chức. Với thực tiễn của nhiều năm xây dựng
các HTTT, những cơ sở phương pháp luận phát triển HTTT đã không ngừng được hoàn thiện và bổ sung
cho phù hợp với sự phát triển của công nghệ và các điều kiện môi trường đã biến đổi.
1.1.1 Khái niệm và định nghĩa
Có nhiều định nghĩa về HTTT khác nhau. Về mặt kỹ thuật, HTTT được xác định như một tập hợp các
thành phần được tổ chức để thu thập, xử lý, lưu trữ, phân phối và biểu diễn thông tin và thông tin trợ giúp
việc ra quyết định và kiểm soát trong một tổ chức. Ngoài các chức năng kể trên, nó còn có thể giúp người
quản lý phân tích các vấn đề, cho phép nhìn thấy được một cách trực quan những đối tượng phức tạp, tạo
ra các sản phẩm mới.
Dữ liệu (data) là những mô tả về sự vật, con người và sự kiện trong thế giới mà chúng ta gặp bằng
nhiều cách thể hiện khác nhau.
Thông tin (Information) cũng nhu dữ liệu, thông tin có rất nhiều cách định nghĩa khác nhau. Một định
nghĩa bao trùm hơn cả xem thông tin là dữ liệu được đặt vào một ngữ cảnh với một hình thức thích hợp và
có lợi cho nhười sử dụng cuối cùng.
Các hoạt động thông tin (information activitties) là các hoạt động xảy ra trong một HTTT, bao gồm cả
việc nắm bắt, xử lý, phân phối, lưu trữ, trình diễn dữ liệu và kiểm tra các hoạt động trong HTTT.
Xử lý (processing) được hiểu là các hoạt động lên dữ liệu như tính toán, so sánh, sắp xếp, phân loại và
tổng hợp…
1.1.2 Hệ thống thông tin quản lý
Trong các HTTT, HTTT quản lý được biết đến sớm và phổ biến nhất. Đối tượng phục vụ của HTTT
quản lý thực sự rộng hơn rất nhiều so với ý nghĩa của bản thân tên gọi của nó. HTTT quản lý là sự phát
triển và sử dụng HTTT có hiệu quả trong một tổ chức (Keen, Peter GW một người đứng đầu trong lĩnh
vực nầy).
Hình 1.1. Các yếu tố cấu thành của HTTT
Năm yếu tố cấu thành của HTTT quản lý xét ở trạng thái tĩnh là: thiết bị tin học (máy tính, các thiết bị,
các đường truyền…- phần cứng), các chương trình (phần mềm), dữ liệu, thủ tục-quy trình và con người
(hình 1.1). Các định nghĩa về HTTT trên đay giúp cho việc định hướng quá trình phân tích, thiết kế hệ
thống. Tuy vậy, sự mô tả này là chưa đủ, cần đi sâu phân tích hệ thống cụ thể mới có sự hiểu biết đầy đủ về
hệ thống thực và cho phép xây dựng cơ sở dữ liệu, các chương trình và việc bố trí các thành phần bên trong
nó.
1.1.3. Phân loại hệ thống thông tin
Dưới đây trình bày một cách phân loại HTTT với các loại sau :
a. Hệ thống tự động văn phòng
Giáo trình Phân tích thiết Kế Hệ Thống
4
Hệ thống tự động văn phòng là HTTT gồm máy tính với các hệ phần mềm như hệ xử lý văn bản, hệ
thư tín điện tử, hệ thống lập lịch làm việc, bảng tính, chương trình trình diễn báo cáo cùng các thiết bị khác
như máy Fax, điện thoại tự ghi,… chúng được thiết lập nhằm tự động hóa công việc ghi chép, tạo văn bản
và giao dịch bằng lời, bằng văn bản làm tăng năng suất cho những người công tác văn phòng.
b. Hệ thống truyền thông
Hệ thống truyền thông giúp cho việc thực hiện các trao đổi thông tin giữa các thiết bị dưới các hình
thức khác nhau với những khoảng cách xa dễ dàng, nhanh chóng và có chất lượng. Hệ thống này đóng vai
trò phục vụ cho các HTTT quản lý, hệ trợ giúp điều hành và các hệ khác hoạt động hiệu quả.
c. Hệ thống xử lý giao dịch
Hệ thống xử lý giao dịch la một HTTT nghiệp vụ. Nó phục vụ cho hoạt động của tổ chức ở mức vận
hành. Nó thực hiện việc ghi nhận các giao dịch hàng ngày cần thiết cho hoạt động nghiệp vụ của tổ chức
để giao dịch với khách hàng, nhà cung cấp, những người cho vay vốn…như hệ thống lập hóa đơn bán
hàng. Nó là HTTT cung cấp nhiều dữ liệu nhất cho các hệ thống khác trong tổ chức.
d. Hệ cung cấp thông tin thực hiện
Hệ thống này có từ rất sớm, nó cung cấp các thông tin thực hiện các nhiệm vụ trong tổ chức. Nó là hệ
máy tính nhằm tổng hợp và làm các báo cáo về quá trình thực hiện công việc ở các bộ phận trong những
khoảng thời gian nhất định. Các tổng hợp, báo cáo được thực hiện theo mẫu với nội dung, quy trình tổng
hợp rất đơn giản, rõ ràng và có định hạn thời gian.
e. Hệ thống thông tin quản lý
Hệ thống thông tin quản lý trợ giúp các hoạt động quản lý của tổ chức như lập kế hoạch, kiểm tra thực
hiện, tổng hợp và làm các báo cáo, làm các quyết định quản lý trên cơ sở các quy trình thủ tục cho trước.
Nhìn chung, nó sử dụng dữ liệu từ các hệ xử lý giao dịch và tạo ra các báo cáo định kỳ hay theo yêu cầu.
Hệ này không mềm dẻo và ít có khả năng phân tích…
f. Hệ trợ giúp quyết định
Hệ trợ giúp quyết dịnh là hệ máy tính được sử dụng ở mức quản lý của tổ chức. Nó có nhiệm vụ tổng
hợp các dữ liệu và tiến hành các phân tích bằng các mô hình để trợ giúp cho các nhà quản lý ra những
quyết định có quy trình (bán cấu trúc) hay hoàn toàn không có quy trình biết trước (không có cấu trúc). Nó
phải sử dụng nhiều loại dữ liệu khác nhau nên các cơ sở dữ liệu phải được tổ chức và liên kết tốt. Hệ còn
có nhiều phương pháp xử lý (các mô hình khác nhau) được tổ chức để có thể sử dụng linh hoạt. Các hệ này
thường được xây dựng chuyên dụng cho mỗi tổ chức cụ thể mới đạt hiệu quả cao.
g. Hệ chuyên gia
Hệ chuyên gia là một hệ trợ giúp ở mức chuyên sâu. Ngoài những kiến thức, kinh nghiệm của các
chuyên gia, và các luật suy diễn nó còn có thể trang bị các thiết bị cảm nhận để thu các thông tin từ những
nguồn khác nhau. Hệ có thể xử lý, và dựa vào các luật suy diễn để đưa ra những quyết định rất hữu ích và
thiết thực. Sự khác biệt cơ bản của hệ chuyên gia với hệ hổ trợ quyết định là ở chỗ: Hệ chuyên gia yêu cầu
những thông tin xác định đưa vào để đưa ra quyết định có chất lượng cao trong một lĩnh vực hẹp.
h. Hệ trợ giúp điều hành
Hệ trợ giúp điều hành được sử dụng ở mức quản lý chiến lược của tổ chức. Nó được thiết kế hướng sự
trợ giúp cho các quyết định không cấu trúc bằng việc làm ra các đồ thị phân tích trực quan và các giao dịch
rất thuận tiện với môi trường. Hệ được thiết kế để cung cấp hay chắt lọc các thông tin đa dạng lấy từ môi
trường hay từ các hệ thông tin quản lý, hệ trợ giúp quyết định…
i. Hệ trợ giúp làm việc theo nhóm
Trong điều kiện nhiều người cùng tham gia thực hiện một nhiệm vụ, hệ này cho phương tiện trợ giúp
sự trao đổi trực tuyến các thông tin giữa các thành viên trong nhóm, làm rút ngắn sự ngăn cách giữa họ cả
về không gian và thời gian.
k. Hệ thống thông tin tích hợp
Một HTTT của tổ chức thường gồm một vài loại HTTT cùng được khai thác. Có như vậy mới đáp ứng
được mục tiêu của tổ chức. Điều này cho thấy, cần phải tích hợp nhiều HTTT khác loại để đảm bảo sự
hoạt động hiệu quả của tổ chức. Việc tích hợp các HTTT trong một tổ chức có thể tiến hành theo hai cách:
xây dựng một hệ thông tin tích hợp tổng thể hoặc tích hợp các hệ đã có bằng việc ghép nối chúng nhờ các
“cầu nối”. Việc sử dụng các hệ tích hợp tổng thể thường tổ chức đến một hệ thống tập trung, một sư phối
Giáo trình Phân tích thiết Kế Hệ Thống
5
hợp và kiểm soát chặt chẽ. Nhưng chúng cũng tạo ra sức ỳ về quản lý, và sự quan liêu trong hoạt động và
khó thay đổi. Khi sự tập trung của một HTTT đã đạt đến một điểm bão hòa, nhiều tổ chức bắt đầu cho các
bộ phận của mình tiếp tục phát triển những hệ con với các đặc thù riêng.
1.1.4. Tại sao một tổ chức cần phát triển HTTT
Việc xây dựng HTTT thực sự là một giải pháp cứu cánh trong cuộc cạnh tranh cùng các đối thủ của
nhiều doanh nghiệp và nó được xem đó là một giải pháp hữu hiệu cho nhiều vấn đề mà tổ chức gặp phải.
Thực tế cho thấy, một tổ chức thường xây dựng HTTT khi họ gặp phải những vấn đề làm cản trở hoặc hạn
chế không cho phép họ thực hiện thành công những điều mong đợi, hay muốn có những ưu thế mới, những
năng lực mới để có thể vượt qua những thách thức và chớp cơ hội trong tương lai. Cuối cùng là do yêu cầu
của đối tác.
Xây dựng HTTT không đơn thuần chỉ là một giải pháp kỹ thuật. Nó là một bộ phận quan trọng trong
chiến lược tổng thể phát triển của tổ chức, tức là cần tiến hành đồng thời, đồng bộ với nhiều giải pháp
khác. Vì vậy cần có một lộ trình để chuyển dịch tổ chức cả về mặt tổ chức và quản lý từ trạng thái hiện tại
đến một trạng thái tương lai để thích hợp với một HTTT mới được thiết lập.
1.1.5. Những nội dung cơ bản của việc phát triển HTTT
Ba vấn đề lớn liên quan đến quá trình phát triển một HTTT là :
- Các hoạt động phát triển một HTTT và trình tự thực hiện chúng (được gọi là phương pháp luận phát
triển hệ thống)
- Các phương pháp, công nghệ và công cụ được sử dụng.
- Tổ chức và quản lý quá trình phát triển một HTTT
Sau đây sẽ trình bày lần lượt các nội dung này.
1.2. Tiến hóa của cách tiếp cận phát triển HTTT
Phát triển HTTT dựa trên máy tính bắt đầu từ những năm 1950. Cho đến nay đã hơn năm mươi năm
phát triển. Nhiều công nghệ mới về phần cứng, phần mềm không ngừng phát triển, nhiều vấn đề mới của
thực tế luôn luôn đặt ra. Vì vậy, cách tiếp cận phát triển một HTTT cũng thay đổi. Ta có thể kể đến bốn
cách tiếp cận chính để phát triển một HTTT:
- tiếp cận định hướng tiến trình,
- tiếp cận định hướng dữ liệu,
- tiếp cận định hướng cấu trúc và
- tiếp cận định hướng đối tượng.
Trừ cách tiếp cận đầu tiên, mỗi cách tiếp cận sau đều gắn với việc giải quyết những vấn đề đặt ra và sự
phát triển của một công nghệ mới.
1.2.1. Tiếp cận định hướng tiến trình
Thời gian đầu khi máy tính mới ra đời, tốc độ máy rất chậm, bộ nhớ làm việc còn rất nhỏ nên người ta
tập trung vào các quá trình mà phần mềm phải thực hiện. Vì vậy, hiệu quả xử lý các chương trình trở thành
mục tiêu chính. Tất cả sự cố gắng lúc đó là tự động hóa các tiến trình đang tồn tại (như mua hàng, bán
hàng…) của những bộ phận chương trình riêng rẽ. Lúc này người ta đặc biệt quan tâm đến các thuật toán
(phần xử lý) để giải được bài toán đặt ra và cách sử dụng khéo léo bộ nhớ làm việc rất hạn hẹp. Các dữ liệu
được tổ chức trong cùng một tập tin với chương trình.
Hình 1.2. Mối quan hệ giữa dữ liệu và ứng dụng theo cách tiếp cận truyền thống
Sau này, với sự tiến bộ về khả năng lưu trữ, các tập tin dữ liệu được tổ chức tách biệt với chương trình.
Mặc dù vậy, thiết kế một HTTT vẫn dựa trên trình tự mà nó sẽ thực hiện. Đối với cách tiếp cận này, phần
lớn các dữ liệu được lấy trực tiếp từ các nguồn của nó qua từng bước xử lý. Những phần khác nhau của
Giáo trình Phân tích thiết Kế Hệ Thống
6
HTTT làm việc theo những sơ đồ khác nhau và tốc độ khác nhau. Kết quả là, tồn tại một số tập tin dữ liệu
tách biệt trong những ứng dụng và chương trình khác nhau, và dẫn đến có nhiều tập tin trong những ứng
dụng khác nhau có thể chứa cùng các phần tử dữ liệu như nhau (hình 1.2). Mỗi khi một phần tử riêng lẻ
thay đổi hay có sự thay đổi trong một tiến trình xử lý thì kéo theo phải thay đổi các tập tin dữ liệu tương
ứng. Việc tổ hợp các tập tin dữ liệu chuyên biệt cũng rất khó khăn, vì mỗi tập tin mang tên và định dạng dữ
liệu khác nhau. Cách tiếp cận này tạo ra sự dư thừa dữ liệu, hao phí qua nhiều công sức cho việc thu thập
và tổ chức dữ liệu, và các dữ liệu sử dụng kém hiệu quả do không thể chia sẻ giữa các ứng dụng với nhau.
1.2.2. Tiếp cận định hướng dữ liệu
Tiếp cận này tập trung vào việc tổ chức các dữ liệu một cách lý tưởng. Khi sự quan tâm chuyển sang
dữ liệu, phạm vi ứng dụng đã mở rộng đến nhiều quá trình của HTTT, nó bao gồm nhiều bộ phận của một
tổ chức: như nhà cung cấp, những người điều hành, khách hàng, đối thủ cạnh tranh. Hai ý tưởng chính của
cách tiếp cận này la:
-Tách dữ liệu ra khỏi các quá trình xử lý
-Tổ chức cơ sở dữ liệu chung cho các ứng dụng
Hình 1.3. Cấu trúc hệ thống hướng dữ liệu
Công nghệ quản lý dữ liệu tiến bộ cho phép biểu diễn dữ liệu thành các tập tin riêng biệt và tổ chức
chúng thành những cơ sở dữ liệu dùng chung. Một cơ sở dữ liệu là một tập các dữ liệu logic với nhau được
tổ chức làm dễ dàng việc thu thập, lưu trữ và lấy ra của nhiều người dùng trong một tổ chức. Nhờ việc tách
dữ liệu để tổ chức riêng và tập trung, người ta có thể áp dụng các công cụ toán học (lý thuyết tập hợp và
logic) để tổ chức dữ liệu một cách tối ưu về cả phương diện lưu trữ (tiết kiệm không gian nhớ) cũng như về
mặt sử dụng: giảm dư thừa, tìm kiếm thuận lợi, lấy ra nhanh chóng và sử dụng chung. Việc tổ chức dữ liệu
như trên cho phép cơ sở dữ liệu phục vụ cho nhiều ứng dụng độc lập khác nhau.
1.2.3. Tiếp cận định hướng cấu trúc
Tiếp cận định hướng cấu trúc như một bước phát triển tiếp tục của định hướng dữ liệu. Nhiều tài liệu
thường gộp hai cách tiếp cận này làm một và gọi là tiếp cận hướng dữ liệu chức năng. Tiếp cận hướng cấu
trúc hướng vào việc cải tiến cấu trúc cá chương trình dựa trên cơ sở modun hóa để dễ theo dõi, quản lý,
bảo trì. Phát triển hướng cấu trúc đề cập đến quá trình sử dụng một cách có hệ thống và tích hợp các công
cụ và kỹ thuật để trợ giúp thiết kế phân tích HTTT theo hướng modun hóa.
Các phương pháp luận hướng cấu trúc sử dụng một hay một số công cụ để xác định luồng thông tin và
các quá trình xử lý. Việc xác định và chi tiết hóa dần các luồng dữ liệu và các tiến trình là ý tưởng cơ bản
của phương pháp luận từ trên xuống (Top-down). Từ mức o: mức chung nhất, quá trình tiếp tục làm mịn
cho đến mức thấp nhất: mức cơ sở. Ở đó từ các sơ đồ nhận được ta có thể bắt đầu tạo lập các chương trình
với các modun thấp nhất (modun lá)
Giáo trình Phân tích thiết Kế Hệ Thống
7
Hình 1.4. Cấu trúc hệ thống định hướng cấu
Phát triển có cấu trúc đã cung cấp một tập hợp đầy đủ các đặc tả hệ thống không dư thừa được phát
triển theo quá trình logic và lặp lại. Nó cho ta nhiều lợi ích so với cách tiếp cận trước đó:
a) Làm giảm sự phức tạp (nhờ chia nhỏ, modun hóa)
b) Tập trung vào ý tưởng (vào logic, kiến trúc trước khi thiết kế)
c) Chuẩn mực hóa (theo các phương pháp, công cụ đã cho)
d) Hướng về tương lai (kiến trúc tốt, modun hóa dễ bảo trì)
e) Giảm bớt tính nghệ thuật trong thiết kế
1.2.4.Tiếp cận định hướng đối tượng
Tiếp cận định hướng đối tượng là cách mới nhất để phát triển HTTT. Cách tiếp cận này dựa trên ý
tưởng xây dựng một hệ thống gồm các đơn thể được gọi là đối tượng liên kết với nhau bằng mối quan hệ
truyền thông. Các đối tượng thường tương ứng với các thực thể trong HTTT như khách hàng, nhà cung
cấp, hợp đồng, thỏa thuận thuê. Mục tiêu của cách tiếp cận này là làm cho các phân tử của hệ thống trở
nên độc lập tương đối với nhau và có thể dùng lại. Điều đó đã cải thịên cơ bản chất lượng của hệ thống và
làm tăng năng suất hoạt động phân tích và thiết kế.
Hình 1.5 Cấu trúc hệ thống hướng đối tượng
Giáo trình Phân tích thiết Kế Hệ Thống
8
Ý tưởng khác nằm phía sau của cách tiếp cận này là sự thừa kế và bao gói thông tin. Các đối tượng có
cùng cấu trúc và hành vi được tổ chức thành từng lớp. Kế thừa cho phép tạo ra các lớp mới có chung với
các lớp đang tồn tại một số đặc trưng và có thêm các đặc trưng mới. Nhờ vậy mà sự mô tả lớp mới chỉ liên
quan đến những đặc trưng mới. Do bao gói cả dữ liệu và xử lý trong một đối tượng làm cho hoạt động của
nó không ảnh hưởng đến các đối tượng khác. Rõ ràng rằng, với cơ chế bao gói thông tin và liên kết qua
truyền thông, hệ thống được “lắp ghép” và “tháo dỡ” đơn giản, dễ bảo trì, dễ sử dụng lại và có thể đạt
được quy mô tùy ý. Cách tiếp cận mới này đáp ứng được nhũng yêu cầu và thách thức cơ bản hiện nay là
phát triển các hệ thống phần mềm có quy mô lớn, phức tạp hơn, nhanh hơn, dễ bảo trì và chi phí chấp nhận
được.
1.4. Vòng đời phát triển một thống thông tin
HTTT được xây dựng là sản phẩm của một loạt các hoạt động được gọi là phát triển hệ thống. Quá
trình phát triển một HTTT kể từ lúc nó sinh ra đến khi nó tàn lụi được gọi là vòng đời phát triển hệ thống.
Vòng đời phát triển các hệ thống là một phương pháp lụân cho việc phát triển các HTTT. Nó được đặc
trưng bằng một số pha chủ yếu phân biệt nhau của quá trình đó: phân tích, thiết kế và triển khai HTTT.
Tác giả của nhiều cuốn sách hay nhiều tổ chức phát triển các HTTT thường sử dụng những mô hình vòng
đời khác nhau và mỗi vòng đời có thể gồm từ ba đến hai chục pha khác nhau cho một phương pháp luận
phát triển cụ thể.
Một trong nhiều mô hình vòng đời đã sắp xếp các bước phát triển hệ thống theo mõ hình bậc thang với
các mũi tên nối mỗi bước với bước sau nó. Cách biểu diễn này được xem như tương ứng với mô hình thác
nước. Mô hình này sẽ được sử dụng để trình bày về phương pháp luận chung - một quá trình phát triển một
hệ thống với các pha: khởi tạo và lập kế hoạch, phân tích, thiết kế, triển khai, vận hành và bảo trì HTTT :
ở mỗi pha đều có cái vào và cái ra. Chúng thể hiện mối quan trọng giữa các pha với nhau. Ở cuối mỗi pha
cần đạt đến một cột mốc được đánh dấu bằng những tài liệu cần được tạo ra để các bộ phận quản lý xem
xét, đánh giá và phê duyệt. Đó là một đặc trưng của quá trình quản lý sự phát triển.
1.4.1. Khởi tạo và lập kế hoạch dự án
Việc hình thành dự án như một yêu cầu bắt buộc để có thể tiến hành những bước tiếp theo của quá trình
phát triển: Không có dự án thì cũng không có việc xây dựng HTTT
Hai hoạt động chính trong khởi tạo và lập kế hoạch dự án là phát hiện ban đầu chính thức về những
vấn đề của hệ thống và các cơ hội của nó; trình bày rõ lý do vì sao tổ chức cần hay không cần phát triển
HTTT. Tiếp đến là xác định phạm vi cho hệ thống dự kiến. Một kế hoạch dự án phát triển HTTT được dự
kiến về cơ bản được mô tả theo dòng đời phát triển hệ thống, đồng thời cũng đưa ra ước lượng thời gian và
các nguồn lực cần thiết cho việc thực hiện nó. Hệ thống dự kiến phải giải quyết được những vấn đề đặt ra
của tổ chức hay tận dụng được những cơ hội có thể trong tương lai mà tổ chức gặp, và cũng phải xác định
chi phí phát triển hệ thống và lợi ích mà nó sẽ mang lại cho tổ chức.
Hình 1.3. Mô hình thác nước của vòng đời hệ thống
Giáo trình Phân tích thiết Kế Hệ Thống
9
Trong pha này cần xác định cái gì là cần thiết cho hệ thống mới hay hệ thống sẽ được tăng cường. Tại
đây các nhu cầu HTTT tổng thể của tổ chức được xác định, nó thể hiện ra bằng các dịch vụ mà hệ thống dự
kiến cần phải thực hiện. Chúng đựoc phân tích, thiết lập sự ưu tiên và sắp xếp lại rồi chuyển thành một kế
hoạch để phát triển HTTT, trong đó bao gồm cả lịch trình phát triển hệ thống và các chi phí tương ứng. Tất
cả nội dung trên đây thường được gọi là nghiên cứu hệ thống. Sau khi nghiên cứu hệ thống phải đưa ra một
kế hoạch dự án cơ sở. Kế hoạch dự án này cần được phân tích đảm bảo tính khả thi trên ba mặt:
Khả thi kỹ thuật: xem xét khả năng kỹ thuật hiện có (về thiết bị, về công nghệ và khả năng làm chủ
công nghệ) đủ đảm bảo thực hiện các giải pháp công nghệ thông tin được áp dụng để phát triển hệ thống.
Khả thi kinh tế: thể hiện trên các nội dung sau:
- Khả năng tài chính của tổ chức cho phép thực hiện dự án: bao gồm nguồn vốn và số vốn có thể
huy động trong thời hạn cho phép.
- Lợi ích mà hệ thống được xây dựng mang lại, ít nhất là đủ bù đắp chi phí phải bỏ ra xây dựng nó
(chi phí đầu tư ban đầu).
- Những chi phí thường xuyên cho hệ thống hoạt động (chi phí vận hành) là chấp nhận được đối với
tổ chức.
Khả thi về thời gian: dự án được phát triển trong thời gian cho phép, tiến trình thực hiện dự án được chỉ
ra trong giới hạn đã cho.
Khả thi pháp lý và hoạt động: Hệ thống có thể vận hành trôi chảy trong khuôn khổ của tổ chức và điều
kiện quản lý mà tổ chức có và trong khuôn khổ của pháp lý hiện hành. Ngoài các phân tích trên người ta
còn phân tích một số khả thi khác.
Khi dự án được chấp nhận, thì đối tượng tổng quát của dự án như phạm vi của dự án, kế hoạch triển
khai dự án phải được vạch ra và thông qua để triển khai.
1.4.2. Phân tích hệ thống
Phân tích hệ thống nhằm xác định nhu cầu thông tin của tổ chức. Nó sẽ cung cấp những dữ lịêu cơ sở
cho việc thiết kế HTTT sau này. Trước đó cần tiến hành khảo sát hiện trạng của tổ chức thuộc phạm vi liên
quan đến dự án. Những dữ liệu thu được phục vụ cho việc xây dựng mô hình quan niệm về hệ thống hiện
thời: mô hình bao gồm mô hình dữ liệu và mô hình xử lý của hệ thống cùng các tài liệu bổ sung khác.
Phân tích bao gồm một vài pha nhỏ: trước hết xác định yêu cầu: các nhà phân tích làm việc cùng với
người sử dụng để xác định cái gì người dùng chờ đợi từ hệ thống dự kiến. Tiếp theo là nghiên cứu yêu cầu
và cấu trúc nó phù hợp với mối quan hệ bên trong, bên ngoài và những giới hạn đặt lên các dịch vụ cần
thực hiện. Thứ 3 là tìm giải pháp cho các thiết kế ban đấu để đạt được yêu cầu đặt ra, so sánh để lựa chọn
giải pháp thiết kế tốt nhất đáp ứng các yêu cầu với chi phí, nguồn lực, thời gian và kỹ thuật cho phép để tổ
chức thông qua.
1.4.3. Thiết kế hệ thống
Thiết kế là tìm ra các giải pháp công nghệ thông tin để đáp ứng các yêu cầu đặt ra ở trên. Đặc tả giải
pháp cho các yêu cầu ở pha trước được chuyển thành đặc tả hệ thống logic rồi là đặc tả vật lý. Từ các khía
cạnh của hệ thống, thiết kế được xem xét bắt đầu từ màn hình tương tác, các cái vào và cái ra (các báo cáo)
đến cơ sở dữ liệu và các tiến trình xử lý chi tiết bên trong. Pha thiết kế này gồm hai pha nhỏ: thiết kế logic
và thiết kế vật lý.
Thiết kế logic. Về mặt lý thuyết, thiết kế hệ thống logic không gắn với bất kỳ phần cứng và phần mềm
của hệ thống nào. Thiết kế logic tập trung vào các khía cạnh nghiệp vụ của hệ thống thực vì vậy một vài
phương pháp luận vòng đời còn gọi pha này là pha thiết kế nghiệp vụ. Các đối tượng và quan hệ được mô
tả ở đây là những khái niệm, các biểu tượng mà không phải các thực thể vật lý.
Thiết kế vật lý là quá trình chuyển mô hình logic trừu tượng thành bản thiết kế vật lý hay các đặc tả kỹ
thuật. Những phần khác nhau của hệ thống được gắn vào bằng những thao tác và thiết bị vật lý cần thiết để
tiện lợi cho việc thu thập dữ liệu, xử lý và đưa ra thông tin cần thiết cho tổ chức.
Trong pha thiết kề vật lý cần phải quyết định lựa chọn ngôn ngữ lập trình, hệ cơ sở dữ liệu, cấu trúc
tập tin tổ chức dữ liệu, những phần cứng, hệ điều hành và môi trường mạng cần được xây dựng. Sản phẩm
cuối cùng của pha thiết kế là đặc tả hệ thống vật lý ở dạng như nó tồn tại trên thực tế, sao cho các nhà lập
trình và kỹ sư phần cứng có thể dễ dàng chuyển thành chương trình và cấu trúc hệ thống.
Giáo trình Phân tích thiết Kế Hệ Thống
10
1.4.4. Triển khai hệ thống
Trong pha này, đặc tả hệ thống được chuyển thành hệ thống vận hành được, sau đó được kiểm tra và
đưa vào sử dụng. Bước triển khai bao gồm việc lập ra các chương trình, tiến hành kiểm thử, lắp đặt thiết
bị, cài đặt chương trình và chuyển đổi hệ thống.
a.Tạo lập các chương trình
Trước hết cần lựa chọn phần mềm (platfrorm: hệ điều hành, hệ quản trị cơ sở dữ liệu, ngôn ngữ lập
trình, phần mềm mạng. Trong nhiều trường hợp, ngôn ngữ lập trình có thể chính là ngôn ngữ của hệ quản
trị cơ sở dữ liệu hay của hệ ứng dụng được sử dụng). Sau đó chọn các phầm mềm đóng gói. Cuối cùng
chuyển các đặc tả thiết kế còn lại thành các phần mềm (các chương trình) cho máy tính. Chương trình được
tiến hành kiểm thử cho đến khi đạt yêu cầu đề ra. Quá trình kiểm thử bao gồm kiểm thử các modun chức
năng (kiểm thử đơn vị), các hệ thống con (kiểm thử tích hợp), sự hoạt động của cả hệ thống (kiểm thử hệ
thống) và nghiệm thu cuối cùng (kiểm thử chấp nhận).
b. Cài đặt và chuyển đổi hệ thống
Quá trình chuyển đổi bao gồm việc cài đặt các chương trình trên hệ thống phần cứng đang tồn tại hay
hệ thống phần cứng mới lắp đặt, chuyển đổi toàn bộ hoạt động của tổ chức cũ sang hoạt động với hệ thống
mới (bao gồm việc chuyển đổi dữ liệu, sắp xếp đội ngũ cán bộ trên hệ thống mới và đào tạo ngưới sử dụng,
khai thác hệ thống). Chuẩn bị các tài lịêu chi tiết thuyết minh về việc khai thác và sử dụng hệ thống (cả về
mặt kỹ thuật, về hệ thống và tại nơi làm việc của người sử dụng). Nó cần được hoàn tất trong thời gian
chuyển đổi để phục vụ việc đào tạo và đảm bảo hoạt động hàng ngày (bảo trì) của hệ thống sau này.
1.4.5. Vận hành và bảo trì
Khi hệ thống được lắp đặt và chuyển đổi toàn bộ, giai đoạn vận hành bắt đầu. Trong thời gian này,
người sử dụng và các chuyên viên kỹ thuật vận hành cần đánh giá xem hệ thống đáp ứng các mục tiêu đề
ra ban đầu hay không, đề xuất những sửa đổi, cải tiến, bổ sung.
Khi hệ thống đi vào hoạt động, đôi khi người dùng thường mong muốn hệ thống phải làm việc một
cách hoàn hảo và các chức năng của hệ thống làm việc tốt hơn. Mặt khác, tổ chức thường xuyên có những
yêu cầu để đáp ứng những thay đổi nảy sinh. Vì vậy, các nhà thiết kế và lập trình cần phải thực hiện những
thay đổi hệ thống ở mức độ nhất định (mà không phải tất cả) để đáp ứng nhu cầu người sử dụng cũng nhu
những đề nghị của tổ chức. Những thay đổi này là cần thiết để làm cho hệ thống hoạt động hiệu quả.
Bảo trì không phải là một pha tách biệt mà là sự lặp lại các pha của một vòng đời khác, đòi hỏi phải
nghiên cứu và áp dụng những thay đổi cần thiết. Tổng số thời gian và sự nỗ lực dành cho bảo trì phụ thuộc
rất lớn vào sự hoàn thiện của các pha trước thuộc vòng đời. Khi chi phí bảo trì trở nên quá lớn, yêu cầu
thay đổi của tổ chức là đáng kể, khả năng đáp ứng của hệ thống cho tổ chức và người dùng trở nên hạn
chế, những vấn đề cho thấy đã đến lúc phải kết thúc hệ thống cũ và bắt đầu một vòng đời khác. Thông
thường, sự phân biệt giữa việc bảo trì có qui mô lớn và sự phát triển một hệ thống mới là không rõ ràng.
1.5. Các phương pháp khác nhau phát triển HTTT
1.5.1. Vòng đời phát triển hệ thống truyền thống
Vòng đời phát triển hệ thống truyền thống là phương pháp luận ra đời sớm nhất và đến nay vẫn được sử
dụng rộng rãi. Theo phương pháp này, HTTT có một vòng đời tương tự như một thực thể bất kỳ: có giai
đoạn bằt đầu, giai đoạn phát triển, giai đoạn trưởng thành và giai đoạn kết thúc. Quá trình phát triển HTTT
gồm sáu giai đoạn: xác định dự án, nghiên cứu hệ thống, thiết kế, lập chương trình, cài đặt, và áp dụng
(hình 1.6). Mỗi giai đoạn gồm các hoạt động cơ bản cần phải hoàn thành trước khi bắt đầu giai đoạn sau.
Các giai đoạn được thực hiện lần lượt với một sự phân công lao động rõ ràng giữa những người sử dụng và
các chuyên gia kỹ thuật.
Giáo trình Phân tích thiết Kế Hệ Thống
11
Triển
khai
Hình 1.6. Mô tả phát triển HTTT theo vòng đời truyền thống
a. Các pha phát triển
Về cơ bản nội dung các bước ở đây gần giống với nội dung của mô hình chung phát triển hệ thống đã
trình bày ở trên. Ở giai đoạn phân tích thường hình thành một báo cáo gọi là nghiên cứu hệ thống. Trong
pha thiết kế đặc biệt nhấn mạnh tới các đặc tả hình thức hóa, cho nên rất nhiều công cụ thiết kế và làm tài
liệu khác nhau đươc sử dụng, như các sơ đồ luồng dữ liệu, sơ đồ khối cấu trúc chương trình, các mô hình
và thuật toán toán học…
b. Nhận xét và đánh giá
Phương pháp vòng đời hệ thống thích hợp để xây dựng các hệ thống xử lý giao dịch lớn (TPS) và các
hệ thông tin quản lý (MIS) mà ở đó đòi hỏi hệ thống có cấu trúc và xác định chặt chẽ. Nó cũng thích hợp
cho các hệ thống kỹ thuật phức tạp như hệ thống phóng tàu vũ trụ, kiểm soát hoạt động hàng không.
Những áp dụng như vậy đòi hỏi một sự phân tích hình thức hóa cao và chặt chẽ, các đặc tả được xác định
trước và việc kiểm tra sát sao trong quá trình xây dựng hệ thống. Vì những lý do đó, phương pháp này
được xem là định hướng tài liệu. Tuy nhiên, phương pháp này có chi phí cao, thời gian thực hiện dài và
không mềm dẻo. Khối lượng các tài liệu lần đầu là rất lớn và sẽ tăng lên rất nhiều nếu như các yêu cầu và
các đặc tả phải làm lại. Rõ ràng rằng, phương pháp này không thích hợp với phần lớn các hệ thống vừa và
nhỏ mà ta thường gặp vào những năm 1990 và thế kỷ 21 sau này.
1.5.2. Phương pháp làm bản mẫu
a. Nội dung phương pháp
Phương pháp này ít hình thức hóa hơn phương pháp vòng đời truyền thống. Thay vào việc tạo ra nhiều tài
liệu đặc tả, phương pháp làm mẫu nhanh chóng tạo ra một mô hình làm việc thực nghiệm để người sử dụng
xem xét, đánh giá. Khi bản mẫu hoàn thiện nó được đem sử dụng cho các bước tiếp theo.
b. Các bước của phương pháp làm bản mẫu.
Bước 1. xác định các yêu cầu của người sử dụng.
Chuyên viên thiết kế hệ thống làm việc với người sử dụng để nắm được yêu cầu thông tin cơ bản cho việc
tạo ra bản mẫu.
Bước 2. Phát triển bản mẫu đầu tiên.
Người thiết kế tạo nhanh một bản mẫu bằng cách sử dụng công cụ phần mềm thế hệ thứ tư (chẳng hạn
công cụ CASE)
Giáo trình Phân tích thiết Kế Hệ Thống
12
Khảo sát, thu thập thông tin sơ bộ
Xây dựng nhanh mẫu ban đầu
Làm mịn (phát triển) mẫu
Khảo sát, lấy ý kiến người sử dụng
Đánh giá,
Quyết định
Hạn chế
Loại bỏ mẫu tồi
Mẫu hoàn chỉnh
Hệ thống đã
hoàn chỉnh ?
Sử dụng thêm
phương pháp khác
Hoàn chỉnh dự án từ
các mẫu thu được
Chưa Đã
Hình 1.7. Sơ đồ phương pháp làm bản mẫu
Bước 3. Sử dụng bản mẫu làm việc với người sử dụng
Bản mẫu được xây dựng đem trình diễn hay cho người sử dụng thử nghiệm. Người sử dụng biết được
bản mẫu đáp ứng nhu cầu của họ như thế nào và đưa ra những đề nghị bổ sung và cải tiến.
Bước 4. Hoàn thiện và tăng cường bản mẫu.
Người thiết kế thay đổi bản mẫu để đáp ứng đòi hỏi mới của người sử dụng và làm mịn hơn bản mẫu
một cách phù hợp trên cơ sở sử dụng các thông tin bổ sung khác. Bước 3 và 4 được lặp lại cho đến khi bản
mẫu thỏa mãn yêu cầu đặt ra. Khi bản mẫu được chấp nhận là hoàn tất đặc tả cuối cùng của ứng dụng.
Làm bản mẫu đặc biệt có lợi khi mà một số yêu cầu thông tin hay giải pháp cho nó còn chưa được xác
định. Nó cũng rất có lợi khi thiết kế giao diện người dùng của HTTT (màn hình nhập liệu, màn hình kiểm
tra, báo cáo). Bản mẫu dễ làm cho người sử dụng phản ứng tự nhiên với những phần của hệ thống mà
người ta sẽ làm việc với nó. Từ đó đóng góp bổ sung làm mau chóng tạo ra hệ thống, và hạn chế được
những chi phí quá đáng của sự phát triển và những sai sót thiết kế. Phương pháp làm mẫu thích hợp nhất
với những hệ thống nhỏ hay những hệ thống lớn có thể chia nhỏ để làm mẫu từng phần.
Việc làm mẫu nhanh cho phép đi qua những bước cơ bản trong phát triển hệ thống một cách dễ dàng,
khuyến khích đội phát triển tiến nhanh lên phía trước đạt đến mô hình làm việc mà không cần nắm bắt
ngay tất cà các nhu cầu thông tin cơ bản.
Nhiều công cụ làm mẫu cho phép chuyển bản mẫu thành hệ thống vận hành một cách tự động. Khi kết
thúc, nếu bản mẫu làm việc hợp lý, công việc quản lý không đòi hỏi phải làm lại chương trình, thiết kế hay
thử nghiệm toàn diện các kết quả của hệ thống. Mặt khác, chính sự tiện lợi này làm khó khăn cho vịêc bảo
trì sau này. Khi mà bản mẫu không có cấu trúc chặt chẽ, việc đảm bảo kỹ thuật có thể không hiệu quả. Vì
bản mẫu được xây dựng với ít công sức, người quản lý có thể nghĩ rằng việc thử nghiệm có thể dành cho
người dùng và những sai sót nhỏ có thể chậm được sửa đổi hơn. Vì hệ thống rất dễ thay đổi, việc làm tài
liệu có thể không kịp thời.
Các mức độ làm bản mẫu khác nhau
Giáo trình Phân tích thiết Kế Hệ Thống
13
Tùy theo công cụ và cách thức tiến hành mà kết quả làm mẫu rất khác nhau:
- Khi tiến hành làm mẫu bằng tay hay bằng một công cụ bình thường, kết quả làm mẫu chỉ đơn thuần cho
một đặc tả yêu cầu.
- Khi làm mẫu với các công cụ chuyên dụng, mọi thông tin được thu thập và lưu trữ trong kho dữ liệu
chung. Bản mẫu cuối cùng là một đặc tả yêu cầu đã được hình thức hóa có thể dùng để tạo sinh ra
chương trình cho hệ thống và vận hành ngay được.
- Một cách làm mẫu ở trình độ cao hơn là sử dụng công cụ chuyên dụng cùng với các thành phần có thể sử
dụng lại có sẵn. Trong trường hợp này, mẫu nhận được cho ta một số modun có thể vận hành ngay được.
Khi liên kết các modun làm mẫu nhận được ta có một hệ thống ban đầu với những chức năng nhất định,
có thể đáp ứng những dịch vụ cơ bản của hệ thống đặt ra.
Ngoài việc xác định nhanh chóng và chính xác yêu cầu, làm bản mẫu tạo ra những cơ sở cho việc ký kềt
hợp đồng, làm khách hàng tin tưởng vào hệ thống được xây dựng, giúp cho việc huấn luyện người dùng hệ
thống ngay từ khi làm bản mẫu.
1.5.3. Mô hình xoắn ốc
Trong những năm gần đây người ta quan tâm đến mô hình xoắn ốc nhiều hơn cả. Mô hình được Boehm
đưa ra năm 1988. Mô hình này đặc biệt quan tâm đến việc phân tích yếu tố rủi ro (định hướng rủi ro). Quá
trình phát triển được chia thành nhiều bước lặp, mỗi bước bước bắt đầu bằng việc lập kế hoạch, phân tích
rủi ro rồi tạo nguyên mẫu, hoàn thiện và phát triển hệ thống, duyệt lại, và cứ thế tiếp tục (hình 1.8)
a. Nội dung phương pháp
Quá trình phát triển hệ thống được tiến hành qua một loạt các bước lặp. Mỗi bước lặp gồm bốn hoạt
động chính:
- Lập kế hoạch: xác định mục tiêu, giải pháp và ràng buộc
- Phân tích rủi ro: phân tích các phương án và xác định/ giải quyết rủi ro
- Kỹ nghệ: phát triển sản phẩm “mức tiếp theo”
- Đánh giá của khách hàng: khẳng định kết quả của kỹ nghệ
Hình 1.8. Mô hình xoắn ốc
Với mỗi lần lặp xoắn ốc (bắt đầu từ trung tâm), các phiên bản được hoàn thiện và bổ sung dần. Nếu
phân tích rủi ro chỉ ra rằng yêu cầu là không chắc chắn thì làm bản mẫu có thể được sử dụng trong góc
phần tư kỹ nghệ. Tại một vòng xoắn ốc, phân tích rủi ro phải đi đến quyết định “tiến hành tiếp hay dừng”.
Nếu rủi ro quá lớn thì có thể đình chỉ dự án. Ngược lại phải có giải pháp cho nó.
Giáo trình Phân tích thiết Kế Hệ Thống
14
Phần kỹ nghệ (góc đông-nam) sử dụng ở mỗi vòng lặp có thể là cách tiếp cận vòng đời hay làm bản
mẫu. Khi các hoạt động phát triển tăng lên, vòng xoáy chuyển xa hơn ra khỏi trung tâm, ta có được một
phiên bản phần mềm mới bao gồm một phạm vi rộng hơn các chức năng của hệ thống cần xây dựng.
b. Đánh giá và nhận xét
Mô hình xoắn ốc là một cách tiếp cận thực tế để phát triển các hệ thống phần mềm quy mô lớn. Trong
đó làm bản mẫu xem như một cơ chế làm giảm bớt rủi ro… Hiệu quả của nó là trông thấy được. Quá trình
lặp và đánh giá rủi ro ở mỗi bước là cơ chế tốt đảm bảo sự thành công của việc xây dựng HTTT (vì rủi ro ở
mỗi bước là nhỏ, dễ nhận ra, dễ khắc phục và nếu xãy ra cũng không ảnh hưởng lớn đến phần đã xây
dựng). Tuy nhiên, việc đánh giá đúng rủi ro cần có chuyên gia và vì thế chi phí cần thiết sẽ không thích
hợp với dự án nhỏ. Hơn thế nữa, sự thay đổi linh hoạt trong phát triển không dễ thực hiện khi mà hợp đồng
đã được ký kết và xác định.
1.5.4. Phương pháp sử dụng phần mềm đóng gói
HTTT có thể phát triển bằng cách sử dụng các gói phần mềm ứng dụng. Đó là những chương trình ứng
dụng viết sẵn ở dạng mã máy dành cho những lớp bài toán cụ thể. Các gói phần mềm ứng dụng phát triển
rất mạnh vì nhiều ứng dụng là chung cho tất cả các tổ chức.
Sau khi phân tích, thiết kế, người ta chọn các gói phần mềm thích hợp. Khi đó tổ chức không cần viết
chương trình, mà chỉ cần cài đặt nó để sử dụng. Việc sử dũng các gói phần mềm ứng dụng đã thực sự rút
ngắn thời gian và chi phí cho việc phát triển một hệ thống mới và chi phí quản lý quá trình phát triển hệ
thống. Người bán còn cung cấp các công cụ hỗ trợ, bảo trì và tăng cường hệ thống làm cho nó có khả năng
phát triển theo kịp tiến bộ công nghệ. Việc cung cấp các tài liệu về phần mềm đóng gói là rất đầy đủ và kịp
thời. Các phần mềm thường hoạt động rất ổn định.
Nhược điểm của gói phần mềm ứng dụng là không đạt được chất lượng kỹ thuật và chức năng cho các
ứng dụng đa mục tiêu và có nhiều đặc thù. Để đáp ứng tối đa nhu cầu thị trường, các gói phần mềm ứng
dụng chỉ đáp ứng những nhu cầu chung nhất của các tổ chức. Vì vậy, nó không thể thay thế các phần mềm
cơ bản. Việc tạo ra các tự chọn, các chương trìng mang tính chuyển đổi phía trước hay phía sau (front-or-
back program: hình 1.9) của các phần xử lý chức năng trong phần mềm đóng gói cho phép khách hàng có
thể làm thích nghi hay sử dụng những chức năng thích hợp của các gói phần mềm ứng dụng đáp ứng yêu
cầu đa dạng của tổ chức. tuy nhiên, đôi khi những cải tiến của khách hàng hay các chương trình bổ sung
này lại quá đắt hay làm giảm các lợi thế vốn có của các gói phần mềm.
Hình 1.9. Mô hình chung nhất sử dụng phần mềm đóng gói
Để chọn được các phần mềm đóng gói thích hợp, cần đánh giá nó theo nhiều tiêu chuẩn khác nhau. Các
mặt sau đây cần được xem xét khi chọn gói phần mềm:
- Chức năng: Gói chương trình có thể đáp ứng được những chức năng gì?
- Tính mềm dẻo: Gói phần mềm có dễ cải biên, dễ mở rộng không? Những đặc trưng gì có thể dành cho
khách hàng thực hiện, mở rộng?
- Tính thân thiện: Chương trình có dễ sử dụng và dễ kiểm tra hay không? dễ nhớ, dễ học, dễ thao
tác,…?
- Yêu cầu về kỹ thuật: Cấu hình máy tối thiểu? Số đĩa, băng để lưu trữ? Loại hình dữ liệu và cấu trúc
tập tin sử dụng?
Giáo trình Phân tích thiết Kế Hệ Thống
15
- Cài đặt và bảo trì: Có khó khăn gì để chuyển đổi từ hệ thống hiện hành sang hẽ thống làm việc với
gói phần mềm? Đội ngũ cán bộ tối thiểu cần để đảm bảo việc bảo trì và trợ giúp khai thác là bao
nhiêu? Trình độ nào?
- Tài liệu: Tài lịêu cho người dùng, tài liệu hệ thống được cung cấp gồm những tài liệu gì? Nó có đầy
đủ , dễ đọc?
- Chất lượng người bán: Người bán có kinh nghiệm áp dụng trong lĩnh vực nào? Những tiện ích mua
hàng mà người bán cung cấp trong và sau bán hàng là gì? Doanh số bán và những ghi nhận về tài
chính của người bán? Những khách hàng của người bán là những ai?
- Giá thành: Giá bán, giá thuê phần mềm? Giá mua bao gồm những khoản mục gì? (các modun bổ
sung, tiện ích thường xuyên, thời gian tư vấn, đào tạo, trợ giúp cài đặt). Bảo trì miễn phí bao lâu?, chi
phí hoạt động thường xuyên là bao nhiêu?
Khi sử dụng gói phần mềm, việc thiết kế hệ thống bao gồm cả vịêc đánh giá năng lực gói phần mềm và
nỗ lực để nắm bắt được các đặc trưng của nó. Theo kinh nghiệm, ngay các gói phần mềm tốt nhất cũng chỉ
có thể đáp ứng 70% yêu cầu của tổ chức. Với 30% yêu cầu còn lại bản thân tổ chức phải xây dựng phần bổ
sung. Tất cả các chi phí trên đây được tính toán để so sánh với dự án phát triển nó.
1.5.5. Phát triển hệ thống do người sử dụng thực hiện
Trong nhiều tổ chức, người dùng cuối cùng phát triển một phần đáng kể HTTT với sự giúp đỡ chút ít
hay không chính thức của các chuyên gia tin học. Hiện tượng này gọi là phát triển hệ thống do người sử
dụng cuối cùng. Nhiều hệ thống do người sử dụng cuối cùng phát triển đã mang lại kết quả nhanh hơn so
với phương pháp vòng đời. Mặc dù còn nhiều hạn chế, việc phát triển hệ thống do người sử dụng thực hiện
đem lại rất nhiều lợi ích cho tổ chức.
Do người dùng phát triển các phần hệ thống một cách độc lập nên có thể tạo ra những vấn đề không thể
tránh khỏi: Phần lớn tổ chức không có một chiến lược phát triển HTTT để đảm bảo đáp ứng được các mục
tiêu đặt ra và các chuẩn mực thích hợp với chức năng của họ. Khi hệ thống được phát triển nhanh thường
thiếu công nghệ tiên tiến và thử nghiệm hình thức hoá, tài liệu không được xây dựng thích hợp và kịp thời.
Việc tạo ra các ứng dụng riêng của mình và các tập dữ liệu sẽ làm tăng khó khăn kiểm soát các dữ liệu.
Sự phát triển hệ thống do người dùng thực hiện cần có một trung tâm thông tin trợ giúp. Dịch vụ mà
trung tâm cần thực hiện bao gồm:
- Đánh giá các phần cứng và phần mềm mới.
- Tư vấn những công cụ và công nghệ thích hợp.
- Đào tạo sử dụng ngôn ngữ, công cụ đòi hỏi trình độ cao.
- Tạo sinh và cải tiến các bản mẫu.
- Giúp đỡ gỡ rối chương trình, truy nhập dữ liệu.
- Hỗ trợ làm các ứng dụng, các báo cáo, các truy vấn đòi hỏi ngôn ngữ chương trình bậc cao.
- Giúp liên hệ với các nhóm cùng nghiệp vụ để trao đổi kinh nghiệm nghề nghiệp và trợ giúp ứng dụng
mỗi khi cần.
1.5.6. Phương pháp thuê bao
Một tổ chức có thể thuê một công ty chuyên nghiệp xây dựng và vận hành hệ thống để cung cấp dịch vụ
cho họ. Hình thức này ngày càng trở nên phổ biến và thích hợp với nhiều tổ chức có những điều kiện đặc
thù. Những tổ chức cung cấp dịch vụ bên ngoài loại này thường có những lợi thế do quy mô lớn (năng lực
của họ được chia sẻ cho nhiều khách hàng khác nhau, họ có điều kiện đầu tư đổi mới thiết bị và nâng cao
chất lượng dịch vụ thường xuyên)
Việc thuê ngoài cho phép rổ chức nhận được dịch vụ nhanh chóng, chỉ phải trả phần chi phí cho dịch vụ
mà họ sử dụng, không cần phải bỏ ra chi phí đầu tư. Nhược điểm của phương pháp này là khi tổ chức
không còn trách nhiệm đối với sự phát triển và hoạt động củaHTTT, nó có thể mất khả năng kiểm soát
được các chức năng của HTTT và bị khống chế mỗi khi có vấn đề trong quan hệ với họ. Sự phụ thuộc này
sẽ dẫn đến chi phí cao hay mất định hướng phát triển về kỹ thuật. Những bí mật thương mại và thông tin
lợi thế có thể bị lọt ra ngoài. Bản thân tổ chức không có điều kiện xây dựng và phát triển tiềm lực của
mình.
Giáo trình Phân tích thiết Kế Hệ Thống
16
1.6. Xây dựng thành công HTTT
a. Khái niệm về HTTT được xây dựng thành công
Một HTTT tin như thế nào được xem là thành công? Đó là câu hỏi khó trả lời, và ngay cả đối với một
HTTT cụ thể, mọi người không dễ dàng đồng ý với nhau về đánh giá và hiệu quả của nó. Tuy nhiên, người
ta cũng đã đưa ra một số tiêu chuẩn làm cơ sở cho việc đánh giá một HTTT. Một hệ thống thông tin được
xem là có hiệu quả nếu góp phần nâng cao chất lượng hoạt động quản lý tổng thể (1) của một tổ chức được
thể hiện trên các mặt:
- Đạt được các mục tiêu thiết kế đề ra.
- Chi phí vận hành là chấp nhận được.
- Tin cậy, đáp ứng được các chuẩ mực của một HTTT hiện hành.
- Sản phẩm có giá trị xác đáng.
- Dễ học, dễ nhớ và dễ sử dụng.
- Mềm dẻo, dễ bảo trì: có thể kiểm tra, mở rộng ứng dụng và phát triển tiếp được.
b. Những vấn đề đặt ra của việc xây dựng HTTT
Rất tiếc là có tới 75% các hệ thống thông tin lớn và phức tạp đã hoạt động yếu kém, không đạt được
mục tiêu đề ra ban đầu. Những yếu kém của hệ thống thường liên quan đến các mặt sau:
- Kỹ năng của người phát triển và năng lực của tổ chức.
- Phương pháp, pháp lụân và công cụ sử dụng.
- Quản lý dự án.
Đi sâu hơn những vấn đề nêu trên là nguyên nhân cốt yếu nằm ở khâu phân tích và thiết kế.
c. Tự động hóa các hoạt động phát triển hệ thống
Trước đây, phát triển HTTT xem như hoạt động mang tính nghệ thụât. Mỗi nhà phát triển áp dụng các
kỹ thụât theo cách riêng. Sự thiếu thống nhất trong kỹ thuật và công nghệ làm khó khăn cho vịêc tích hợp
hệ thống, tích hợp dữ lịêu, và cấu trúc những hệ thống mới cũng như khó khăn cho vịêc bảo trì về sau.
Để giải quyết những vấn đề trên đây, các phương pháp và phương pháp luận cùng các công cụ tự động
hóa đi theo đã được xây dựng. “Kỹ nghệ phần mềm trợ giúp bằng máy tính” – CASE (Computer-Aided
Softuvare Engineering) đề cập đến các công cụ phần mềm được các nhà phân tích hệ thống sử dụng nhằm
trợ giúp và tự động hóa các hoạt động của quá trình phát triển hệ thống. nhờ vậy đã nâng cao năng suất và
cải tiến chất lượng tổng thể của HTTT được xây dựng.
d. Quản lý dự án phát triển HTTT
Quản lý dự án là một mặt quan trọng của vịêc phát triển HTTT. Mục tiêu quản lý dự án là đảm bảo cho
các dự án phát triển HTTT đáp ứng được sự mong đợi của khách hàng và được thựn hịên trong phạm vi
những giới hạn cho phép (như ngân sách, thời gian…). Các dự án thành công yêu cầu phải quản lý tốt các
nguồn lực, các hoạt động và các nhịêm vụ đặt ra. Quản lý một dụ án là sự tiến hành có kế hoạch một loạt
các hoạt động có liên quan với nhau để đạt một mục tiêu, có điểm bắt đầu và có điểm kết thúc. Nó bao bòm
bốn pha: khởi tạo dự án, lập kế hoạch dự án, thực hịên dự án, kết thúc dự án. Trong mỗi pha này lại bao
gồm một loạt công vịêc cùng các kỹ năng yêu cầu tương ứng. Nội dung này được nghiên cứu trong các tài
liệu riêng.
1.7. Sơ đồ tổng quát quá trình phân tích thiết kế HTTT
Sơ đồ tổng quát quá trình phân tích thiết kế được mô tả trong sơ đồ hình 1.10. Trong đó chỉ ra các giai
đoạn khác nhau của quá trình này. Trong mỗi giai đoạn chỉ rõ các công cụ (mô hình) được sử dụng, các sản
phẩm đặc trưng của nó cũng như mối quan hệ logic và sư phụ thuộc lẫn nhau giữa chúng. Quá trình gồm
bốn giai đoạn:
- Khảo sát hiện trạng của hệ thống.
- Xác định mô hình nghiệp vụ.
- Phân tích hệ thống và đặc tả yêu cầu.
- Thiết kế hệ thống.
a. Khảo sát hịên trạng hệ thống
Trong phần này sẽ trình bày các bước thực hiện quá trình khảo sát và các công cụ được sử dụng để thu
thập thông tin, dữ lịêu.
b. Xác định mô hình nghiệp vụ của hệ thống
Giáo trình Phân tích thiết Kế Hệ Thống
17
Trong phần này tiến hành mô tả các thông tin dữ lịêu của tổ chức ở dạng trực quan và có tính hệ thống
hơn. Nhờ vậy, khách hàng có thể hiểu được và qua đó có thể bổ sung và làm chính xác hóa hoạt động
nghiệp vụ của tổ chức hịên thời.
Một loạt các công cụ như được sử dụng ở đây như: biểu đồ ngữ cảnh, biểu đồ phân rã chức năng, ma
trận các yếu tố quyết định thành công, ma trận thực thể chức năng, bảng danh sách các hồ sơ dữ liệu, mô
tả chi tiết các chức năng nghiệp vụ. Các công cụ này giúp làm rõ hơn thực trạng của tổ chức, xác định
phạm vi miền nghiê cứu phát triển hệ thống. Từ đó đi đến quyết định xây dựng một dự án về phát triển
HTTT, đưa ra được các yêu cầu cho hệ thống cần xây dựng.
Giáo trình Phân tích thiết Kế Hệ Thống
18
Hồ sơ tài liệu
khảo sát,
tổng hợp
Biểu đồ
ngữ cảnh
Biểu đồ phân
rã chức năng
Danh sách các
thực thể dữ
liệu
Các ma trận
phân tích
Mô tả chi tiết
chức năng
Biểu đồ ngữ
cảnh miền
nghiên cứu
Biểu đồ phân
rã chức năng
rút gọn chi tiết
Danh sách
thực thể dữ
liệu rút gọn
Từ điển dữ liệu
Mô hình thực
thể mối quan
hệ (E-R)
Mô tả chi tiết
tiến trình
Biểu đồ luồng
dữ liệu vật lý
Đặc tả logic
mỗi tiến trình
Biểu đồ luồng
dữ liệu logic
các mức
Thiết kế biểu
mẫu báo cáo
Mô hìenh dữ
liệu quan hệ
Đặc tả môdun
chương trình
Xác định luồng
hệ thống. Đặc
tả cấu trúc hệ
thống
Đặc tả tương
tác giao diện
Đặc tả CSDL
vật lý
Thiết kế an
toàn và bảo
mật hệ thống
Xác định
yêu cầu
Khảo sát
Phân
tích yêu
cầu
Thiết kế
logic
Thiết kế
vật lý
c. Phân tích làm rõ yêu cầu và đặc tả yêu cầu
Phần này làm rõ yêu cầu bằng cách sử dụng các mô hình và công cụ hình thức hóa đơn, như các mô
hình luồng dữ liệu để mô tả các tiến trình xử lý, mô hình dữ lịêu thực thể - và các mối quan hệ của nó, đặc
Giáo trình Phân tích thiết Kế Hệ Thống
19
tả các giao diện và báo cao. Đến đây ta có được mô hình khái niệm của hệ thống. Với mô hìng này, một lần
nữa khách hàng có thể bổ sung để làm đầy đủ hơn các yêu cầu về HTTT cần xây dựng.
d. Thiết kế hệ thống logic và hệ thống vật lý
Trong bước này cần tìm các giải pháp công nghệ cho các yêu cầu đã được xác định ở bước phân tích.
Các công cụ ở đây mang tính hình thức hóa cao cho phép đặc tả các bản thiết kế để có thể ánh xạ thành các
cấu trúc chương trình, các chương trình, các cấu trúc dữ liệu và các giao diện tương tác. Các công cụ ở đây
bao gồm mô hình dữ liệu quan hệ, mô hình luồng hệ thống, các phương pháp đặc tả nội dung xử lý của
mỗi tiến trình, các hướng dẫn thiết kế cụ thể…
Câu hỏi cuối chương
1. Khi nào một tổ chức cần phát triển HTTT? Vì sao?
2. Để phát triển HTTT đạt kết quả, tổ chức cần được tiến hành những hoạt động gì? Mối quan hệ giữa
chúng và vịêc phát triển HTTT?
3. Có những cách tiếp cận nào để phát triển HTTT? Đặc trưng (ưu và nhược điểm) của mối cách tiếp cận
đó?
4. Những nội dung chính của phát triển HTTT là gì?
5. Vòng đời phát triển một hệ thống là gì? Phương pháp luận vòng đời phát triển hệ thống gồm những pha
nào?
6. Trình bày nội dung các pha của vòng đời phát triển hệ thống?
7. Tính khả thi của một dự án cần gồm những mặt chính nào?
8. Để phát triển hệ thống cần có tài liệu gì sau khi có dự án khả thi?
9. Trình bày các phương pháp khác nhau phát triển HTTT? Ưu và nhược điểm của mỗi phương pháp?
10. Có mấy mức độ làm mẫu? Đặc trưng của mỗi mức đó là gì? Các lợi ích của phương pháp làm mẫu?
11. Nêu vai trò hoạt động của quản lý dự án trong quá trình phát triển HTTT? Các nội dung của quản lý dự
án?
12. Trình bày các bước tổng quát của qua trình phân tích và thiết kế HTTT? Các mô hình, các sản phẩm và
mối quan hệ của chúng<
Phụ lục
Khung của một kế hoạch dự án cơ sở
1.0. Giới thiệu
A. Tổng quan về dự án: Mục tiêu và phạm vi của dự án, tính khả thi, yêu cầu nguồn lực và lịch trình thời
gian. Thêm vào cần trình bày tóm tắt các vấn đề đặt ra, môi trường trong đó hệ thống hoạt động, các
ràng buộc và hạn chế đặt lên dự án.
B. Các đề xuất: Đưa ra những vấn đề quan trọng phát hiện khi lập dự án và các đề xuất các hoạt động cần
thực hiện.
2.0. Mô tả hệ thống
A. Các phương án có thể: Trình bày tổng hợp về một số cấu hình hệ thống có thể có.
B. Mô tả hệ thống lựa chọn: Mô tả phương án hệ thống được lựa chọn. Trình bày các thông tin vào, các
nhiệm vụ thực hiện và các thông tin kết quả đầu ra.
3.0.Đánh giá khả thi
A. Phân tích kinh tế: Cho một đánh giá về mặt kinh tế của dự án bằng cách sử dụng phân tích chi phí và
lợi ích thu được.
B. Phân tích kỹ thuật: Trình bày các yếu tố rủi ro kỹ thuật có liên quan, đánh giá tỷ lệ rủi ro có thể xãy ra
so với tổng thể công việc của dự án.
C. Phân tích hoạt động: Mô tả hệ thống để giải quyết các vấn đề nghiệp vụ đặt ra như thế nào, ưu điểm để
tận dụng các cơ hội có thể, đánh giá sự thay đổi của hệ thống hiện tại theo thời gian như thế nào nhờ có
hệ thống mới.
D. Phân tích về hợp đồng và pháp luật: Mô tả nhũng rủi ro có thể có về mặt pháp luật hay hợp đồng làm
việc của dự án.
Giáo trình Phân tích thiết Kế Hệ Thống
20
E. Phân tích chính sách: Mô tả về cách nhìn nhân của chủ sở hữu trong tổ chức đối với hệ thống như thế
nào và tác động của các chính sách có thể có.
4.0. Những vấn đề quản lý
A. Tổ chức đội làm việc va quản lý: Mô tả về thành phần các đội, vai trò của các thành viên trong đội và
các mối quan hệ khi làm vịêc, lịch trình và cách thức báo cáo.
B. Kế hoạch truyền thông: Mô tả về thủ tục và phương tiện truyền thông mà những người quản lý, các
thành viên trong đội và khách hàng cần tuân thủ.
C. Các chuẩn mực và thủ tục: Quy định các chuẩn mực về tài liệu, sản phẩm và cách thức mà khách hàng
sẽ đánh giá và chấp nhận.
D. Các chủ đề khác có liên quan: Mô tả những vấn đề khác phát hiện ra trong quá trình xây dựng dự án
cần được chú ý.
oOo
Giáo trình Phân tích thiết Kế Hệ Thống
21
Chương 2 : KHẢO SÁT HIỆN TRẠNG XÁC ĐỊNH YÊU CẦU HỆ THỐNG
Xác định yêu cầu là bước đầu tiên của quá trình phát triển một HTTT. Cho nên, kết quả và chất lượng của
việc xác định yêu cầu thông tin của tổ chức có một ý nghĩa quyết định đến chất lượng HTTT được xây
dựng trong các bước sau này.
2.1. Khảo sát thu thập thông tin của hệ thống
2.1.1. Quá trình khảo sát
Vịêc thu thập các thông tin của hệ thống hịên tại được bắt đầu bằng vịêc tiến hành khảo sát hệ thống. Về
nguyên tắc, việc khảo sát hệ thống được chia làm hai giai đoạn:
- Giai đoạn khảo sát sơ bộ: nhằm hình thành dự án phát triển hệ thống thông tin.
- Giai đoạn khảo sát chi tiết: nhằm thu thập các thông tin chi tiết của hệ thống phục vụ phân tích yêu cầu
thông tin làm cơ sở cho bước thiết kế sau này.
a. Cách tiếp cận một tổ chức
Mỗi tổ chức là một hệ thống với những đặc trưng và sự phức tạp riêng của nó. Xem một tổ chức là hệ
thống xã hội - kỹ thuật, nó thường được đặc trưng bằng các mặt sau đây:
- Một lĩnh vực hoạt động nghiệp vụ.
- Một mô hình quản lý.
- Một cơ cấu tổ chức.
Bên cạnh đó, tổ chức còn có những mối quan hệ giữa các bộ phận bên trong cũng như những mối quan hệ
với môi trường bên ngoài, có một truyền thống văn hóa riêng của mình. Vì vậy, vịêc tiếp cận tổ chức cần
tiến hành một cách khoa học. Có hai cách tiếp cận thường được sử dụng: Tiếp cận từ trên xuống (top
down) và tiếp cận từ dưới lên (bottom up). Khi vận dụng cách tiếp cận từ trên xuống, vịêc khảo sát cần
được tiến hành theo các định hướng sau :
- Về tổ chúc: bắt đầu từ bộ phận cao nhất (ban giám đốc) đến các bộ phận thấp nhất (các tổ công
tác, tổ sàn xuất)
- Về quản lý: bắt đầu từ nhà quản lý cao nhất (giám đốc) đến người thực hịên cụ thể (nhân viên)
- Về nghịêp vụ: bắt đầu từ nhiệm vụ chung nhất (nhịêm vụ chiến lược) đến công vịêc cụ thể tại mỗi
chỗ làm vịêc.
Cách tiếp cận này là phù hợp với quá trình nhận thức và khả năng tiếp nhận của con người và phù hợp với
quá trình khảo sát.
b. Các bước khảo sát và thu thập thông tin
Quá trình khảo sát hệ thống cần trải qua các bước:
- Tiến hành thu thập thông tin bằng các phương pháp khác nhau.
- Củng cố, bổ sung và hoàn thịên kết quả khảo sát.
- Tổng hợp kết quả khảo sát.
- Hợp thức hóa kết quả khảo sát.
c. Các yêu cầu đặt ra
Vịêc thu thập thông tin dữ lịêu được thực hịên bằng cách phỏng vấn, điều tra và quan sát người sử dụng,
xem xét các báo cáo, các quy trình, thủ tục trong hoạt động của tổ chức và tổng hợp các thông tin thu thập
được theo một cách tốt nhất và đầy đủ nhất. Vịêc xác định yêu cầu đòi hỏi ở người phân tích phải có tính
xông xáo (cần hỏi mọi điều), tính chủ động (cần tìm giải pháp cho mọi vấn đề hay cơ hội kinh doanh), sự
nghi ngờ (xem mọi hoạt động đều có những hạn chế, giải pháp có thể là không khả thi ), chú ý đến mọi chi
tiết (mọi sự kịên, sự vật liên quan cần được ghi nhận), biết đặt ngược vấn đề. Phân tích là một quá trình
sáng tạo, bản thân nhà phân tích phải biết nhìn vào tổ chức theo cách nhìn mới.
Các kết quả thu thu thập cần được hình thành theo các mẫu và chuẩn mực nhất định. Các đơn vị phát triển
phần mềm thường có các mẫu và các chuẩn riêng cho mình để thu thập và biểu diễn thông tin.
2.1.2. Các thông tin dữ lịêu cần thu thập.
Để xác định yêu cầu của hệ thống ta cần có các thông tin và dữ lịêu khác nhau về hịên trạng của hệ thống:
Nó bao gồm các mô tả thu được từ các cuộc phỏng vấn, các ghi chú từ các quan sát, các phân tích và tổng
Giáo trình Phân tích thiết Kế Hệ Thống
22
hợp tài lịêu, các kết quả nhận được từ các điều tra, các mẫu biểu báo cáo, các mô tả công vịêc, các tài lịêu
khác cũng như các tài lịêu sinh ra từ vịệc làm bản mẫu và các phân tích. Nội dung các loại thông tin cần
thu thập bao gồm:
- Các loại dữ lịêu (tài lịêu) và đặc trưng của nó.
- Các công vịêc và trình tự thực hịên các chức năng nghiệp vụ cũng như các thông tin dữ lịêu liên quan.
- Các quy tắc chi phối các hoạt động thu thập, quản lý, xử lý và phân phối các dữ lịêu cũng như các yêu
cầu kỹ thụât khác.
- Các chính sách và các hướng dẫn mô tả bản chất của kinh doanh, thị trường và môi trường mà trong
đó nó hoạt động.
- Các nguồn lực (cán bộ, trang thiết bị, các phần mềm nếu có).
- Các điều kịên môi trường (các hệ thống bên trong và bên ngoài liên quan)
- Sự mong đợi về hệ thống thay thế của người dùng.
2.2. Các phương pháp truyền thống xác định yêu cầu
Cách tốt nhất để thu thập thông tin của hệ thống hịên tại là hãy giao tiếp với những người trong tổ chức mà
chính họ trực tiếp hay gián tiếp tác động đến sự hoạt động và thay đổi hệ thống. Các phương pháp thường
được sử dụng để thu thập thông tin là:
- Phỏng vấn
- Quan sát tại chỗ
- Điều tra bằng bảng hỏi
- Nghiên cứu các tài lịêu, thủ tục
2.2.1. Phỏng vấn
Phỏng vấn là hỏi trực tiếp người có liên quan để thu thập thông tin. Đó là cách đơn giản và quan trọng
nhất để thu thập thông tin về một tổ chức. Có nhiều cách tiến hành phỏng vấn hịêu quả và không một cách
nào được xem là tốt hơn cách khác. Tuy nhiên, những nghiên cứu cho thấy, kết quả phỏng vấn phụ thuộc
vào các yếu tố sau đây:
- Sự chuẩn bị
- Chất lượng câu hỏi và phương pháp ghi chép
- Kinh nghịêm và khả năng giao tiếp của người phỏng vấn
a. Chuẩn bị phỏng vấn
Để phỏng vấn một người, một nhóm người cần phải làm quen lần đầu, sau đó hẹn gặp để phỏng vấn họ.
Nội dung hẹn gặp thường bao gồm thời điểm, địa điểm, nội dung dự kiền và thời gian thực hịên. Trước hết
cần lịêt kê và lựa chọn danh sách người cần phỏng vấn. Với đối tượng dự kiến, cần thu thập tài lịêu có liên
quan và thông tin về đối tượng được hỏi để có cơ sở chuẩn bị câu hỏi và cách thức làm vịêc thích hợp với
đối tượng.
Kế hoạch phỏng vấn
Người được hỏi: (họ và tên) Người phỏng vấn: (họ và tên)
Địa chỉ: (cơ quan, phòng, điện thoại) Thời gian hẹn
Thời điểm bắt đầu:
Thời điểm kết thúc:
Đối tượng:
- Đối tượng được hỏi là ai?
- Cần thu thập dữ liệu gì ?
- Cần thỏa thuận điều gì ?
Các yêu cầu đòi hỏi:
Vai trò, vị trí, trình độ,
Kinh nghiệm của người được hỏi
Chương trình
- Giới thiệu
- Tổng quan về dự án
- Tổng quan về phỏng vấn
Chủ đề sẽ đề cập
Xin phép được ghi âm
Chủ đề 1: câu hỏi và trả lời
Ước lượng thời gian
1 phút
2 phút
1 phút
7 phút
Giáo trình Phân tích thiết Kế Hệ Thống
23
Ch
ủ đề 2” câu hỏi v
à tr
ả lời
Tổng hợp các nội dung chính
ý kiến của người được hỏi
Kết thúc (thỏa thuận)
10 phút
2 phút
5 phút
1 phút
(d
ự kiến tổng cộng: 29 phút)
Bảng 2.1. Mẫu kế hoạch phỏng vấn
Cùng với vịêc chuẩn bị câu hỏi là chuẩn bị các phương tiện để ghi chép, như máy ghi âm, các mẫu ghi
chép (mẫu phỏng vấn, mẫu ghi thông tin…) và đặc bịêt phải có kế hoạch tiến hành phỏng vấn (xem bảng
2.1). Trong đó vạch rõ trình tự thực hịên các công vịêc, dự kiến thời gian và kết quả thực hịên mỗi công
vịêc đó. Ngoài ra, hai loại công cụ thường dùng nhất để ghi chép khi phỏng vấn là phiếu phỏng vấn và lưu
đồ công vịêc. Mỗi một công cụ có một chức năng của nó: một dành để ghi lời, một để ghi chép bằng biểu
đồ, minh họa.
b. Lựa chọn câu hỏi
Khi phỏng vấn thường sử dụng hai loại câu hỏi: câu hỏi mở và câu hỏi đóng. Trong đó các câu hỏi mở
được sử dụng nhiều hơn. Các câu hỏi mở là câu hỏi có nhiều khả năng trả lời, và câu trả lời tùy thuộc vào
điều kịên và sự hiểu biết của người cụ thể được hỏi. Có thể kết hợp sử dụng câu hỏi đóng trong các trường
hợp cần thiết. Câu hỏi đóng cung cấp về phạm vi câu trả lời dự kiến. Ví dụ:
- Anh có sao chép mọi dữ lịêu anh cần không? (có hoặc không)
Câu hỏi có thể có nhiều hơn hai lựa chọn. Ví dụ:
- Anh đánh giá thế nào về mức độ đạt được của dịch vụ hệ thống? tốt? trung bình? Hay tồi?
Những câu hỏi đóng nhằm hạn chế phạm vi muốn hỏi, tập trung vào những vấn đề quan trọng cà hướng
đến sự chọn.
c. Tiến hành phỏng vấn
Phỏng vấn nên tiến hành theo nhóm, ít nhất có hai người. Khi phỏng vấn một người hỏi, một người ghi. Có
thể phân công người đặc trách ghi chép bằng biểu đồ, ký hịêu. Ưu điểm của phương pháp này là sử dụng
thời gian hịêu quả hơn một loạt các phỏng vấn cá nhân. Khi nghe nhiều ý kiến của các nhân vật quan trọng,
mỗi người có thể đồng ý, không đồng ý với người khác, kích thích sự suy nghĩ của mỗi người và tích cực
tham gia thảo luận. Nhược điểm của nó là phải bố trí, sắp xếp thứ tự trình bày, bố trí thời gian thích hợp,
có thể có người e ngại khi phát biểu ý kiến. Phỏng vấn là phương pháp chủ yếu cho quá trình phát triển
ứng dụng liên kết (JAD).
Dự án Tên dự án: Quản lý kho Trang 10
Loại: Lưu đồ Nghiệp vụ: Lập đơn hàng Ngày 12/01/2008
Giáo trình Phân tích thiết Kế Hệ Thống
24
Th
ủ kho
Ngư
ời quản lý
Bên ngoài
Lập và chuyển
đơn hàng
T1
D1
Phiếu vật tư
D2
Sổ thực đơn
Nhà cung
cấp
D4
Sổ đặt hàng
D3
Đơn hàng
Tiếp nhận,
Kiểm phiếu
T2
D5
Phiếu giao
Tiếp nhận,
Nhận hàng
T3
Bảng 2.2 Lưu đồ công việc (ghi khi phỏng vấn)
Phiếu phỏng vấn
Dự án: Quản lý kinh doanh Tiểu dự án: Quản lý bán hàng
Người được hỏi: Nguyễn Văn A Ngày xx/xx/xxxx Người hỏi: Phạm Thế Du
Câu hỏi Ghi chú
Câu 1: Anh có sử dụng doanh số bán hàng mà hệ
thống tổng hợp không? Nếu có, có thường
xuyên không?
(Nếu không thì sang câu 2)
Câu 2: ………
Trả lời: Có, tôi đã yêu cầu làm báo cáo về hàng bán
trong tuần.
Quan sát: Hình như người này không biết dùng máy
tính nên không biết máy có thể trả lời câu
hỏi bất kỳ lúc nào
Trả lời: …
Quan sát: Hệ thống có thể đưa ra doanh số bán bằng
tiền, nhưng người dùng không biết điều
đó
Đánh giá chung:
- Người được hỏi hình như bận, có thể cần thêm vài ngày để họ chuẩn bị rồi tiến hành tiếp
- Chưa kết luận được vấn đề, còn chủ đề chưa đề cập hết. Họ cẩn thu thập số liệu bán hàng năm 19xx
Bảng 2.2 Một đoạn ghi chép phỏng vấn
d. Những hạn chế và lưu ý khi phỏng vấn
Phỏng vấn là công cụ tốt để thu thông tin chi tiết, phong phú, cho phép giải thích hay hỏi bổ sung ngay
khi cầ thiết. Tuy nhiên phương pháp này cần nhiều thời gian, căng thẳng và rất bị động do phụ thuộc vào
điều kịên của người được hỏi, yêu cầu người phỏng vấn phải được đào tạo và có được những kinh nghịêm
nhất định.
Câu hỏi cần tập trung vào lĩnh vực nghiên cứu, ngắn gọn, trực tiếp, ở dạng mở với nhiều khả năng trả
lời, tránh hỏi chuỵên nội bộ, cá nhân. Câu hỏi không nên áp đặt, hướng dẫn hay khẳng định vấn đề. Chú ý
lắng nghe và quan sát người được hỏi để có thể thích ứng với tình thế khi cần thiết: thay đổi câu hỏi, cách
hỏi, chuyển sang chủ đề khác hoặc im lặng. Nên kết thúc phỏng vấn sớm nếu có thể.
Sớm hình thành biểu đồ chức năng. Cuối buổi phỏng vấn cần nhắc lại nội dung chính để khẳng định
kết quả, thỏa thụân lần làm vịêc tiếp theo (nếu cần)
Giáo trình Phân tích thiết Kế Hệ Thống
25
2.2.2. Điều tra bằng bảng hỏi
Phương pháp điều tra bằng bảng hỏi được sử dụng để bổ sung cho các phương pháp nêu trên. Mục tiêu
của nó nhằm thăm dò dư lụân, thu thập các ý kiến, quan điểm hay đặc trưng có tính đại chúng rộng rãi (xã
hội học), có tính xu hướng liên quan đến hoạt động chung của tổ chức và đến vịêc phát triển hệ thống
thông tin. Nội dung điều tra thường hạn chế trong một số vấn đề nhất định. Những nội dung cần thăm dò
có thể là các vấn đề sau:
- Những khó khăn mà tổ chức đang gặp phải
- Các nguyên nhân có thể có của các khó khăn đó
- Những yếu tố có tính quyết định đến sự hoạt động thành công
- Giải pháp xây dựng HTTT có phải là giải pháp tốt nhất
- Khó khăn chính khi triển khai một hệ thống thông tin
- Sự hiểu biết và quan nịêm của người dùng về HTTT
a. Thiết lập bảng hỏi
Bảng hỏi gồm ba phần:
Phần tiêu đề: Gồm tên tiêu đề ghi rõ mục đích của bảng hỏi và các thông tin chung về đối tượng được
hỏi.
Phần câu hỏi: Gồm các câu hỏi khác nhau được sắp xếp và bố trí theo một trình tự nhất định theo yêu
cầu và mục tiêu dự kiến. Trong các câu hỏi nên có các thông tin phân loại đối tượng được hỏi theo nhóm
(theo nghề nghiệp, theo chức danh: nhà quan lý, người sử dụng, lứa tuổi…)
Phần giải thích: Một số giải thích về những vấn đề cầm làm rõ trong câu hỏi hoặc chú thích khác. Ví
dụ: “xin gửi bảng điều tra về địa chỉ ”
Các câu hỏi thăm dò thường ở dạng cho sẵn các khả năng lựa chọn, người được hỏi chỉ cần trả lời bằng
cách đánh dấu vào những mục mà họ chọn. Bảng hỏi sau khi soạn thảo cần điều tra thử hay lấy ý kiến ở
một phạm vi hẹp (có thể thông qua hội thảo). Sau khi hoàn chỉnh, bổ sung rồi mới tiến hành điều tra rhực
sự.
b. Tiến hành điều tra
Sau khi bảng hỏi được chuẩn bị (trên giấy hay mẫu biểu gửi đi trên mạng) sẽ phân phát cho đối tượng
định hỏi để họ điền vào bảng hỏi hoặc cử người điều tra trực tiếp. Khi có dữ lịêu điều tra cần tổng hợp và
tính ra các kết quả mong muốn. Thông thường, các kết quả nhận được mang tính thống kê, định tính, xu
hướng mà không phải những con số chính xác.
c. Ưu điểm và hạn chế của phương pháp
Phương pháp này thường được dùng để bổ sung cho các phương pháp trên. Nó có ưu điểm là nhanh và
rẻ hơn phỏng vấn, dễ tổng kết, vịêc đào tạo người điều tra ít tốn kém cả về thời gian và chi phí. Kết quả có
độ chính xác thấp và được đánh giá bằng con số trung bình thống kê.
2.2.3. Quan sát
Con người không phải luôn nhớ hết và kể đủ mọi điều họ biết, họ nghĩ, đặc bịêt những sự kịên ít xãy ra
hay những sự kịên đã xãy ra lâu trong quá khứ. Hơn nữa, thường có một sự khác bịêt giữa nhận thức và
thực tế, mô tả lại mang tính chủ quan, có thể bị bỏ qua nhiều chi tiết, vì vậy quan sát để bổ sung và chính
xác hóa các thông tin
Quan sát có thể có hai cách: quan sát trực tiếp và quan sát qua phương tịên. Về tâm lý, vịêc quan sát
trực tiếp dễ làm ảnh huởng đến hoạt động bình thường của một người. Quan sát từ xa, qua phương tiện sẽ
chủ động hơn, đặc bịêt có thể sử dụng các phương tịên ghi lại để xem nhiều lần khi cần thiết. Thông tin
quan sát được là thông tin có tính bộ phận, bề ngoài, không bao gồm những công việc, những hoạt động và
sự kịên quan trọng, bị hạn chế về thời gian, và phạm vi nhỏ hẹp. Hơn nữa, vịêc quan sát thường tốn thời
gian, không thể chủ động.
2.2.4. Nghiên cứu, phân tích các thủ tục và tài lịêu
Nghiên cứu các tài lịêu có sẵn của tổ chức là hoạt động không thể thiếu được khi khảo sát hệ thống. Nó
giúp tăng cường các kết quả nhận được nhờ xem xét các tài lịêu hệ thống và tổ chức để phát hịên ra những
chi tiết về chức năng và tổ chức, mô tả tổ chức, kế hoạch kinh doanh, biểu đồ chức năng, chính sách kinh
doanh hàng năm, mô tả công vịêc, những tài lịêu bên trong, bên ngoài, các báo cáo của hệ thống, các
nghiên cứu hệ thống.