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

Giáo trình phân tích thiết kế các hệ thống thông tin

271 61 3

Đ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 271
Dung lượng 7,45 MB

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

Nội dung

Do vậy, môn học Phân tích thiết kế các hệ thong thông tin là môn học bắt buộc đối với những người làm công nghệ thông tin để có thể tham gia vào các dự án phát triển các hệ thống thông

Trang 1

NGUYỄN VĂN VỴ

N H A X U Ả T BAN G IA O D ỤC V IỆ T NAM

Trang 3

M Ụ C L Ụ C

Trang

Lòi nói đầu 7

Béng c á c chữ viết t ẳ t 9

Chương I PH Ư Ơ N G PHÁP LUẬN PHÁT TRIỀN HỆ TH Ố N G TH Ô N G TIN 1.1 Khái niệm về hệ thống thông tin 11

1.2 Tiến hoá của cách tiếp cận phát triển hệ thống thông t i n 17

1.3 Vòng đời phát triển một hệ thống thông tin 22

1.4 C ác phương pháp khác nhau phát triển hệ thống thông tin 26

1.5 Vai trò của những người tham gia phát triển hệ thống thông tin .35

1.0 X ây dựng thành công hệ thống thông tin .38

1 7. Sơ đồ tổng quát quá trình phân tích, thiết kế hệ thống thông t i n 45

Tcm tắt 47

Cáu hỏi 48

Chương II KHẢO SÁT HIỆN TRẠNG, XÁC ĐỊNH YỂU CẦU HỆ THỐ NG 2.1 Khảo sát và thu thập thông tin hệ thống 50

2.2 C ác phương pháp truyền thống xác định yêu cầu 52

2.3 Phương pháp hiện đại để xác định yêu c ầ u 59

2.4 Các khái niệm sử dụng trong khảo sát 62

2.5 Các bước thự c hiện sau khảo s á t 63

Tom tắt 69

Càu hôi 69

Bài tập 70

Chương III MÔ HÌNH NGHIỆP v ụ CỦA HỆ TH Ố N G 3.1 Khái niệm về mô hình nghiệp v ụ 71

3.2 Biểu đồ ngữ cảnh .71

3.3 Biểu đồ phân rã chứ c năng .72

3.4 Hai dạng biểu diễn của biểu đồ phân rã chứ c n ă n g 76

3.5 Xác định phạm vi hệ thống .79

3.6 Ví d ụ 83

Tóm tắt 87

3

Trang 4

Câu hỏi .88

Bài tập .88

Chương IV MÔ HỈNH HOÁ Q UA TRÌNH x ử LÝ 4 1 Mô hình hoá tiế n trình nghiệp vụ 89

4.2 Biểu đồ luồng dữ liệ u 89

4.3 Phát triển các biểu đồ luồng dữ liệu của một ứng dụng 96

4.4 C huyển biểu đồ luồng dữ liệu vật lý sang biểu đồ lôgic 105

4.5 Sử dụng biểu đồ luồng dữ liệu để phân tích 105

4.6 Ví dụ 106

Tóm tắt 110

Câu hỏi 111

Bài tập .111

Chương V M Ô HÌNH HOÁ LÔGIC TIẾN TRÌNH 5.1 Mô hình hoá lo g ic với tiếng Anh cấu t r ú c 113

5.2 Mô hinh hoá lô g ic với bảng quyết định .117

5.3 Mô hình hoá lô g ic với cây quyết đ ịn h 122

5.4 Mô hình hoá lô g ic thời gian .124

Tóm tắt .129

Câu hỏi 129

Bài tập 130

Chương VI MÔ HỈNH D ữ LIỆU QUAN NIỆM 6.1 Khái niệm về m ô hình dữ liệu quan n iệ m 131

6.2 Khái niệm và Ký pháp của ERM .132

6.3 Mô hình hoá cá c trường hợp mở r ộ n g 139

6.4 Biểu diễn quy tẳ c nghiệp v ụ 141

6.5 C ác bước xâỵ dựng mô hình dữ liệu quan n iệ m 142

6.6 Một biến thể của tiến trình xây dựng mô h ì n h 145

6 7 Ví dụ 146

6.8 Phát triển ERM bằng C A S E 156

Tóm tắt .156

Câu hỏi .157

Bài tập 158

Trang 5

Chương VII

TH IẾT KẾ MÔ HỈNH DỮ LIỆU LÔGIC

7.1 Nội dung thiết kể mô hình dữ liệu lô g ic 161

7.2 C ác loại mô hình dữ liệu lô g ic 161

7.3 Mô hình dữ liệu quan h ệ 163

7.4 X ây dựng mô hình dữ liệu lo g ic 171

7.5 Q uy trình thiết kế mô hình dữ liệu lôgic .174

7.6 Ví dụ .175

Tóm tắ t 178

Câu hỏi 180

Bài tập 181

Chương VIII TH IẾT KẾ C ơ SỞ D ữ LIỆU VẬT LÝ 8.1 C ác nội dung thiết kế cơ sở dữ liệu vật l ý 182

8.2 Thiết kế các trường .183

8.3 T hiết kế bản ghi vật l ý 188

8.4 Thiết kế tệp vật lý 190

8.5 Thiết kế cơ sờ dữ liệu vật l ý 196

8.6 Công cụ CASE trong thiết kế cơ sờ dữ liệu .: 201

Tóm tắt .201

Câu hỏi 202

Bái tập 202

Chương IX TH IẾ T KẾ HỆ THỐ NG C HƯ Ơ NG TRÌNH 9.1 Nội dung hoạt động thiết kế hệ thống chương t r ì n h 204

9.2 Xây dựng biểu đồ tuồng dữ liệu hệ thống 204

9.3 Thiết kế kiến trúc hệ thống .205

9.4 T hiết kế giao diện người - máy và tương tác .220

9.5 T hiết kế các đối t h o ạ i 228

9.6 Ví dụ thiết kế hệ thống 231 Tóm tắt 242

Câu hỏi .243

Bài tập .244

5

Trang 6

Chương X

TH IẾT KẾ CÁC HỆ TH Ố N G PHÂN TÁN

10.1 Nội dung thiết kế các hệ thống phân t á n 245

10.2 Các hình thứ c tổ chức hệ thống phân t á n 247

10.3 Đ ặc trưng của các loại hình hệ thống phân tán .250

10.4 Tổ chức dữ liệu trong hệ thống phân tán .255

10.5 Thiết kế cơ sở dữ liệi phân tán .260

Câu hỏi .267

Bài tập 267

TÀ! LIỆU THAM KHẢO 269

Trang 7

Lời nói đâu

Hệ thống thông tin tin học là một ứng dụng đầy đù và toàn diện nhất các thành tựu của công nghệ thông tin vào một tố chức Ngày nay, không một tố chức hay một đơn vị nào là không có nhu cầu xây dựng các hệ thống thông tin Không những nhu cầu xây dựng các hệ thống thông tin tăng lên, mà quy mô và mức độ phức tạp của chúng cũng tăng lên không ngừng Do đặc thù của các hệ thống thông tin là sản phẩm đơn chiếc (không giống bất kỳ một cái nào trước đó), với quy mô và độ phức tạp ngày càng tăng, lại là sản phẩm "không nhìn thấy", nên phân tích và thiết kể trở thành một yêu cầu bắt buộc để có được một

hệ thống tốt

Do tầm quan trọng và nhu cầu thực tế, phân tích các hệ thống thông tin đã trở thành một nghề nghiệp có tính chuyên môn cao Một kỹ sư công nghệ thông tin không thế không biết đọc các bản vẽ phân tích và thiết kế về hệ thống thông tin Phân tích và thiết kế hệ thống thông tin có những phương pháp riêng, công nghệ và công cụ riêng và cần có kinh nghiệm nghề nghiệp Để trở thành một nhà phân tích và thiết kế, đòi hỏi một người làm công nghệ thông tin phải có ít

nhất bốn loại kỹ năng: kỹ năng phân tích, kỹ năng công nghệ thông tin, kỳ năng

về nghiệp vụ và quản lý, kỹ nâng giao tiếp Nhu cầu xã hội về nghề nghiệp này

ngày càng lớn, ở các nước phát triển (như Mỹ, Nhật), số các nhà phân tích, thiết

kế tăng đáng kể và đã xấp xỉ số các lập trình viên Nước ta hiện nay, số người

có trình độ và kỳ năng phân tích, thiết kế các hệ thống thông tin còn ít Do vậy,

môn học Phân tích thiết kế các hệ thong thông tin là môn học bắt buộc đối với

những người làm công nghệ thông tin để có thể tham gia vào các dự án phát triển các hệ thống thông tin và tham gia đào tạo

Đối tượng của giáo trình này là các sinh viên thuộc các khoa công nghệ

thông tin và hệ thống thông tin kinh tế; các kỹ sư làm phần mềm muốn trở thành nhà phân tích, thiết kế; các giáo viên giảng dạy về Kỹ nghệ phần mềm tại các trường cao đẳng và đại học

Cấu trúc của giáo trình: Giáo trình gồm 10 chương, được tổ chức tương

ứng với các giai đoạn của tiến trình phát triển phần mềm, từ khảo sát hệ thống thực thu thập thông tin để hình thành dự án khả thi cho đến thiết kế vật lý cho

hệ thống ứng dụng cần xây dựng Do khuôn khổ cùa giáo trình, nên không thể trình bày đầy đủ những vấn đề liên quan đến toàn bộ tiến trình phát triển phần mềm Tuy nhiên, những vấn đề quan trọng về phương pháp luận, công cụ và công nghệ đều được đề cập ở mức độ nhất định, nhằm giúp sinh viên biết được những vấn đề đặt ra để tìm hiểu và tiếp tục nghiên cứu khi cần thiết Cuối cùng

là thiết kế cơ sở dữ liệu phân tán đang là vấn đề được nhiều tổ chức quan tâm

7

Trang 8

và triển khai hiện nay Với mục tiêu hướng vào việc vận dụng công nghệ trong thực tiễn, trong giáo trình này chỉ lựa chọn để trình bày những phương pháp, công nghệ và công cụ hiện đại hay được sử dụng trên thực tế; và những cách vận dụng khác nhau của nó, đặc biệt là các ví dụ cụ thể thu thập được từ thực tiễn phát triển các hệ thống phần mềm trong và ngoài nước Với yêu cầu của chương trình là 4 đơn vị học trình, nên giáo trình này chi trình bày phân tích, thiết kế hướng cấu trúc Trong mỗi phần nội dung, sau khi trình bày phương pháp, công nghệ và công cụ sử dụng; trong trường hợp có thể đều cố gẳng đưa

ra một quy trình tóm tắt để thực hiện quá trình công nghệ được nghiên cứu và những đánh giá về ưu, nhược điểm của mỗi phương pháp và công cụ sừ dụng; cuối cùng là một ví dụ tương ứng Nhờ vậy, người đọc có thế theo đó để thực hành công nghệ và vận dụng trong thực tế Ngoài ra, để giúp độc giá nắm chắc vấn đề và có được những kỹ năng nhất định, cuối mỗi chương đều có tóm tắt chương, những câu hỏi củng cố và các bài tập thực hành

Mặc dù đã rất cố gắng để tổ chức và biên soạn giáo trình với tất cả hiểu biết, kinh nghiệm của nhiều năm tham gia phát triển các hệ thống phần mềm và giảng dạy, giáo trình không tránh khỏi những thiếu sót và hạn chế, rất mong sự đóng góp ý kiến của các bạn đồng nghiệp và độc giá

Thư góp ý xin gửi về: Công ty c ổ phần Sách Đại học và Dạy nghề - Nhà xuất bản Giáo dục Việt Nam, 25 Hàn Thuyên - Hà Nội

TÁC GIÀ

Trang 9

Bảng các chữ viết tắt

CSDL Cơ sở dữ liệu

DBMS D ataBase M anagem ent System

(Hệ quản trị Cơ s ở d ữ liệu)

ERM Entity - Relationships Model

(Mô hình thực thể - các mối quan hệ)

H IM Hệ thống thông tin

LAN Local A rea Network

(Mạng cục bộ)

UML Unified Modeling Language

(Ngôn n g ữ Mô hình hóa thống nhất)

[ ] Là tài liệu tham khảo cho biết 4 chữ đầu của tên

tác giả và năm xuất bản, ví dụ: [Rodg89] là của tác giả Rodgers u , xuất bản năm 1989; [Vy&08]

là của tác giả Nguyễn Văn Vỵ và những người khác, xuất bản năm 2008 (xem tài liệu tham khảo ở cuối sách).

9

Trang 10

Chương ỉ

PHƯƠNG PHÁP LUẬN

1.1 Khái niệm về hệ thống thông tin

Phát triển một hệ thống thông tin (HTTT) là một quá trình tạố 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 luận pháp 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; đặc biệt là yêu cầu của người dùng

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 Việc phát triển HTTT

liên quan đến một số các khái niệm thường gặp sau: dữ liệu, thông tin, các hoại động thông tin, xử lý, trình diễn dữ liệu - thông tin.

1 D ữ liệu (ídata) là những mô tả về sự vật, con người và sự kiện trong thế giới thực mà chúng ta gặp hằng ngày bàng nhiều cách thể hiện khác nhau Một số dạng thường dùng để biểu diễn dữ liệu như văn bản (text), số (number), biểu tượng (symbol), hình ảnh (image), âm thanh (audio), phim ảnh (vidio) Ngoài định nghĩa trên còn có nhiều định nghĩa khác về dữ liệu [McFa91], [Jam93J, [Fred&94]

2 Thông tin {Informalion) cũng như dữ liệu, nó có rất nhiều cách định

nghĩa khác nhau ([McFa91], [Jam93], [Davi94], [Fred&94], [Merl95]) Một

Trang 11

định nghĩa bao quát hơn cả là xem thông tin là dữ liệu được đặt vào một n%ừ cánh với một hình thức thích hợp và có lợi cho người sư d ụ n g cuối cùng Ví dụ, có các dữ liệu về giá vàng ở các ngày trong tháng; nếu ta biêu

diễn giá vàng bằng một điểm giá trị trên mặt phấng theo trục thời gian với

ngày/tháng tăng dần từ trái sang phải, sẽ được thông tin về "sự biến động cua giá vàng trong tháng” mà khi để ở dạng bảng thường không thể nhận ra

được thông tin biến động này

3 Các hoạt dộng thông tin (information activities) là các hoạt động xảy

ra trong một HTTT, bao gồm việc nắm bắt - thu thập, xử lý, phân phối - truyền đi, lưu trữ, trình diễn dừ liệu và kiếm tra các hoạt động trong HTTT.

4 X ử lý {processing): X ử lý được hiểu là các hoạt động tác động lê n dừ

liệu như tính toán, so sánh, sắp xếp, phân loại, tổng hợp, Nói một cách

ngắn gọn, đó là các hoạt động đê chuyến đôi dữ liệu thành (hỏng tin

[Jam93 j Trong một HTTT thường có thế tổ chức nhiều phương thức xứ lý

khác nhau: xử lý lương tác (cà con người và máy tính cùng tham gia vào một quá trình xứ lý), xứ lý theo lô (batch procesing - tập trung dữ liệu lại để

xử lý cùng một lúc vào một thời điểm nào đó), x ử lý trực tuyến (on — line processing - dữ liệu nhận được được xử lý ngay nếu có yêu cầu), x ử lý theư thời gian thực (real lime processing - quá trình xử lý phải tuân thủ các điều kiện ràng buộc nghiêm ngặt về thời gian), xử lý phân tản (d istributed processing quá trình xử lý dược tiến hành ở nhiều nút khác nhau trên mạng máy tính)

5 Trình diễn d ữ liệu - thông tin (Infomation presentaion) là cách thể

hiện các dữ liệu dưới một hình thức thể hiện xác định mà con người có thế

nhận biết dược Các hình thức thổ hiện dữ liệu tiêu biếu thường là ký tự' (chữ, số, ký tự), hình ánh (các bicu tượng, tranh, ảnh với màu sac khác nhau) và âm thanh (tiếng nói, giai điệu, nhạc, ).

1.1.2 Hệ th ố n g th ô n g tin quản lý

Trong các HTTT, HTTT quản lý được biết đến sớm và phổ biến nhất Dố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 ý

níihĩa của bản thân tên gọi cúa nó H TT T qncm lý là sự phát triến và sư dụng

H TTT có hiệu qua trong một tô chức (theo Keen, Peter G.W.).

Theo David và Richard [Davi94], HTTT quản lý xét ờ trạng thái tĩnh

gồm năm yếu tố cấu thành là: phần cứng (gồm các thiết bị tin học như: m áy tính, các thiết bị ngoại vi, các đường t r u y ề n phần mềm (các chương trình máy tính, cấu trúc dữ liệu, các tài liệu và dữ liệu đi theo nó) [Vv&08Ị, dữ

12

Trang 12

liệu thu tục - quy Ịrình và con người (hình 1.1) Các định nghĩa về HTTT

trên đây giúp cho việc định hướng quá trình phân tích, thiết kế hệ thống Tu\ 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ó cượ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(CSDL), các chương trình và việc bố trí các thành phần bên trong nó

Nhân tố thiết lập

Cầu nối Công cụ

3hần cứng

Nguồn lực

Nhân tố sẵn có

Hình 1.1 Các yếu tố cấu thành của HTTT

1.1.3 Ph ân loại hệ th ố n g th ôn g tin

a P hân loại theo chứ c năng ngltiệp vụ

Có nhiều cách phân l.oại các HTTT Dưới đây trình bày một cách phân loại của Jeffery |Jefi'&99] với các loại sau:

► Hệ thong tự động văn phòng

Hệ thống tự động văn phòng (Office Automatic Sysytems - ÜAS) 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 diệ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 hoá 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 làm công tác văn phòng

► Hệ thống truyền thông

Hệ ihông truyên thông (Communication Systems - CS) 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 khác nhau một cách dễ dàng, nhanh chóng và chât lượng Nó đóng vai trò phục vụ cho các HTTT quản lý, hệ trợ giúp diều hành và các hệ khác hoạt động hiệu quả Ngay nay, hầu hết các hệ ứng dụng được phát triển trên nền web và không dây, thì vai trò của các hệ thống truyên thông càng trở nên quan trọng và là một bộ phận cấu thành của các HTTT

Trang 13

► Hệ thống cung cấp thông tin thực hiện

Hệ thống cung cấp thông tin thực hiện (Executive Information Systems - EỈS) 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

một 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 duno quy trình tổng hợp rất đơn giản, rõ ràng và có định hạn thời gian

► Hệ thống xử lý giao dịch

Hệ thống xử lý giao dịch (Transactions Processing Systems - 'íP S) là

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 hoá đơn bán hàng cho khách;

hệ thống trợ giúp nhân viên ngân hàng thực hiện giao dịch cho vay, rút gửi

tiết kiệm hay thanh toán của khách hàng qua ngân hàng Hệ này cung cấp nhiều dữ liệu nhất cho các hệ khác trong tổ chức

► Hệ thống thông tin quản lý

IỈTTT quản lý (M anagement Information Systems - MIS) 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 Ihú tục cho trước Nhìn chung, nó sử dụng dừ liệu từ các hệ thống xử lý giao dịch và các hệ khác để 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 Nó cần cho mọi tố chức để quản lý các hoạt dộng của mình

► Hệ trợ- giúp quyết định

Hệ trợ giúp quyết định (Décision Support System s - DSS) 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ô hinh để trợ giúp cho các nhà quản lý ra những quyết dị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 CSDL 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 ụ n g cho mỗi tổ chức cụ thể mới đạt hiệu quả cao

► Hệ chuyên gia

Hệ chuyên gia (Expert Systems - ES) là một hệ trợ giúp quyết định ở

mức chuyên sâu Ngoài những kiến thức, kinh nghiệm của các chuyên gia

14

Trang 14

và các luật suy diễn, nó có thể còn được 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 cua dối tượng cần có ý kiến chuyên gia 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 về một lĩnh vực chuyên sâu 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; đối với hệ hồ trợ quyết định, tuỳ nhu cầu

mà người dùng đưa thông tin vào khác nhau, và có các công cụ cho phép lựa chọn những giải pháp trợ giúp tương ứng với một phạm vi rộng rãi các yêu cầu Tuy nhiên, những giải pháp được lựa chọn này có thể còn xa với quyết định cuối cùng (chí mang tính trợ giúp) của người ra quyết định

► Hệ trợ giúp điều hành

Hệ trợ giúp điều hành (Execution Support Systems - ESS) đượ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 cap 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,

► Hệ trọ' giúp làm việc theo nhóm

Hệ trợ giúp làm việc theo nhóm (Groupware Systems - GS) ra dời

muộn hơn 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 cung cấp 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

Một cách phân loại khác theo chức năng nghiệp vụ của Steven [Stev96] bao gồm 6 loại HTTT chủ yếu sau đây: AOS, TPS, MIS, DSS, ESS và thêm

hệ cung cấp kiến thức làm việc (Knowledge Work System - KWS).

b Phân loại ílieo quy mô kỹ thuật

Một cách phân loại khác là phân loại các HTTT theo quy mô kỳ thuật của hệ thống [Henr94] Theo cách này, các HTTT dược phân làm 3 loại:

- Hệ thông tin cá nhân (Personal Informal ion Systems - PIS).

- Hệ thông tin làm việc theo nhóm (Workgroup Information Systems - W1S).

- Hệ thông tiri doanh nghiệp (Enterprise information Systems - EIS).

Khi đi từ hệ thống loại này sang hệ thống loại sau theo cách phân loạinày, ta đã đi qua những giới hạn quan trọng về mặt kỹ thuật tổ chức các HTTT Từ hệ thống loại 1 sang hệ thống loại 2 là vượt qua giới hạn về số người sứ dụng (từ một đến nhiều người sử dụng) và phải giải quyết một loạt

Trang 15

những vấn đề kỳ thuật (tổ chức tính toán song song, phân bồ việc sử dụng

bộ nhớ và những nguồn tài nguyên sử dụng chung khác) Từ hệ thống loại 2 sang hệ thống loại 3 là vượt qua giới hạn về chức năng Từ một hệ thống ít chức năng chuyển sang hệ thống với nhiều ứng dụng khác loại phải giải quyết hàng loạt những vấn đề kỹ thuật khác như an toàn dữ liệu và chương trình, tương tranh, truyền thông,

c Hệ thống tltồng tin tích hợp

Một HTTT thường găp trên thực tế là HTTT tích hợp (Integrated Information System - IỈS), nó gồm một vài loại HTTT cùng được tổ chức khai thác trong một tổ chức, có như vậy mới đáp ứng được mục tiêu củ a tổ chức thường dựa trên nhiều tiêu chí khác nhau Điều này cho thay, 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 đưa tổ chức đến một hệ thống tập trung, một sự phối 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ý, sự quan liêu trong hoạt dộng và khó Ihay đối Khi sự tập trung của một H T T T

dã đạt dến một điểm bão hoà, nhiều tổ chức bắt đầu cho các bộ phận cúa mình tiếp tục phát trien những hệ con với các đặc thù riêng Việc phát triển HTTT tích họp theo phương thức ghép nổi có ý nghĩa thực tế hơn, vì ràng, các tổ chức thường có các HTTT khác nhau được xây dựng ở những thời điếm khác nhau Ngày nay, người ta cố gắng đưa ra các chuẩn cho các HTTT cần xây dựng và cũng xây dựng nhiều công cụ "ghép nối" cho phép

có thể tích họp các HTTT khác nhau theo phương thức này Ngày nay internet phát triển rất mạnh, trong môi trường này người ta đã có những

công cụ tích họp rất tiện lợi như các cổng điện tử {portal) [Dner09], chỉ từ

một vị trí cho phép ta truy cập đến nhiều CSDL khác nhau hay các dịch vụ web (Webservices) cho phép lấy dược các dữ liệu từ các nguồn khác nhau một cách dễ dàng

d Phăn loại theo dặc tính kỹ thuật

Ngoài những cách phân loại trên, một số tài liệu còn phân loại các hệ thống theo các đặc tính kỹ thuật của nó [SommOl] Trong số đó phải kể đến

các hệ thống thời gian thực (real time systems) [JameOO], Đó là các hệ thống

mà các xử lý được thực hiện phải tuân thủ các điều kiện rất nghiêm ngặt về

16

Trang 16

mặt thời gian Một loại hệ thống khác nữa là các hệ thống nhúng (embecleci system s) |SimoOOJ trong đó các thành phần phần mềm được nhúng trong

các thiết bị phần cứng (phải kể đến các cảm biến, các bộ kích hoạt, các bộ chuyển đổi, ), và nó chỉ được kích hoạt khi các thiết bị này hoạt động Các

hệ này thường liên quan chặt chẽ với các hệ thống điều khiển tự động các thiết bị

1.1.4 T ại sao m ộ t tổ ch ức cần phát triển hệ th ố n g th ô n g tin

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 như 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 Ihấ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 trung chiến lược tống thê phát triển tố chức; tức là

cần được 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 trong tổ chức

1.2 Tiến hoá của cách tiếp cận phát triển hệ thống thông tin

Phát triển HTTT dựa trên máy tính bắt đầu từ những năm 50 của thế kỷ

XX 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 Vi vậy, cách tiếp cận phát triển một HTTT cũng thay đồi

Có thể kể đến 4 cách tiếp cận chính để phái triển một HTTT là 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

Trang 17

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 thấp, 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à gọi là tiếp cận định hướng tiến trình {process drive approach) Vì vậy, hiệu quá xử lý của 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 hoá các tiến trình'đang tồn tại

(như mua hàng, bán hàng, tính toán các bài toán kỹ thuật, ) 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 đang rất hạn hẹp; các dữ liệu được tổ chức trong cùng một tệp với chương trình

Sau này, với sự tiến bộ về khả năng lưu trữ, các tệp 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 H TTT 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 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 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 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 dố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 dữ liệu tương ứng Việc tổ hợp các tệp dữ liệu chuyên biệt cũng rất khó khăn, vì mỗi tệp 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í quá nhiều công sức cho việc thu thập và tổ chức dữ liệu, nhưng việc sử dụng các dữ liệu lại kém hiệu quả do chúng không thể chia sẻ giữa các ứng dụng khác nhau

1.2.1 Tiếp cận định hưón g tiến 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 ố n g

18

Trang 18

Tiếp cận định hướng dữ liệu (data drive approach) 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 Rồ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, dối thủ cạnh tranh Hai ý tưởng chính của cách tiếp cận này là:

- Tô chức CSDL chung cho các ứng dụng.

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 riêng biệt và tổ chức chúng thành những CSDL dùng chung Một CSDL

là một tập các dữ liệu có liên hệ lôgic với nhau, được tổ chức làm dễ dàng cho 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à lôgic) đế 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 CSDL phục vụ cho

1.2.2 Tiếp cận định hưóTig dữ liệu

Hình 1.3 c á u trúc hệ thống hướng dư liệu

Cách tiếp cận định hướng dữ liệu là hiệu quà, nhưng cần có những thay đổi phù hợp trong thiết kế, sao cho CSDL mới hồ trợ được cả các ứng dụng hiện tại cũng như các ứng dụng sau này

1.2.3 T iế p cận định h ư ó ì ig cấu trúc

Tiếp cận định hướng cẩu trúc (structure drive approach) 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.

Trang 19

Theo cách tiếp cận này, hệ ihống được phân chia thành các chức năng, bắt đầu ở núrc cao nhất, sau đó làm mịn dần dần để thành thiết kế với các chức

năng chi tiết hơn Trạng thái của hệ thống thế hiện qua CSDL tập trung và được chìa sẻ cho các chức năng íương đối độc lập với nhau cùng thao tác trên nỏ (hình 1.4) 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ác chương trình dựa trên cơ sở môđun hoá để dễ theo dõi, quản lv và bảo trì Sự ra đời của các ngôn ngữ lập trình có cấu trúc là cơ sở cho sự phát triển của định hướng này 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ế và phân tích HTTT theo hướng môđun hoá [Your&79J

ứ ng dụng 1 ứ ng dụng 2 ứ n g dụng k

Hinh 1.4 Cấu trúc hệ thống định hướng cấu trúc

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 dịnh luồng thông tin và các quá trình xử lý Việc xác định và chi tiết

hoá 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 ư ơ n g pháp luận từ trên xuống (top - down) Từ mức 0: mức chung nhất, quá trình

tiếp tục làm mịn cho dến mức thấp nhất ( m ứ c CƯ sở). Ở dó, từ các s ơ đồ

nhận dược, ta có thể bắt đầu tạo lập các chương trình với các moduli thấp

nhât (môđun cơ sớ).

Phát triển có cấu trúc đã cung cấp một tập hợp dầy dù các đặc tả hệ thống không dư thừa được phát triển theo quá trình lôgic và lặp lại Nó cho nhiều lợi ích so với các cách tiếp cận trước đó [Jeff&99j:

Làm giảm sự phức tạp (nhờ chia nhỏ, môđun hoá);

- rập trung vào ý tưởng (vào lôgic, kiến trúc trước khi thiết kế);

Chuấn mực hoá (theo các phương pháp, công cụ đã cho);

- Hướng về tương lai (kiến trúc tốt, môđun hoá, dễ bảo trì);

- Giảm bớt tính nghệ thuật trong thiết kế (phát triển hệ thống phải tuân thủ các quy tắc và phương pháp)

20

Trang 20

Theo cách tiếp cận định hướng đoi tượng (object oriented approach),

hệ thống được nhìn nhận như những gói các đối tượng (chứ không phải là các chức năng) tương tác với nhau Mỗi đối tượng bao gói trong nó cả các

dữ liệu và các thao tác thực hiện trên chúng, vì thế nó có trạng thái riêng

Mỗi đối tượng là một thể hiện của một lớp được xác định bởi các thuộc tính

và các phư ơng thức chung Bộ các "thuộc tinh'' xác định trạng thái của đối

tượng và các phương thức của nó thao tác với các dữ liệu của thuộc tính

Các lớp có thể được thừa kế từ một vài lóp đối tượng cao hon, và khi đó,

việc định nghĩa nó chỉ cần nêu đủ những gì khác nhau giữa nó và các lớp cha Các đối tượng liên lạc với nhau chỉ bằng cách trao đổi các thông báo để cộng tác thực hiện một dịch vụ chung (hình 1.5)

1.2.4 Tiếp cận định hướng đối tượng

Hinh 1.5 Mô hình cấu trúc cúa hệ thống hướng đối tượng

Ý tường cơ bản của cách tiếp cận này là sự bao gói và che dấu thông tin, sự kế thừa. Do bao gói cá dữ liệu và xử lý trong một đoi tượng, làm cho hoạt động của nó cũng như việc sửa đối chúng không làm ảnh hướng đến các đối tượng khác Việc che dấu thông tin hạn chế đến mức tối đa các đối tượng bên ngoài tác động lên đối tượng đó nếu không cần thiết

Ke thừa làm đơn giản hoá việc tạo ra các lớp mới có chung với lóp

đang tồn tại một số đặc trưng 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 giữa các lóp đối tượng trong hệ thống, chúng dễ

dàng "lắp ghép" và ''tháo dỡ'' mà không ảnh hưởng đến phần còn lại; hệ

thống dễ bảo trì, dễ sử dụng lại và do đó có thể đạt được quy mô lớn tuỳ ý 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ệ thong phần mềm có quy mô lớn, phức tạp hơn nhung nhanh hơn, d ễ bảo trì và có chi p h í chấp nhận được.

Trang 21

1.3 Vòng đời phát triển một hệ 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ệ (hổng Quá trình phát triển một HTTT kể từ lúc nó sinh ra dế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 luậ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 đó

là 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ò n g đời khác nhau, và mồi vòng đời có thể gồm từ ba đến trên hai chục pha khác nhau cho một phương pháp luận phát triển cụ thể [Jeff&99]

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ột 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 ( Waterfall M odel) (hình 1.6.) 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 à n h và bao trì H T ĨT Ở mồi pha đều có cái vào và cái ra, chúng thể hiện m ối quan

hệ 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 CRiản

lý xem xét, dá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

T h ờ i gian

Hình 1.6 Mỏ hình thác nước của vòng đời hệ thống

1.3.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)

22

Trang 22

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 việc phát triển HTTT cho 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 'riế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 vò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

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 chức năng hay dịch vụ mà hệ thống

dự kiến cần phải thực hiện Chúng được 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ả

những nội dung trôn đây thường được gọi là nghiên cứu hệ thống [V y 0 2 ]

Sau khi nghiên cứu hệ thống phải đưa ra được một kế hoạch dự án cơ sở

Ke hoạch dự án này cần được phân tích đảm bảo tính khả thi trên các mặt:

- K hu 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 hay khô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 von, 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

- K há thi về thời gia n : Dự án được phát triển trong thời gian cho phép

và tiến trinh 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 của tố chức và điều kiện quản lý mà tổ chức 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ố loại 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

Trang 23

1.3.2 P h â 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ữ liệ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 thường 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 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ứ ba 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 tổng thể tốt nhất đáp ứng được 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.3.3 T h iế t kế hệ th ốn g

Thiết kế là tìm các giải pháp công nghệ thông tin để đáp ứng các yêu

cầu đặt ra ở trên trong điều kiện môi trường hoạt động (môi trường đích) đã xác định Đặ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, tiếp đến là đặc ta 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 (giao diện, các báo cáo) đến CSDL 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ỏ là thiết kế lôgic và thiết kế vật /ỷ.

- Thiết kế lôgic: về mặt lý thuyết, thiết kế hệ thống lôgic không gắn vớí bất kỳ phần cứng và phần mềm hệ thống nào Thiết kế lôgic tập trung

vào các khía cạnh hoàn thiện nghiệp vụ cua hệ thong 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 là các thực thể vật lý

- Thiết kế vật lý là quá trình chuyển mô hình lôgic 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 ố n g được gấn vào 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ệ CSDL, cấu trúc tệp tổ chức dữ liệu, phần cứng, hệ điều hành và

24

Trang 24

m ôi trường mạng cần dượ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ó sẽ 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

(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ệ thong) và nghiệm thu cuối cùng (kiêm thử chấp nhận).

b Cài dặt và chuyển dồi hệ tltố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 trong hệ thống 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ệ thong); chuấn bị các tài liệ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 Quá trình chuyển đổi hệ thống cũ sang hệ thống mới là không đơn giản Nó cần được phân tích và lựa chọn

một cách thích hợp để đám bảo s ự chuyển đổi an toàn, thành công và hiệu quả [Vy02].

1.3.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

Trang 25

vận hành cần đánh giá xem hệ thống có đáp ứng được các mục tièu đặt 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 mới đặt

ra đề đáp ứng những thay đổi nảy sinh Vì vậy, các nhà phát triển 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ả) để thoả mãn yêu cầu của người sừ dụng cũng như 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ả hơn

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 dời khác cho m ột hệ thống mới Thông thường, sự phân biệt giữa việc bảo trì có quy mô lớn và

sự phát triển một hệ thống mới là không rõ ràng Khi có sự thay đôi về công nghệ sử dụng, hay sự thay đổi các chức năng một cách đáng kể, thì c ỏ thể xem hệ thống đã chuyển sang một hệ thống mới

1.4 Các phương pháp khác nhau phát triển hệ thống thông tin

Có nhiều tiến trình phát triến HTTT khác nhau đã được áp dụng trên cơ

sở của những mô hình vòng dời phát triển khác nhau |Jam 93| Sau đây sẽ xem xét một số tiến trình tiêu biểu

1.4.1 V ò n g đời p h á t triển hệ th ố n g tr uyền th ố n g

Vòng đời phát triển hệ thống truyền thống (còn gọi là mô hình thúc nước - waterfall m odel) là một 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ếl thúc Quá trinh phát triển gồm

6 giai đoạn: xác định dự án, nghiên cứu hệ thong, thiết kế, lập chương trình, cài đặt và áp dụng (hình 1.7) 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

26

Trang 26

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.

a Các ph a plíá 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 [Vy02] Trong

pha thiết kế đặc biệt nhấn mạnh tới các đặc tả hình thức hoá, 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 và các hệ thông tin quản lý 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 dòi hỏi một sự phân tích hình thức hoá 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 90 của thế kỷ XX và những năm đầu của thế kỷ XXI nay

Trang 27

1.4,2 P h ư o n g p há p làm bản mẫu

a N ội dung phương pháp

Phương pháp này ra đời muộn hơn [Mart90] Nó ít hình thức hoá hon 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 ỉ 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 cần cho việc tạo ra bản mẫu

Hình 1.8 Sơ đồ phương pháp làm 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 khác nhau (chẳng hạn công cụ CASE)

28

Trang 28

- 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 dem trình diễn hay cho người sử dụng thử nghiệm Người sử dụng biết dược bán mẫu dá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 ihông tin bổ sung khác Bước 3 và 4 được lặp lại cho đến khi bàn mẫu thoả 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 (hình 1.8)

Làm bản mẫu đặc biệt có lợi khi mà một số nhu 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 nhanh chóng tạo ra hệ thống, và hạn chế được những chi phí không cần thiết của sự phái 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 và có nhiều lương tác với người dùng

Việc làm mẫu nhanh cho phép đi qua những bước cơ bản trong phát triển HTTT một cách dễ dàng, khuyến khích đội phát triền tiến nhanh đế đạ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 Ihô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ế lại 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ại làm khó khăn cho việ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, nên người quản lý có thế nghĩ rằng, việc thừ nghiệm dành cho người dùng và những sai sót nhó có thể chậm được sửa dồi hon Vì hệ thống rất dễ thay dối, nên việc làm tài liệu có thể không kịp thời

c Các m ức độ làm mẫu klìác nhau

Tuỳ 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:

Trang 29

- Khi tiến hành làm mẫu bằng tay hay bằng một công cụ đơn giản, kết

quả làm mẫu chỉ đon thuần cho một đặc tả yêu cầu (dùng xong bỏ bản mẫu đi).

- 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 hoá; 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ác công cụ chuyên

dụng để lắp ghép các thành phần phcm mềm cỏ san (được sư dụng lại) thành chương trình Trong trường họp này, mẫu nhận được cho ta một số

môđun có thế vận hành ngay được Khi liên kết các môđun 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 được 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

còn tạo ra những cơ sở cho việc kỷ kết hợp đồng, làm tăng lòng tin của khách hà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.4.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 xoan ốc

nhiều hơn cả Mô hình được Boehm [Boeh88] đưa ra năm 1988 Nó dặ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 tạo ra một phiên bản

vận hành được, bát đầu bàng việc lập kế hoạch, phân tích rủi ro, tạo nguyên mẫu, hoàn thiện và phải triển hệ thong, duyệí lại, và cứ thế tiếp tục (hình 1.9).

Quyêt định có tiêp tục hay không? (cao điể m của việc phân tich rủi ro) Hướng tới hệ thống hoàn chỉnh

Đảnh giá của

khách hàng

Bản mẫu ban đầu, làm bản mẫu tiếp theo

Hình 1.9 Mỏ hình xoăn ôc

30

Trang 30

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 4 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 lí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ệ.

Với mỗi lần lặp xoắn ốc (bắt đầu từ trung tâm), phiên bản nhận được có khả năng vận hành và bổ sung thêm Neu phân tích rủi ro chi 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 đề xuất cho nó

Phần kỹ nghệ sử dụng ở mồi vòng lặp có thể là cách tiếp cận vòng đời hay làm ban mẫù Khi các hoạt động phát triển tăng lên, vòng xoáy chuyển

xa hon 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 ngày càng rộng hon 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 ban mẫu xem như một CƯ chế làm giam 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 dánh giá đúng rủi ro cần có chuyên gia, vì thế chi phí cần thiết sẽ không thích hợp với những dự án nhở Hơn thế nữa, sự thay dổ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

Vì vậy, khi áp dụng cần có sự thoả thuận trước với khách hàng

1.4.4 P h ư ơ n g p há p phát triến hệ th ố n g d ự a trên việc s ử d ụ n g lại

HTTT có thể phát triển bằng cách sử dụng lại các gói phần mềm ứng dụng đã có Đó 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 có thể chọn sử dụng 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

Trang 31

đặ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

Chuyển đổi định

dạng dữ liệu vào

Chuyển đổi định dạng dữ liệu ra

Mở rộng

Bổ sung phía

y

Phần mềm đóng gói

- \

BỔ sung - 4phía sau

*

Hình 1.10 Mô hình chung nhất sử dụng phần mềm đóng gói

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ù

Đe Ihoả mãn nhu cầu thị trường một cách rộng rãi, các gói phần m ềm ứng dụng thường chỉ đáp ứng những yêu 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 tuỳ chọn,

các phần chương trình chuyền đối phía trước hay phía sau ựront - or — back program: hình Ì.IO) của của phần mềm dó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 đe đáp ứng yêu cầu đa dạng của tổ chức Tuy nhiên, đôi khi những cải liến của khách hàng hay các chương trình bổ sung lại quá dắt, làm giảm các lợi thế vốn có của các gói phần mềm

Đe 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ưoníì trình có thê đáp ứng được những chức năng

gì? Thoả mãn yêu cầu cho bài toán nghiệp vụ của chúng ta đến mức nào?

- Tính mềm dẻo: Gói phần mềm có dễ cải biên, dễ m ờ rộng hay không?

Nhũng dặ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, hay không?

- Yểu cầu về kỹ thuật'. Cấu hình máy tối thiếu để thực hiện gói chương trình như thế nào? Loại hình dữ liệu và cấu trúc tệp sử dụng ra sao?

32

Trang 32

- 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 độ như thế nào?

- Tài liệu: Tài liệ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 không?

- 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 như thế nào? Giá mua bao

gồm những khoản mục gì? (các môđun 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? Chi phí cho những phần bổ sung, nâng

A o

câp?

Khi sử dụng gói phần mềm, việc thiết kế hệ thống bao gồm cả việ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ế dá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ần dược tính toán để so sánh với dự án phát triển nó Việc làm thích ứng các phần mềm đóng gói với tổ chức như một yêu cầu tất yếu, sự khác nhau ở đây chỉ là mức dộ phải làm thêm mà thôi Ncu không có những phương tiện khác hỗ trợ, tố chức phải thay đổi thủ tục và quy trình nghiệp vụ cùa mình cho phù hợp với gói phần mềm đã lựa chọn

Ngày nay, khi phát triển các HTTT, người ta không chi sử dụng lại các thành phần phần' mềm đóng gói mà còn sử dụng cả các mẫu thiết kế

(patterns) [Gamm&95], các khung làm việc (fram ew orks) [D'Sou&97] và các mô hình miền ứng dụng (domain models) [Sodh&99].

1.4.5 Phát triển hệ th ố n g do người s ử d ụ n g 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 /hực hiện 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

Trang 33

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à Ihử 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 CSDL

- 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.4.6 P h ư o n g p há p th u ê 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 diều kiện đặc thù N hữ ng

tổ chức cung cấp dịch vụ 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) Hiện nay do việc vận hành các trang web tương đối đơn giàn, không ít tố chức đặt hàng thuê làm trang web, vận hành một thời gian ngắn rồi tiếp nhận đê khai thác

Việc thuê ngoài cho phép tổ 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ủa HTTT, nó có thể m ấ t kha năns 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í c a o 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

34

Trang 34

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.

1.5 Vai trò của những người tham gia phát triển hệ thống thông tin

Một số tổ chức có thể sử dụng những cách khác nhau để phát triển bộ phận thông tin Tuỳ theo mô hình tổ chức đó, các nhà phân tích được giao nhiệm vụ báo cáo cho các bộ phận chức năng khác nhau Khi đó, nhà phân tích có điều kiện học được nhiều hon về nghiệp vụ mà họ trợ giúp Cách tiếp cận này đáp ứng rất tốt yêu cầu phát triển Khi đó, nhà phân tích trở thành chuyên gia cá về phát triển hệ thống và lĩnh vực nghiệp vụ

Phát triển HTTT là một sự nỗ lực của cả đội Các nhà phân tích hệ thống ihường làm việc trong một đội được tổ'chức trên cơ sở của dự án Các thành viên của đội có thể mở rộng để bao gồm cả người quản lý HTTT, các nhà lập trình, người sử dụng và các chuyên gia nghiệp vụ khác nhau Vì thế, biết làm việc một mình và học de làm việc với người khác trong dội là một

kỹ năng quan trọng đối với bất kỳ một nhà phát triển hệ thống nào Đe làm việc tốt trong một đội, mỗi thành viên của đội ihường xuyên phải giao tiếp với nhau một cách cởi mớ và tin cậy Các thành viên của đội giao tiếp một cách hiệu quả hon nếu họ tin tưởng ở người khác Sự tin cậy đến lượt mình

sẽ được xây dựng trên sự tôn trọng lẫn nhau và phải đặt mục tiêu riêng và cách nhìn khác nhau vào mục tiêu chung và cách nhìn nhận thống nhất

Để đảm bảo một đội làm việc tốt, người quản lý cần phát triển một cơ chế thúc đấy trách nhiệm chung, tăng khả năng cùng suy nghĩ sao cho sự cố gắng của mỗi thành viên của đội được thế hiện ra qua công việc của họ Sự thành công của đội phụ thuộc không chỉ vào sự nỗ lực của các thành viên

mà còn phụ thuộc vào sự quản lý hoạt động của đội Quản lý dự án hiệu quả

là một yếu tố cơ bản khác của một đội thành công

Trang 35

hình thực hiện dự án Như một người lãnh đạo một bộ phận, người quản lý HTTT cũng là người lập kế hoạch và định hướng phát triển cho các nhà phân tích và các nhân viên khác; giải quyết những vấn đề nồi lên trong quá trình thực hiện.

Mỗi phòng trong bộ phận HTTT cũng có thể có người quản lý Chẳng hạn, trướng phòng phát triển, trưởng phòng điều hành, trưởng phòng lập trình, Những người này có thể tham gia vào một vài dự án phát triển và họ

có thể là người chủ nhiệm dự án Dù ở vị trí nào, họ đều có trách nhiệm hồ trợ quá trình thực hiện các dự án

- Kỹ năng phân tích làm cho nhà phân tích có thể hiểu được tố chức và

sự hoạt dộng của nó; có thế xác định được những cơ hội và các vấn đê đang dặt ra để phân tích và giải quyết chúng Một điếm quan trọng của kỳ năng

phân tích của nhà phân tích là cách suy nghĩ mưng tính hệ thống Nhờ cách

suy nghĩ này, nó cho phép nhà phân tích nhìn nhận dược các mối quan hệ quan trọng giữa các HTTT trong một tổ chức cũng như giữa nó với môi trường mà trong đó tổ chức tồn tại

- K ỹ năng kỹ thuật cho phép các nhà phân tích hiểu được những tiềm

năng và hạn chế của công nghệ thông tin Như một nhà phân tích, anh ta có thế xem xét IỈTTT sao cho nó trợ giúp cho người dùng giải quyết các vấn đề đặt ra và hướng dẫn việc phát triển và thiết kế hệ thống Nhà phân tích cần phải hiếu biết và có thể làm việc với các ngôn ngữ lập trình, với các hệ điêu hành khác nhau và với các loại hình máy tính khác nhau

- Kỹ năng quản lý giúp nhà phân tích quản lý các dự án, các nguồn lực, rủi ro và những thay đôi

- Kỹ năng giao tiếp giúp nhà quản lý làm việc với những người dùng

cuối cùng, với khách hàng cũng như với các nhà phân tích khác, các nhà lập trình

Nhà phân tích phải đóng vai trò chính trong việc liên kết giữa người sử dụng, các nhà lập trình và các nhà chuyên môn khác Nhà phân tích c ầ n có khả năng giao tiếp bằng lời, bằng văn bản hiệu quả; bao gồm cả khả n ă n g tồ chức và điều hành các cuộc họp, các cuộc trao đổi, phỏng vấn, biết lắng

36

Trang 36

nghe Những nhà phân tích có trình độ cao thường biết kết họp tốt bốn kỹ năng trên trong thực tế.

Giống như một nghề nghiệp bất kỳ, để trở thành một nhà phân tích hệ thống có trình độ, các sinh viên công nghệ thông tin sau khi ra trường cần một số năm để tiếp tục học tập và tích luỹ kinh nghiệm Theo con đường nghề nghiệp, sau khi trở thành một nhà phân tích thực sự, anh ta có thể trở thành nhà phân tích với các chức danh cao hơn, rồi trở thành người quản lý được dự án, phát triển HTTT; và tiến xa hơn là trở thành người lãnh đạo

quản lý nghiệp vụ hay quản lý toàn bộ HTTT - các CIO (C h ie f Information Officer).

1.5.3 C á c nhà lập trình

Các nhà lập trình có nhiệm vụ chuyển các đặc tả thiết kế hệ thống đã cho thành các cấu trúc mà máy tính hiểu được và vận hành được Việc viết

chương trình máy tính đôi khi còn gọi là viết mã (coding) hay mã hoủ thiết

kế Nhà lập trình cũng viết các tài liệu chương trình và các chương trình

kiểm thử hệ thống Việc lập trình là một lao động nặng nhọc Vì vậy, nhiều

công cụ tính toán có mục đích chuyên dụng gọi là bộ tạo m ã đã được phát

triển cho phép tạo, sinh mã từ các đặc tả; giúp tiết kiệm thời gian và công sức Các bộ tạo mã không giải phóng hoàn toàn các nhà lập trình, nó chỉ làm thay đổi bản chất của hoạt động lập trình Khi đã có các bộ tạo mã trợ giúp, các nhà lập trình làm nhiệm vụ phân tích các mã nhận dược, phát hiện và sứa lỗi, tối ưu hoá nó và tích họp nó với các phần khác của hệ thống

1.5.4 N g ư ò i s ử d ụ n g cuối cùng

Theo cách truyền thống, các nhà phân tích phỏng vấn, quan sát, điều tra những người dùng cuối cùng để xác định xem họ cần gì từ HTTT phải xây dựng Những người dùng cuối cùng là các nhân viên nghiệp vụ, họ là những chuyên gia trong lĩnh vực nghiệp vụ của mình Họ thường không có các kỹ

năng, thời gian, mong muốn hoặc đại diện để đòi hỏi phát triển HTTT Bởi

vậy, nhà phân tích cần làm việc với họ để chuyển những hiểu biết nghiệp vụ của họ thành HTTT trợ giúp cho họ Thông thường, người dùng cuối cùng

là khách hàng, là người ta cần xây dựng HTTT cho họ Đôi khi họ cũng giúp đỡ các đội phát triển như cung cấp các ý kiến chuyên gia về cách thức hoạt động khác nhau Họ cùng tham gia vào việc kiểm thừ hệ thống, đánh giá hệ thống và là người dùng hệ thống sau này Những đóng góp của họ có

ý nghĩa quan trọng đến việc sừ dụng hệ thống một cách hiệu quả

Trang 37

và các ràng buộc cho các dự án phát triển Trong những tổ chức lớn, các dự

án phát triển hệ thống được các uỷ ban tư vấn, các nhà lãnh đạo điều hành tham gia quyết định, và họ thường là thành viên của các nhóm lập kế hoạch Bởi vậy, họ có quyền định hướng cho việc phát triển, đề xuất, thông qua quyết định và giao nhiệm vụ cho các bộ phận thực hiện

1.5.6 Các ch u y ên viên kỹ th uật và các nhà q uả n lý khác

Đối với một tổ chức lớn, vai trò của HTTT là đa dạng và trải rộng, Vì vậy, có nhiều nhà chuyên môn được đưa vào tham gia hqạt động phát triển HTTT Nếu một tổ chức đã có những CSDL, thì người quản trị CSDL thường cùng tham gia vào mọi dự án liên quan đến CSDL của tổ chức Các chuyên gia về mạng và truyền thông hỗ trợ việc phát triển hệ thống liên quan đến truyền dữ liệu trong và ngoài tổ chức Một vài tổ chức có bộ phận

đào tạo cản bộ có liên quan đến việc cung cấp nhân lực, đào tạo nhân lực và

người sử dụng; làm các tài liệu đào tạo, hướng dẫn sử dụng Ngoài ra, đối với một hệ thống lớn và nhạy cám (như hệ thống tài chính) rất cần thiết có

cán bộ kiếm toán nội bộ để đảm bảo cho hoạt động kiểm soát các yêu rầu

đặt ra được xây dựng trong hệ thống Trong nhiều tổ chức lớn, người kiểm toán có trách nhiệm theo dõi những thay đối trong thiết kế hệ thống Những

sự tương tác cần thiết của tất cả các cá nhân tham gia phát triển hệ thống làm cho việc phát hệ thống được thực hiện như một đội thống nhất

1.6 Xây dựng thành công hệ thống thông tin

1.6.1 K hái niệm về hệ th ốn g th ô n g tin đ ư ợ c xâ y d ự n g thành c ô n g

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 T T T được xem là có hiệu quả nếu nó góp phần nâng cao chất lượng hoại động quan lý lông thế(I) của một tổ chức, đuợc thể hiện trên các mặt:

^ Ọ u à n lý c h ất l ư ợ n g t ổ n g thể - T Q M (Tot al Q u a li t y M a n a g e m e n t ) là m ộ t khái niệrr» c u a

n gư ờ i N h ậ t chỉ s ự q u à n lý c h ất lượnị, c ủ a tổ c h ứ c h ư ớ n g đến m ụ c t i êu sai h ỏ n g b ằ n g 0.

38

Trang 38

- Đạt được các mục tiêu thiết kế đề ra.

1.6.2 N h ữ n g vấn đề đặt ra của việc xây d ự n g hệ th ố n g th ông tin

Rất tiếc là có tới 75% các HTTT 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ương pháp luận và công cụ sử dụng

- Quán lý dự án

Khi đi sâu nghiên cứu những vấn đề nêu trên, nhiều nguyên nhân cốt yếu nằm ở khâu phân tích và thiết kế

1.6.3 C ô n g cụ trọ giúp tự đ ộng hoá phát triến hệ th ố n g th ông tin

Trước đây, phát triển HTTT xem như hoạt động mang tính nghệ thuật Mỗi nhà phát triển áp dụng các kỹ thuật theo cách riêng Sự thiếu thống nhất trong kỹ thuậl và công nghệ làm khó khăn cho việc tích hợp hệ thống, tích hợp dữ liệu và báo trì sau này Đẻ giải quyết những vấn đề nêu trên, các phưcmg pháp và phương pháp luận cùng các công cụ tự động hoá kèm theo

đã được xây dựng, nhàm trợ giúp việc tự động hoá quá trình phát triển HTTT

a K hái niệm về CASE

Trong phát triển các HTTT có nhiều hoạt động khác nhau (chẳng hạn: ước lượng các nguồn lực yêu cầu; làm các tài liệu đặc tả, mã hoá; thực hiện các kiểm thử tích họp và viết tài liệu hướng dẫn sử dụng, ) Cho đến nay, không phải tất cả các hoạt động này đã được tự động hoá bằng máy tính mà không cần đến sự can thiệp của con người Tuy nhiên, rất nhiều công cụ đã được phát triển để trợ giúp cho các bước của quá trình phát triển mà ta gọi

chung là CASE CASE là chữ viết tắt của Computer A id Soß\>are Engineering,

có nghĩa là: "Kỹ nghệ phần mềm được hỗ trợ bằng máy tính" Các đối tượng

của CASE đã trợ giúp các nhà phân tích hệ thống với các công cụ tự động

Vì vậy, các hệ thống có chất lượng cao hon được xây dựng kịp thời với

Trang 39

và các ràng buộc cho các dự án phát triển Trong những tổ chức lớn, các dự

án phát triến hệ thống được các uỷ ban tư vấn, các nhà lãnh đạo điều hành tham gia quyết định, và họ thường là thành viên của các nhóm lập kế hoạch Bởi vậy, họ có quyền định hướng cho việc phát triển, đề xuất, thông qua quyết định và giao nhiệm vụ cho các bộ phận thực hiện

1.5.6 Các chu yên viên kỹ thuật và các nhà q uả n lý khác

Đối với một tổ chức lớn, vai trò của HTTT là đa dạng và trải rộng Vì vậy, có nhiều nhà chuyên môn được đưa vào tham gia hqạt động phát triển HTTT Neu một tổ chức đã có những CSDL, thì người quản trị CSDL thường cùng tham gia vào mọi dự án liên quan đến CSDL của tố chức Các chuyên gia về mạng và truyền thông hỗ trợ việc phát triển hệ thống liên quan đến truyền dữ liệu trong và ngoài tổ chức Một vài tổ chức có bộ phận

đào tạo cán bộ có liên quan đến việc cung cấp nhân lực, đào tạo nhân lực và người sừ dụng; làm các tài liệu đào tạo, hướng dẫn sử dụng Ngoài ra, đối với một hệ thống lớn và nhạy cảm (như hệ thống tài chính) rất cần thiết có

cán bộ kiêm toán nội bộ để đảm bảo cho hoạt động kiểm soát các yêu rầu đặt ra dược xâv dựng trong hệ thống Trong nhiều tổ chức lớn, người kiểm toán có trách nhiệm theo dõi những thay đổi trong thiết kế hệ thống Những

sự tương tác cần thiết của tất cả các cá nhân tham gia phát triển hệ thống làm cho việc phát hệ thống được thực hiện như một đội thống nhất

1.6 Xây dựng thành công hệ thống thông tin

1.6.1 Kbái niệm về hệ thống th ô n g tin đ ư ọ c xâ y d ự n g th à n h c ô n g

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 đ ồ n g

ý với nhau về đánh giá và hiệu quả của nó Tuy nhiên, người ta cũng dã đưa

ra một số tiêu chuẩn làm cơ sở cho việc đánh giá một HTTT Một H T T T được xem là có hiệu quả nếu nó góp phần nâng cao chất lượng hoại đ ộ n g quản lý tổng thể<l) cùa một tổ chức, được thể hiện trên các mặt:

^ Q u à n lý c h ất l ư ợ n g t ổ n g thể - T Q M ( Tot al Q u a l i t y M a n a g e m e n t ) là m ộ t khái n i ệ m c u a

n g ư ời N h ậ t chi s ự q uả n lý c h ấ t lượnỊ, c ù a tổ c h ứ c h ư ớ n g đ ế n m ụ c tiêu sai h ỏ n g b ằ n g 0.

38

Trang 40

- Đạt được các mục tiêu thiết kế đề ra.

1.6.2 N h ữ n g vấn đề đặt ra của việc xây d ự n g hệ th ố n g th ông tin

Rất tiếc là có tới 75% các HTTT 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ườne, 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ương pháp luận và công cụ sử dụng

- Quản lý dự án

Khi đi sâu nghiên cứu những vấn đề nêu trên, nhiều nguyên nhân cốt yếu nam ở khâu phân tích và thiết kế

1.6.3 C ô n g cụ trọ giúp tự đ ộng hoá phát triến hệ th ố n g thông tin

Trước đây, phát triển HTTT xem như hoạt động mang tính nghệ thuật Mỗi nhà phát triền áp dụng các kỹ thuậ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 việc tích họp hệ thống, tích hợp dừ liệu và bảo trì sau này Để giải quyết những vấn đề nêu trên, các phương pháp và phương pháp luận cùng các công cụ tự động hoá kèm theo

dã được xây dựng, nhằm trợ giúp việc tự động hoá quá trình phát triển HTTT

a K hái niệm về CASE

Trong phát triển các HTTT có nhiều hoạt động khác nhau (chẳng hạn: ước lượng các nguồn lực yêu cầu; làm các tài liệu đặc tả, mã hoá; thực hiện các kiềm thử tích họp và viết tài liệu hướng dẫn sứ dụng, ) Cho đến nay, không phải tất cả các hoạt động này đã được tự động hoá bàng máy tính mà không cần đến sự can thiệp của con người Tuy nhiên, rất nhiều công cụ đã được phát triển để trợ giúp cho các bước của quá trình phát triển mà ta gọi

chung là CASE CASE là chữ viết tắt của Computer A id Soßvare Engineering,

có nghĩa là: "Kỹ nghệ phần mềm được hỗ trợ bằng máy tính" Các đối tượng

của CASE đã trợ giúp các nhà phân tích hệ thống với các công cụ tự động

Vì vậy, các hệ thống có chất lượng cao hon được xây dựng kịp thời với

Ngày đăng: 03/12/2019, 00:16

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

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

w