Định nghĩa về hệ thống thụng tin:
Hệ thống thụng tin là một tập hợp những con người, cỏc thiết bị phần cứng, phần mềm, dữ liệu…Thực hiện nhiệm vụ thu thập, lưu trữ, xử lý và phõn phối thụng tin trong một tập cỏc ràng buộc được gọi là mụi trường.
Hệ thống thụng tin của mỗi tổ chức là khỏc nhau nhưng đều tuõn thủ theo nguyờn tắc sau: nú được thể hiện bởi con người, cỏc thủ tục, dữ liệu và thiết bị tin học. Đầu vào (inputs) của hệ thống thụng tin được lấy từ nguồn và được xử lý bởi hệ thống sử dụng nú cựng với cỏc dữ liệu đó được lưu trữ từ trước. Kết quả xử lý được chuyển đến cỏc đớnh hoặc được cập nhật và cỏc kho dữ liệu.
Sơ đồ 2.2 Mụ hỡnh hệ thống thụng tin 2.2 Phõn loại hệ thống thụng tin trong tổ chức doanh nghiệp: 2.2.1 Phõn loại:
Cỏc thụng tin trong một tổ chức được phõn chia theo cấp quản lý và trong
mỗi cấp quản lý chỳng lại được chia theo nghiệp vụ mà chỳng phục vụ. Nguồn
Thu thập Xử lý và lưu trữ Phõn phỏt Đớch
Tài chớnh chiến lược Marketing chiến lược Nhõn lực chiến lược Kinh doanh và sản xuất chiến lược Hệ thống thụng tin văn phũng Tài chớnh chiến thuật Marketing chiến thuật Nhõn lực chiến thuật Kinh doanh và sản xuất chiến thuật Tài chớnh tỏc nghiệp Marketing tỏc nghiệp Nhõn lực tỏc nghiệp Kinh doanh và sản xuất tỏc nghiệp
2.2.2 Tầm quan trọng của hệ thống thụng tin hoạt động tốt:
Quản lý cú hiệu quả của một tổ chức dựa phần lớn và chất lượng thụng tin
do cỏc hệ thống thụng tin chớnh thức sản sinh ra. Sự hoạt động kộm của một hệ thống thụng tin sẽ là nguồn gốc gõy ra những hậu quả nghiờm trọng.
Hoạt động tốt hay xấu của một hệ thống thụng tin được đỏnh giỏ thụng qua chất lượng của thụng tin mà nú cung cấp. Tiờu chuẩn chất lượng của thụng tin như sau:
•Độ tin cậy: thể hiện cỏc mặt về độ xỏc thực và độ chớnh xỏc.
•Tớnh đầy đủ: thể hiện sự bao quỏt cỏc vấn đề đỏp ứng cỏc yờu cầu của nhà quản lý.
•Tớnh thớch hợp và dễ hiểu.
•Tớnh được bảo vệ: thụng tin là một nguồn lực quý bỏu của tổ chức do vậy nú phải được bảo vệ, những người cú quyền mới được tiếp nhận.
•Tớnh kịp thời: thụng tin nhanh nhạy, gửi tới người sử dụng vào lỳc cần thiết.
2.3 Một số cụng cụ mụ hỡnh húa:
2.3.1 Sơ đồ chức năng kinh doanh (BFD):
Sơ đồ chức năng kinh doanh mụ tả mối quan hệ phõn cấp chức năng cỏc
thực thể từ cao xuống thấp. Trong đú một thực thể cú thể cú nhiều thực thể con và thực thể dưới là con của thực thể đứng trờn. Sử dụng trong giai đoạn phõn tớch hệ thống thụng tin, đồng thời là căn cứ cho giai đoạn thiết kế thiết kế cỏc chức năng tương ứng.
2.3.2 Sơ đồ luồng dữ liệu (DFD):
Sơ đồ luồng dữ liệu dựng để mụ tả hệ thống thụng tin. Trờn sơ đồ chỉ bao gồm cỏc luồng dữ liệu, cỏc xử lý, cỏc lưu trữ dữ liệu,nguồn và đớch nhưng khụng quan tõm đến thời điểm, nơi và đối tượng chịu trỏch nhiệm xử lý. Sơ đồ luồng dữ liệu chỉ mụ tả hệ thống thụng tin làm gỡ và để làm gỡ.
Một số ký phỏp dựng cho sơ đồ luồng dữ liệu: - Thực thể - Dũng dữ liệu Tờn dũng dữ liệu - Kho dữ liệu Tờn tệp dữ liệu - Tiến trỡnh xử lý
Trong tiến trỡnh xử lý ớt nhất phải cú một đầu vào và một đầu ra. Tờn người/bộ phận
phỏt/nhận tin
Tờn tiến trỡnh xử lý
2.4 Cụng nghệ phần mềm và một số mụ hỡnh trong phỏt triển phần mềm:2.4.1 Khỏi niệm cụng nghệ phần mềm (CNPN): 2.4.1 Khỏi niệm cụng nghệ phần mềm (CNPN):
Cụng nghệ phần mềm:
CNPN là một tổ hợp cỏc cụng cụ, phương phỏp, thủ tục làm cho người quản trị viờn dự ỏn nắm được xu thế tổng quỏt phỏt triển phần mềm và giỳp cho kỹ sư lập trỡnh cú một nền tảng để triển khai cỏc định hướng của phần mềm.
Sơ đồ 2.3 Cấu trỳc cụng nghệ phần mềm
Quỏ trỡnh phỏt triển của một dự ỏn phần mềm đều trải qua ba giai đoạn.
Giai đoạn một:
Trả lời cho cầu hỏi “Cỏi gỡ ?”. Tức là người sản xuất phần mềm phải xỏc định cụ thể và chi tiết sản phẩm phần mềm mà mỡnh cần tạo ra. Đõy là cụng đoạn cực kỳ quan trọng trong sản xuất phần mềm ở quy mụ cụng nghiệp, vỡ chỉ cú xỏc định rừ ràng phạm vi của sản phẩm và cỏc ràng buộc liờn quan ta mới cú thể tiến hành được kết quả của cỏc cụng đoạn sau.
Phải giải quyết ba vấn đề mấu chốt là tiến hành phõn tớch hệ thống một cỏch toàn diện theo quan điểm một phần mềm là một thành phần của hệ thống quản
Cụng nghệ phần mềm Thành phần Cụng cụ Phương phỏp Thủ tục Chức năng Quản trị viờn dự ỏn Kỹ sư phần mềm
lý do đú nú phải được đặt trong tổng thể hệ thống đú và xem xột mối quan hệ ràng buộc cỏc yếu tố quản lý khỏc.
Giai đoạn hai:
Trả lời cho cõu hỏi “Thế nào ?”. Tức là định hướng phần mềm sẽ phỏt triển thế nào trong đú cú ba cụng việc cơ bản cần làm: thiết kế, mó húa, kiểm thử. Mó húa trong cụng nghệ phần mềm là viết mó chương trỡnh: biờn dịch chương trỡnh từ ngụn ngữ thiết kế sang một ngụn ngữ mà mỏy tớnh cú thể hiểu.
Giai đoạn ba:
Trả lời cho cầu hỏi “Thay đổi ra sao ?”. Cú ba loại hỡnh bảo trỡ là: bảo trỡ sửa đổi, bảo trỡ thớch nghi và bảo trỡ hoàn thiện hay bảo trỡ nõng cao. Bảo trỡ sửa đổi là sửa lỗi phần mềm, thụng thường là lỗi chi tiết, đơn giản, khụng phải là lỗi hệ thống. Bảo trỡ thớch nghi là làm cho phần mềm hoàn thiện trong mụi trường của người sử dụng. Bảo trỡ hoàn thiện: làm cho phần mềm cú thể hoạt động tốt trong cỏc mụi trường khỏc nhau.
Sơ đồ 2.4 Cỏc giai đoạn của quy trỡnh phỏt triển phần mềm
Xỏc định
Phỏt triển
Bảo trỡ
Giai đoạn một
Giai đoạn hai
Xỏc định Phỏt triển Bảo trỡ
Khỏi niệm phần mềm :
Theo Roger Pressman phần mềm là một tập hợp gồm ba yếu tố là: cỏc chương trỡnh mỏy tớnh, cấu trỳc dữ liệu và hệ thống tài liệu hướng dẫn.
Cỏc giai đoạn phỏt triển của phần mềm: Thời kỳ 1950-1960 1960-1970 1970-1990 1990-Nay Chậm. Xử lý theo lụ. Phần mềm đơn chiếc. Sản xuất cho nhúm người dựng. Chế độ thời gian thực.
Thương mại húa.
Hệ thống phõn tỏn.
Tớnh tới hiệu quả thương mại. Phần mềm thụng minh. Hệ thống để bàn. Lập trỡnh hướng đối tượng. Xử lý song song. 2.4.2 Vũng đời phỏt triển phần mềm:
Trong cụng nghiệp phần mềm người ta đặc biệt quan tõm tới vấn đề là vũng
đời phỏt triển phần mềm. Vũng đời phỏt triển của một phần mềm được hiểu là quy trỡnh từ khi phần mềm ra đời cho đến khi đưa vào sử dụng và quỏ trỡnh nõng cấp bảo trỡ.
Mục đớch của việc nghiờn cứu vũng đời phỏt triển của phần mềm là phõn ra cỏc giai đoạn trờn cơ sở đú tỡm cỏc giải phỏp và cụng cụ thớch hợp để tỏc động vào mỗi giai đoạn.
• Thiết kế • Mó húa • Kiểm thử • Phõn tớch hệ thống • Kế hoạch • Phõn tớch yờu cầu
• Bảo trỡ sửa đổi
• Bảo trỡ thớch nghi
Sơ đồ 2.5 Mụ hỡnh thỏc nước 2.4.3 Mụ hỡnh thỏc nước:
Cụng đoạn đầu tiờn là cụng nghệ hệ thống: nú bao trựm lờn toàn bộ quy trỡnh tiếp theo trong cụng nghệ phần mềm, vỡ phần mềm là một thành phần của hệ thống quản lý, do đú nú phải được xem xột trong mối liờn hệ tổng thể về kinh tế - kỹ thuật - tổ chức của toàn bộ guồng mỏy quản lý. Cụng đoạn tiếp theo là phõn tớch: với mục đớch xỏc định rừ ràng và cụ thể cỏc yờu cầu của phần mềm, phần thiết kế trong Cụng Nghệ Phần Mềm hướng tới cỏc vấn đề sau:
+Thiết kế kiến trỳc hệ thống. +Thiết kế kỹ thuật.
Phần thiết kế hệ thống là quan trọng nhất vỡ nú cho ta cỏi nhỡn tổng thể về phần mềm cần xõy dựng. Cũn thiết kế kỹ thuật đi vào cỏc vấn đề cụ thể bao gồm: thiết kế dữ liệu, thiết kế thủ tục, thiết kế giải thuật, thiết kế giao diện, thiết kế cụng cụ cài đặt. Cụng nghệ hệ thống Phõn tớch Thiết kế Mó húa Kiểm thử Bảo trỡ
Người ta dựng mụ hỡnh thỏc nước để biểu diễn vũng đời phỏt triển của phần mềm với hai ý nghĩa: khẳng định đõy là cỏc giai đoạn của một quy trỡnh thống nhất và khụng tỏch rời và cú mối quan hệ mật thiết với nhau.
Trong mụ hỡnh này cỏc cụng đoạn càng ở phớa dưới thỡ càng phải chịu sự tỏc động của cỏc giai đoạn phớa trờn, chỉ trừ cú giai đoạn cụng nghệ hệ thống là khụng chịu tỏc động của giai đoạn nào.
Để xõy dựng được một hệ thống phần mềm phải mụ tả được vấn đề và yờu cầu của khỏch hàng bằng trả lời cỏc cõu hỏi như: Vấn đề của hệ thống là gỡ?. Hệ thống phải làm gỡ?. Phải phõn tớch của tiến trỡnh tập trung vào việc điều tra vấn đề thay cho việc tỡm ra giải phỏp. Để cú tài liệu phõn tớch đầy đủ và đỳng đắn thỡ phải phõn tớch lĩnh vực vấn đề. Lĩnh vực vấn đề là khu vực tỏc nghiệp của con người trong đú phần được xõy dựng.
Những người tham gia vào xõy dựng hệ thống phần mềm như: khỏch hàng, phõn tớch viờn, lập trỡnh viờn…Theo phương phỏp thỏc nước rất ớt khi làm việc cựng với nhau để chia sẻ cỏc hiểu biết sõu sắc về vấn đề đang giải quyết. Do vậy sẽ mất nhiều thời gian để xõy dựng được hệ thống phần mềm.
Mụ hinh thỏc nước cũn được biểu diễn dưới dạng chữ V trong đú quy trỡnh kiểm tra được thực hiện đồng thời với cỏc quy trỡnh phỏt triển khỏc, vớ dụ kiểm tra chức năng được thực hiện trong quỏ trỡnh phõn tớch, kiểm tra tớch hợp được thực hiện trong quỏ trỡnh thiết kế, kiểm tra module trong quy trỡnh lập trỡnh.
Sơ đồ 2.6 Mụ hỡnh thỏc nước 2.4.4 Mụ hỡnh lặp và tăng dần:
Mụ hỡnh thỏc nước khụng cho đi ngược lại chuỗi trỡnh tự phỏt triển phần
mềm, theo mụ hỡnh này thỡ phải xỏc định toàn bộ yờu cầu, nú được thực hiện thụng qua bàn bạc với người sử dụng hệ thống và khảo sỏt cỏc chi tiết của tiến trỡnh tỏc nghiệp. Thực tế khi kết thỳc cụng việc may mắn lắm chỉ 80% nhu cầu của hệ thống là được thu thập trong quy trỡnh phõn tớch do khi đặt hàng bản thõn khỏch hàng chỉ mới liệt kờ ra những mong muốn và nguyện vọng của mỡnh về phần mềm mà chưa hỡnh dung được một cỏch cụ thể những khả năng mà phần mềm sẽ đạt được đồng thời kỹ sư phần mềm ngay từ đầu nhận đơn đặt hàng cũng khụng thể hỡnh dung hết kiến trỳc tổng quỏt của phần mềm mà mỡnh xõy dựng. Tiếp theo là quy trỡnh thiết kế, nơi kiến trỳc hệ thống sẽ được xỏc định, quy trỡnh này tập trung vào những nhiệm vụ như đặt chương trỡnh ở đõu, cần phần cứng nào…Trong khi thực hiện cụng việc này. Cú thể
Phõn tớch Thiết kế Mó húa Chương trỡnh ứng dụng Kiểm tra chức năng Kiểm tra tớch hợp Kiểm tra module
tỡm ra một số nhiệm vụ mới của hệ thống. Do đú xuất hiện nhu cầu đi ngược lại người sử dụng để trao đổi bàn bạc về nú, cú nghĩa là phải trở lại quy trỡnh phõn tớch. Sau khi lặp lại vài lần như vậy mới chuyển đến quy trỡnh lập trỡnh hệ thống. Khi mó húa chương trỡnh, phỏt hiện ra một vài quyết định khi thiết kế là khụng thể cài đặt. Nờn phải quay trở lại quy trỡnh phõn tớch để xem xột lại yờu cầu. Sau quy trỡnh lập trỡnh, quy trỡnh kiểm thử bắt đầu. Trong khi kiểm thử và nhận thấy một vài yờu cầu chưa đủ chi tiết, giải thớch nhầm lẫn cú thể xảy ra. Vậy phải trở lại quy trỡnh phõn tớch để xem xột lại yờu cầu. Sau một vài lần lặp lại như vậy cú được hệ thống hoàn chỉnh giao cho khỏch hàng. Vấn đề luật phỏp, quy trỡnh kinh doanh cú thể thay đổi theo thời gian khi xõy dựng hệ thống, người dựng cú thể phàn nàn về cỏc vấn đề này, sản phẩm làm ra khụng đỳng như họ mong đợi. Nguyờn nhõn cú thể là sự thay đổi của phỏp luật, mụi trường kinh doanh, khỏch hàng khụng truyền đạt đỳng ý khỏch hàng yờu cầu, đội ngũ dự ỏn khụng tuõn thủ tiến trỡnh…Đội ngũ phỏt triển thường lập ra cỏc biểu đồ và vụ số tài liệu, văn bản, nhưng người dựng khụng phải lỳc nào cũng hiểu cỏi mà đội ngũ phỏt triển cung cấp cho khỏch hàng. Giải phỏp nào để trỏnh cỏc vấn đề này? Cõu trả lời là mụ hỡnh húa trực quan cú thể giỳp khỏch hàng.
Phỏt triển phần mềm là tiến trỡnh phức tạp. Nếu bỏ qua khả năng quay trở lại của cỏc bước thực hiện trước đú thỡ thiết kế hệ thống cú thể sai lầm và thiếu sút nhu cầu. Để cú thể đi ngược lại cỏc bước phỏt triển hệ thống phần mềm sẽ cú phương phỏp mới, phương phỏp phỏt triển lặp. Phỏt triển lặp là làm di làm lại việc gỡ đú. Trong phương phỏp này ta sẽ đi qua cỏc bước phõn tớch, thiết kế, phỏt triển, kiểm thử và triển khai phần mềm theo từng bước nhỏ nhiều lần. Bởi khú cú thể thu thập được đầy đủ mọi yờu cầu vào cụng đoạn đầu tiờn của dự ỏn. Cỏc vấn đề mới nảy sinh, vậy phải lập kế hoạch lặp trong dự ỏn. Theo quan niệm này thỡ dự ỏn được coi là cỏc thỏc nước nhỏ, mỗi thỏc
nước được thiết kế đủ lớn để sao cho cú thể hoàn thiện từng bộ phận quan trọng của dự ỏn và đủ nhỏ để tối thiểu việc đi trở lại.
Sơ đồ 2.7 Mụ hỡnh lặp tăng dần
Theo mụ hỡnh lặp và tăng dần thỡ mỗi chu kỳ lặp là một vũng đời thỏc nước nhỏ. Vũng lặp sau được hỡnh thành trờn cơ sở tiến húa của vũng lặp trước đú. Như vậy cỏc quy trỡnh truyền thống được lặp đi lặp lại và tăng dần. Trong phương phỏp này, phõn tớch viờn, người thiết kế, người lập trỡnh…Hợp tỏc làm việc với nhau để hiểu sõu sắc hệ thúng, chia sẻ cỏc ý tưởng mới dẫn đến xõy dựng được một hệ thống mạnh, phức tạp hơn.
2.4.5 Cấp bậc kiến trỳc phần mềm:
Cấp bậc kiến trỳc của phần mềm được hiểu là thứ bậc trỡnh tự cỏc khối và
mối liờn kết giữa chỳng với nhau. Như vậy đứng trước một vấn đề thực tiễn người kỹ sư phần mềm cú thể đưa ra nhiều giải phỏp khỏc nhau để giải quyết
Cụng nghệ hệ thống Phõn tớch Thiết kế Mó húa Kiểm thử Bảo trỡ Problem
vấn đề đú, cấp bậc kiến trỳc phần mềm hoàn toàn phụ thuộc vào trỡnh độ chuyờn mụn của mỗi người.
Yờu cầu của mỗi kiến trỳc phần mềm là phải đạt được hai vấn đề:
• Đảm bảo tớnh chặt chẽ trong kiến trỳc để khụng xảy ra những lỗ hổng phần mềm.
• Kiến trỳc phải đảm bảo khụng quỏ phức tạp để khi dịch thành chương trỡnh thỡ quy mụ của chương trỡnh khụng quỏ lớn khi thực hiện mỗi chức năng.
Mụ hỡnh từ bài toỏn thực tế sang bài toỏn logic (Problem - Solution).
Sơ đồ 2.8 Mụ hỡnh chuyển đổi từ vấn đề thành cỏc giải phỏp
Mụ hỡnh này cho ta thấy với một vấn đề thực tế nhưng qua bàn tay chế tỏc của kỹ sư phần mềm cú thể trở nờn rất nhiều kiến trỳc phần mềm khỏc nhau. Tiờu chuẩn duy nhất để lựa chọn một kiờu kiến trỳc nào đú là khụng quỏ phức
Solution 1 S1 S2 S3 S5 S7 S4 S6 Problem Solution 2 S1 S2 S3 S5 S4 S6
tạp nhưng vẫn đảm bảo tớnh năng hoạt động của phần mềm. Đõy chớnh là quỏ trỡnh cấu trỳc húa cỏc vấn đề phi cấu trỳc.