Quá trình phát triển hệ thống thông tin (hay Vòng đời phát triển hệ thống thông tin,tiếng Anh Information System Development Process, Information Systems Development Life Cycle: ISDLC) là quy trình bao gồm các giai đoạn thực hiện trong xây dựng một hệ thống thông tin mới (hoặc thay thế một hệ thống thông tin sẵn có) để giải quyết vấn đề (hoặc khai thác cơ hội) mới được nảy sinh nhằm góp phần hoàn thành mục tiêu của tổ chức. quá trình phát triển hệ thống thông tin còn được gọi là Vòng đời phát triển hệ thống thông tin. Các giai đoạn thực hiện điển hình và trình tự được tiến hành trong quá trình phát triển hệ thống thông tin là Khảo sát, Phân tích, Thiết kế, Triển khai, Vận hành, bảo trì và đánh giá.
Một số lý do (vấn đề/cơ hội) để khởi động một quá trình phát triển hệ thống thông tin là hệ thống thông tin (hệ thống thông tin) hiện tại có vấn đề, tổ chức mong muốn nâng cao năng lực cạnh tranh (chẳng hạn, khai thác công nghệ mới), sáp nhập tổ chức, thị trường thay đổi, luật hoặc quy định mới có hiệu lực, v.v. quá trình phát triển hệ thống thông tin hoặc được lên kế hoạch từ trước hoặc được khởi động đột xuất. Về phổ biến, quá trình phát triển hệ thống thông tin diễn ra trong suốt thời gian dài từ khi khởi động nó cho tới khi hệ thống thông tin mới đi vào hoạt động, được bào trì - đánh giá và được kết thúc khi hệ thống thông tin đó lại cần được thay thế bằng một hệ thống thông tin mới thông qua một quá trình phát triển hệ thống thông tin tiếp theo.
Các giai đoạn phát triển hệ thống[sửa]
Các giai đoạn trong quá trình phát triển hệ thống thông tin: Nói chung quá trình phát triển hệ thống thông tin bao gồm các giai đoạn thực hiện theo trình tự là Khảo sát hệ thống, Phân tích hệ thống, Thiết kế hệ thống, Triển khai hệ thống, Vận hành, bảo trì và đánh giá hệ thống.
Khảo sát hệ thống (khảo sát hệ thống, còn được gọi là lên kế hoạch hệ thống) là giai đoạn đầu tiên trong quá trình phát triển hệ thống thông tin có nhiệm vụ xác định và xem xét vấn đề/cơ hội theo phương diện vấn đề/cơ hội đó tác động tới việc thực hiện mục đích của tổ chức. Đầu tiên, cần nhận diện vấn đề/cơ hội, phạm vi và độ thường xuyên, những bộ phận, cá nhân chịu/được ảnh hưởng từ vấn đề/cơ hội để khẳng định về tính cần thiết phải giải quyết vấn đề/khai thác cơ hội. Kết quả chính của giai đoạn này hoặc là một dự án phát triển hệ thống được xác định bao gồm báo cáo về vấn đề được giải quyết/cơ hội kinh doanh được tạo ra, các cam kết về nguồn lực hoặc một khuyến cáo nên chấm dứt quá trình phát triển hệ thống thông tin với các lập luận về tính không cần thiết hoặc không khả thi. Các nội dung hoạt động chính được tiến hành trong giai đoạn khảo sát hệ thống là Xem xét yêu cầu khảo sát hệ thống, Xác định nhiệm vụ khảo sát hệ thống và hình thành đội khảo sát hệ thống gồm lãnh đạo và các thành viên, Xây dựng ngân sách và lịch biểu khảo sát hệ thống, Thực hiện khảo sát hệ thống, Phân tích sơ bộvề tính khả thi (kỹ thuật, kinh tế, pháp lý, vận hành, lịch trình), Dự thảo Báo cáo khảo sát hệ thống, Lãnh đạo phê duyệt Báo cáo khảo sát hệ thống. Giai đoạn khảo sát hệ thống có tầm quan trọng đặc biệt, vì vậy, trong một số phương án quá trình phát triển hệ thống thông tin, giai đoạn này còn được tổ chức thành hai giai đoạn là Xác định vấn đề/cơ hội và mục đích và Xác định yêu cầu thông tin.
Phân tích hệ thống (phân tích hệ thống) là giai đoạn thứ hai trong quá trình phát triển hệ thống thông tin có nhiệm vụ xác định những công việc mà hệ thống thông tin cần phải làm để giải quyết vấn đề/khai thác cơ hội. Giai đoạn này bao gồm việc nghiên cứu các hệ thống và quy trình làm việc hiện có để xác định điểm mạnh, điểm yếu cũng như các cơ hội mang tới sự cải tiến. Kết quả chính của bước phân tích hệ thống hoặc là một danh sách các yêu cầu (với độ ưu tiêncủa chúng) về những việc hệ thống thông tin mới cần phải làm hoặc một khuyến cáo nên chấm dứt quá trình phát triểnhệ thống thông tin với các lập luận về tính không cần thiết hoặc không khả thi. Các nội dung hoạt động chính được tiến hành trong giai đoạn phân tích hệ thống là Xác định nhiệm vụ phân tích hệ thống và hình thành đội phân tích hệ thống (một bộ phận chủ chốt là những người đã tham gia vào đội khảo sát hệ thống), Thu thập dữ liệu (xác định nguồn dữ liệu và cách thức thu thập dữ liệu từ các nguồn), Phân tích dữ liệu (mô hình hóa dữ liệu, mô hình hóa hoạt động, sử dụng các công cụ phân tích dữ liệu), Thu thập và phân tích yêu cầu nhằm xác định người sử dụng, yêu cầu của người sử dụng hệ thống, của tổ chức và các bên liên quan (các hình thức thu thập yêu cầu phổ biến là: phỏng vấn trực tiếp, dựa trên các yếu tố thành công cốt lõi, màn hình hiển thị và các công cụ phân tích yêu cầu), Xây dựng Báo cáo phân tích hệ thống.
Thiết kế hệ thống là giai đoạn thứ ba trong quá trình phát triển hệ thống thông tin có nhiệm vụ giải đáp cho câu hỏi "hệ thống thông tin cần phải làm như thế nào để đạt được các giải pháp giải quyết vấn đề/khai thác cơ hội?". Kết quả chính của giai đoạn này là một Báo cáo thiết kế hệ thống (bao gồm một báo cáo kỹ thuật hoặc mô tả hệ thống). thiết kế hệ thống cần chi tiết hóa đầu vào, đầu ra, giao diện người sử dụng hệ thống; đặc tả các thành phần phần cứng, phần mềm, cơ sở dữ liệu ,truyền thông, nhân viên và thủ tục của hệ thống, chỉ dẫn cách liên kết các thành phần này. Thiết kế hệ thống thông tin (xem mục từ THhệ thống thông tin) gồm hai pha là thiết kế lô gic và thiết kế vật lý. Các nội dung hoạt động chính được tiến hành trong giai đoạn thiết kế hệ thống là Thiết kế cơ sở dữ liệu, Thiết kế đầu ra – đầu vào, Thiết kế giao diện, Thiết kế an ninh và kiểm soát hệ thống, Thiết kế môi trường, Đề xuất, đánh giá và lựa chọn thiết kế hệ thống thông tin, Xây dựng Báo cáo thiết kế hệ thống.
Triển khai hệ thống là giai đoạn thứ tư trong quá trình phát triển hệ thống thông tin có nhiệm vụ tạo ra hoặc tiếp nhận các thành phần hệ thống đã được chi tiết hóa trong thiết kế hệ thống, lắp ráp chúng, và đưa hệ thống mới vào hoạt động thực tế. Các nội dung hoạt động chính được tiến hành trong giai đoạn Triển khai hệ thống là Tiếp nhận phần cứng từ nhà cung cấp, Tiếp nhận phần mềm (tự phát triển trong trường hợp đội ngũ nhân lực hệ thống thông tin của tổ chức đủ năng lực hoặc mua), Thu thập hệ thống cơ sở dữ liệu và truyền thông, Chuẩn bị người sử dụng hệ thống để đạt được sẵn sàng về người sử dụng hệ thống bằng cách tiến hành các khóa đào tạo (cán bộ quản lý, nhân viên, người sử dụng hệ thống khác và các bên liên quan), Tuyển dụng và đào tạo nhân viên hệ thống thông tin là những người nắm bắt toàn diện và chi tiết về mặt kỹ thuật của hệ thống, Chuẩn bị nơi lắp đặt (mặt bằng, các vật dụng cần thiết, thiết bị phòng-chống cháy, các dịch vụ điện, nước, truyền thông, v.v.), Chuẩn bị dữ liệu nhằm đảm bảo mọi tập tin và cơ sở dữ liệu là sẵn sàng cho hệ thống thông tin mới, Cài đặt hệ thống thực hiện quá trình lắp đặt vật lý các thiết bị máy tính hoạt động, Kiểm thử hệ thống (kiểm thử đơn vị, kiểm thử hệ thống, kiểm thử khối lượng, kiểm thử tích hợp, kiểm thử chấp nhận), Khởi động hệ thống, Chấp nhận của người sử dụng hệ thống bằng văn bản giữa các bên liên quan.
Vận hành, bảo trì và đánh giá hệ thống là giai đoạn cuối cùng trong quá trình phát triển hệ thống thông tin nhằm đảm bảo hệ thống hoạt động đúng như kỳ vọng, thường xuyên được đánh giá hiệu năng và cải tiến để phù hợp với mục tiêu của tổ chức. Vận hành hệ thống liên quan đến mọi khía cạnh sử dụng hệ thống mới trong mọi kiểu điều kiện hoạt động nhằm khai thác được nhiều nhất các tính năng lợi thế của hệ thống mới đáp ứng mục tiêu của tổ chức. Bảo trì hệ thống liên quan đến việc kiểm tra, thay đổi và tăng cường hệ thống để làm cho nó hữu ích hơn trong việc đạt được mục tiêu của người sử dụng và tổ chức; các kiểu bảo trì hệ thống là cải tiến tích hợp, bản vá hệ thống (system patch), phát hành hệ thống (system release).
Lỗi trong quá trình phát triển hệ thống thông tin: Trong quá trình phát triển hệ thống thông tin, một lỗi được phát hiện càng muộn thì chi phí sửa chữa nó càng lớn bởi vì cần phải xem xét sửa chữa mọi công việc đã được tiến hành từ thời điểm xuất hiện lỗi tới thời điểm lỗi được phát hiện và như vậy lỗi làm ảnh hưởng đến nhiều người. Vì vậy, tiếp cận bắt lỗi sớm được ưu tiên trong quá trình phát triển hệ thống thông tin.
Các kiểu quá trình phát triển hệ thống thông tin: Ba kiểu quá trình phát triển hệ thống thông tin là truyền thống, nguyên mẫu và nhanh Agile. quá trình phát triển hệ thống thông tin truyền thống thừa nhận giả thiết là mọi yêu cầu quan trọng đối với hệ thống thông tin được xác định đầy đủ ngay khi bắt đầu quá trình phát triển hệ thống thông tin còn quá trình phát triển hệ thống thông tin nguyên mẫu và quá trình phát triển hệ thống thông tin nhanh Agile lại thừa nhận giả thiết ngược lại giả thiết đó. Ngoài ra, tiếp cận hướng đối tượng cũng được sử dụng trong quá trình phát triểnhệ thống thông tin.
Ưu và nhược điểm[sửa]
Trong quá trình phát triển hệ thống thông tin truyền thống, người sử dụng hệ thống chỉ tương tác với đội phân tích hệ thống và tài liệu hệ thống. Các giai đoạn của quá trình phát triển hệ thống thông tin được tiến hành kế tiếp nhau theo mô hình thác nước và một giai đoạn chỉ được bắt đầu khi kết quả của giai đoạn ngay trước đó được phê duyệt.
Ưu điểm[sửa]
Ưu điểm của quá trình phát triển hệ thống thông tin truyền thống là: (i) cơ chế đánh giá chính thức vào cuối mỗi giai đoạn cho phép kiểm soát quản lý tối đa; (ii) tạo được tài liệu có giá trị bao gồm tài liệu hình thức đảm bảo các yêu cầu hệ thống đáp ứng được nhu cầu kinh doanh cần thiết; (iii) tạo được nhiều sản phẩm trung gian được sử dụng để xem xét việc đáp ứng nhu cầu của người sử dụng hệ thống và phù hợp với các chuẩn.
Nhược điểm[sửa]
Nhược điểm của quá trình phát triển hệ thống thông tin truyền thống là: (i) giả thiết cơ bản cho kết quả là người sử dụng hệ thống nhận được một hệ thống đáp ứng nhu cầu theo cách hiểu của các nhà phát triển, nhu cầu thực sự của người sử dụng hệ thống thường không được nhắc đến hoặc bị hiểu sai; (ii) việc tạo tài liệu là tốn kém và mất thời gian, khó khăn để cập nhật tài liệu; (iii) người sử dụng hệ thống không dễ dàng xem được các sản phẩm trung gian và đánh giá chúng có đáp ứng yêu cầu kinh doanh hay không.
Quá trình phát triển hệ thống thông tin nguyên mẫu[sửa]
Là cách tiếp cận lặp quá trình phát triển hệ thống thông tin theo các thành phần của hệ thống thông tin (Hình 1). Trong mỗi lần lặp, một thành phần/bộ phận của hệ thống thông tin được lựa chọn và tiến hành các giai đoạn quá trình phát triển hệ thống thông tin đối với nguyên mẫu đã bổ sung thành phần này. người sử dụng hệ thống sử dụng nguyên mẫu để kiểm tra các chức năng tương ứng của hệ thống thông tin và phản hồi đánh giá nguyên mẫu theo đối sánh với yêu cầu hệ thống để đội phân tích hệ thống hiệu chỉnh nguyên mẫu và tiến hành bước lặp tiếp theo. Thành phần mở rộng nguyên mẫu trong mỗi lần lặp được lựa chọn theo một độ ưu tiên giữa các thành phần. Ưu điểm của quá trình phát triển hệ thống thông tin nguyên mẫu là: (i) người sử dụng hệ thống được thử hệ thống và cung cấp phản hồi mang tính xây dựng trong suốt thời gian của quá trình phát triển hệ thống thông tin tạo động lực để họ tham gia tích cực hơn; (ii) một nguyên mẫu hoạt động có thể được tạo ra theo tuần lễ; (iii) cho phép phát hiện sớm các lỗi và thiếu sót. Nhược điểm điểm của quá trình phát triển hệ thống thông tin nguyên mẫu là: (i) mỗi lần lặp nguyên mẫu chỉ dựa trên phiên bản trước đó dẫn tới giải pháp cuối cùng chỉ là tốt hơn một bước so với giải pháp ban đầu; (ii) đánh giá chính thức giai đoạn cuối cùng có thể không xảy ra, vấn đề sao lưu và phục hồi, hiệu năng, và an ninh hệ thống có thể bị bỏ qua; (iii) tài liệu chính thức của hệ thống có thể thiếu hoặc không đầy đủ.
Quá trình phát triển hệ thống thông tin nhanh Agile[sửa]
Là cách tiếp cận lặp quá trình phát triển hệ thống thông tin song với tốc độ “nước rút” triển khai hệ thống thông tin cỡ vừa và nhỏ trong thời gian khoảng từ hai tuần tới hai tháng, tập trung vào việc tối đa hóa năng lực của đội phân tích hệ thống. quá trình phát triển hệ thống thông tin nhanh Agile huy động sự tham gia của người sử dụng hệ thống và các bên liên quan ở mức độ rất cao, bao gồm sự hợp tác và gặp mặt thường xuyên của đội phân tích hệ thống với người sử dụng hệ thống và các bên liên quan để sửa đổi, tinh chỉnh và đánh giá hiệu năng của hệ thống cũng như cách thức đáp ứng yêu cầu của người sử dụng hệ thống. Ưu điểm của quá trình phát triển hệ thống thông tin nhanh Agile là: (i) hoàn thành hệ thống thông tin rất nhanh; (ii) tài liệu là một sản phẩm phụ; (iii) khai thác hiệu quả tương tác giữa đội phân tích hệ thống với người sử dụng hệ thống và các bên liên quan. Nhược điểm của quá trình phát triển hệ thống thông tin nhanh Agile là: (i) không phù hợp với các hệ thống thông tin cỡ lớn; (ii) tạo áp lực lớn tới đội phân tích hệ thống và các người tham gia (bao gồm người sử dụng hệ thống và các bên liên quan); (iii) đòi hỏi đội phân tích hệ thống và người sử dụng hệ thống có kỹ năng về công cụ phát triển nhanh.
Quá trình hình thành và phát triển[sửa]
- Quá trình phát triển hệ thống thông tin được tiến hóa từ quá trình phát triển hệ thống thông tin truyền thống (thác nước) từ thập niên 1960 tới quá trình phát triển hệ thống thông tin nguyên mẫu (lặp) vào thập niên 1970 và quá trình phát triểnhệ thống thông tin nhanh Agile vào thập niên 2000.
- Quá trình phát triển hệ thống thông tin được sử dụng cho nhiều dự án như phát triển phần mềm, giáo dục, quân sự, y tế và hệ thống chính trị.
Quá trình phát triển hệ thống thông tin, quy trình phát triển hệ thống (nói chung) và quy trình phát triển phần mềm là các nội dung chuyên nghiệp được quan tâm trong các chương trình đào tạo các ngành thuộc lĩnh vực máy tính và công nghẹ thông tin. Đây cũng là chủ đề các khóa đào tạo nghề nghiệp tại các công ty phát triển phần mềm và hệ thống thông tin. Tuy nhiên, việc truyền thông về quá trình phát triển hệ thống thông tin tới các nhà quản lý chưa thật sự rộng rãi, vì vậy, các hoạt động cần phối hợp với đội phân tích hệ thống trong các giai đoạn khảo sát hệ thống và phân tích hệ thống chưa được thực hiện đầy đủ và chính xác.
Tài liệu tham khảo[sửa]
- Hà Quang Thụy, Nguyễn Ngọc Hóa. Giáo trình Cơ sở các hệ thống thông tin – Chương 8. Phát triển hệ thống: khảo sát và phân tích. NXB Đại học Quốc gia Hà Nội, 2018.
- Paige Baltzan. M. Information Systems (4th edition) – Chapter 9. System Development & Project Management. McGraw Hill Higher Education, 2017.
- Shanelle M. Harris. The Use of a Modified System Development Life Cycle (MSDLC) in a Sociological Environment to Improve Solution Validation. PhD Thesis, Morgan State University, May 2019.
- Kenneth E. Kendall, Julie E. Kendall. Systems Analysis and Design (9th edition) – Chapter 1. Systems, roles, and development methodologies. Pearson, 2013.
- Ralph M. Stair, George W. Reynolds. Fundamentals of Information Systems (8th edition) – Chapter 8. System Development. Cengage Learning, 2016.