Quản lý sinh viờn nội trỳ trường đại học Kinh tế Quốc dân (2).
Trang 1LỜI MỞ ĐẦU
Trong thời đại công nghệ thông tin ngày nay, tất cả mọi hoạt động đều có sự trợ giúp của máy tính Trong lĩnh vực quản lý, tin học đóng vai trò đặc biệt quan trọng, bởi sự nhanh chóng, chính xác, khả năng phân tích và tổng hợp thông tin rất cao của các phần mềm Lợi ích của việc tin học hóa công tác quản lý đã được chứng minh trong thực tế Một giám đốc muốn biết về tình hình tài chính, tình hình kinh doanh của công ty có thể được cung cấp thông tin một cách nhanh chóng qua hệ thống thông tin kế toán, hệ thống thông tin bán hàng, hệ thống thông tin marketting Ngược lại một khách hàng có thể muốn biết thông tin về các sản phẩm mình muốn mua thông qua một hệ thống thông tin bán hàng trực tuyến của công ty, sẽ được cung cấop thông tin một cách nhanh chóng và chính xác Hiện nay tại trung tâm dịch vụ trường Đại học Kinh tế Quốc dân có một phần quản lý là quản lý sinh viên nội trú, hiện tại hầu hết các công việc đều làm thủ công rất phức tạp và mất thời gian Chính vì vậy mà đề tài này được chọn để đề xuất một giải pháp quản lý mới – tin học hóa hệ thống
quản lý, đề tài mang tên “Quản lý sinh viên nội trú trường đại học Kinh tế Quốc dân” Em xin chân thành cảm ơn các thầy cô giáo trong khoa tin học
kinh tế nói chung và thầy Bùi Thế Ngũ nói riêng đã tận tình giúp đỡ em hoàn thành tốt đề tài thực tập tốt nghiệp này
I TỔNG QUAN VỀ CƠ SỞ THỰC TẬP – CÔNG TY CYBERSOFT
CyberSoft là Công ty Cổ phần Phần mềm kế toán và quản trị doanh
nghiệp được thành lập từ năm 1999 với sự tham gia của các kỹ sư đã từng xây dựng dự án công nghệ thông tin hàng đầu tại Việt Nam Ngay từ khi thành lập, CyberSoft đã tham gia vào lĩnh vực lập trình phần mềm ứng dụng trong công tác quản lý.
Sau đây là một vài nét tiêu biểu về công ty CyberSoft:
Trang 2Tên tiếng Việt: Công ty Cổ Phần Phần Mềm Quản trị Doanh nghiệpCybersoft.
Tên tiếng Anh: CYBERSOFT SOFTWARE SOLUTION PROVIDER Giám đốc : Nguyễn Cảnh Toàn
Trụ sở chính: 413 Nguyễn Khang – Cầu Giấy – Hà Nội.
1 Chức năng và nhiệm vụ cơ bản của CyberSoft.
CyberSoft là công ty chuyên cung cấp các phần mềm quản lý tài chính kế toán và sản xuất kinh doanh để phục vụ mục tiêu phát triển của từng doanh nghiệp
2 Mục tiêu của CyberSoft.
CyberSoft đặt mục tiêu cho mình sẽ là nhà cung cấp hàng đầu tại Việt Nam về giải pháp tổng thể cho doanh nghiệp trong việc ứng dụng công nghệ thông tin vào quản trị doanh nghiệp và sản xuất kinh doanh
Khẩu hiệu của CyberSoft là “ cùng khách hàng đi đến thành công”, vì thế CyberSoft luôn sẵn sàng cung cấp những sản phẩm, dịch vụ tốt nhất, thỏa mãn tối đa nhu cầu của khách hàng CyberSoft luôn luôn và không ngừng cố gắng phát triển để tạo ra những sản phẩm ngày càng đáp ứng tốt hơn về yêu cầu ngày càng cao của thị trường đặc biệt là trong lĩnh vực nghiên cứu của mình
3 Cơ cấu tổ chức của CyberSoft.
Hiện nay CyberSoft có khoảng hơn 30 nhân viên có trình độ đại học với các chuyên ngành toán, tin, kế toán, kinh tế và ngoại ngữ Cơ cấu tổ chức của công ty được mô tả sơ đồ dưới đây:
Trang 3Sơ đồ tổ chức của Công ty CyberSoft
Phòng kinh doanh: nhiệm vụ của phòng này là thực hiện các nghiệp vụ kế
toán của công ty, bao gồm một kế toán, hai nhân viên kinh doanh chuyên thực hiện công việc quảng cáo, giới thiệu sản phẩm, giao dịch với các khách hàng hiện tại và khách hàng tiềm năng nhằm phát triển thị trường.
Phòng dự án và phát triển sản phẩm: làm nhiệm vụ nghiên cứu và phát triển
sản phẩm mới, nâng cao khả năng phân tích quản trị của sản phẩm Phòng này chuyên thực hiện công việc bao gồm xác định yêu cầu, phân tích thiết kế và phát triển sản phẩm, mọi thành viên đều tham gia vào tất cả các công đoạn của công việc mà không phân ra trách nhiệm cụ thể của từng thành viên nào, để tham gia vào được công việc của phòng này, ngoài kiến thức chuyên môn tốt đòi hỏi mỗi thành viên phải là người có kiến thức cơ bản về kinh tế, quản lý và đồng thời thông thạo các nghiệp vụ kinh tế, quản lý, kế toán.
Phòng tư vấn và hỗ trợ khách hàng: làm nhiệm vụ tư vấn và có thể tham gia
cùng phòng nghiên cứu và phát triển sản phẩm để phân tích, thiết kế các hệ
Trang 4thống lớn như hệ thống thông tin tài chính kế toán, hệ thống thông tin bán hàng, hệ thông thông tin marketing, hệ thông thông tin quản lý nhân sự và lương, hệ thống thông tin lập kế hoạch, dự toán, hệ thống thông tin quản lý chung tòan doanh nghiệp… đồng thời cài đặt, hướng dẫn sử dụng, bảo hành và nâng cấp sản phẩm theo yêu cầu, tư vấn cho doanh nghiệp khi nhu cầu quản lý phát sinh để họ có thể chọn giải pháp tối ưu nhất cho công tác quản lý của mình, công việc chính là làm nhiệm vụ giải đáp thắc mắc, hướng dẫn chi tiết cách khắc phục những tình huống bất thường xảy ra như nhầm lẫn nghiệp vụ, phần mềm có vấn đề… cho khách hàng, khách hàng có thể liên hệ với phòng này qua điện thoại, email, fax và nếu cần thì nhân viên của công ty phải trực tiếp đích thân đến tại trụ sở của họ.
Phòng đào tạo: Phòng này chuyên về công việc đào tạo mới, đào tạo lại cho
các doanh nghiệp, đồng thời đạo tạo mới và đào tạo lại nhằm nâng cao trình độ để đáp ứng nhu cầu phát triển nguồn nhân lực và tuyển chọn nhân viên mới cho nhu cầu nguồn nhân lực của công ty, hàng năm phòng này vẫn tiếp đón và tuyển chọn những nhân viên mới từ những sinh viên thực tập từ các trường đại học ngành công nghệ thông tin và kế toán.
5 Các lĩnh vực hoạt động của CyberSoft.
Lĩnh vực kinh doanh chủ yếu của CyberSoft là về tài chính kế toán và quản trị doanh nghiệp, tuy nhiên nhìn vào sơ đồ tổ chức của công ty có thể thấy công ty chủ yếu đáp ứng các dịch vụ sau:
Dịch vụ phát triển phần mềm “may đo”: CyberSoft thực hiện khảo sát và xây
dựng các phần mềm “may đo” với các doanh nghiệp có quy mô lớn theo đặc thù riêng có của doanh nghiệp
Dịch vụ tư vấn: Trên cơ sở khảo sát thực trạng và yêu cầu của từng doanh
nghiệp, CyberSoft sẽ đưa ra các đề xuất, các phương án về xây dựng hệ thống thông tin của doanh nghiệp Với các chuyên gia đầy nhiệt tình và trách nhiệm
Trang 5công việc, với sự hiểu biết sâu sắc về nghiệp vụ và kinh nghiệm triển khai ứng dụng cho rất nhiều doanh nghiệp sẽ đưa ra giải pháp tối ưu cho khách hàng.
Dịch vụ hỗ trợ và bảo trì: theo yêu cầu của khách hàng, CyberSoft ký kết và
thực hiện hợp đồng dịch vụ về hỗ trợ và bảo trì hệ thống thông tin quản trị doanh nghiệp CyberSoft có riêng một hệ thống thông tin “CyberSoft Assistant” làm nhiệm vụ lưu trữ các vấn đề vướng mắc thường gặp và cách thức giải quyết những vấn đề đó, các nhân viên của CyberSoft luôn sẵn sàng hỗ trợ và giải quyết khó khăn cho khách hàng Việc đó làm cho những khó khăn của khách hàng được giải quyết một cách nhanh nhất
Dịch vụ đào tạo: CyberSoft thực hiện đào tạo lại và đào tạo mới cho các đơn vị
doanh nghiệp, với những doanh nghiệp có quy mô lớn CyberSoft mở hẳn trung tâm đào tạo cho các nhân viên kế toán.
Ngoài ra CyberSoft còn tham gia đào tạo kế toán trên máy cho các trường đại học và trung học chuyên nghiệp, các trung tâm đào tạo kế toán và quản lý, hỗ trợ trong việc cung cấp các phần mềm, bài giảng và số liệu thực hành về kế toán
7 Các đối tác chủ yếu.
Công ty xi măng Hoàng Mai
Công ty xi măng Hải Phòng
Công ty Hưng Long
Công ty cổ phần xây dựng đường bộ số 1 Hà Tĩnh
Kinh doanh nhà Thanh Hóa
Nhà máy thuốc lá Thanh Hóa
Trang 6 Công ty dệt Nam Định
Công ty dệt kim đông xuân
Công ty cơ khí dệt may Nam Định
Nhà máy chăn len Nam Định
Công ty Cp dịch vụ giải trí Hà nội
Xí nghiệp TOYOTA Hoàn Kiếm
Công ty CP đại lý Ford Hà Nội
Công ty CP đại lý Ford Thăng Long
Công ty CP đại lý Ford Thủ đô
Nhà xuất bản bản đồ
Công ty dược Vĩnh Phúc
Công ty CP dược phẩm Hà Nội
Công ty công nghiệp tàu thủy Nam Triệu
Công ty hợp tác kinh tế (8 đơn vị)
Sở giáo dục Nam Định (38 trường PTTH)
Công ty môi trường đô thị Hạ Long
Công ty cổ phần GasPetrolimex (SG,HN,DN,HP)
Hà nội Transerco (Bus Hà Nội)
Truyền hình kỹ thuật số (VTC)
Tổng công ty xây dựng miền trung
II ĐỊNH HƯỚNG CHUYÊN ĐỀ THỰC TẬP.
Tên đề tài : Ứng dụng tin học vào công tác quản lý sinh viên Ký túc xátrường đại học Kinh tế quốc dân.
Trang 71 Giới thiệu đề tài thực tập
Sau một thời gian dài tìm hiểu, quan sát đồng thời sống và học tập trong KTX, thấy có rất nhiều bất cập trong công tác quản lý KTX cũng như của trung tâm dịch vụ trường đại học Kinh tế Quốc dân ảnh hưởng đến công tác xử lý thông tin, dữ liệu quản lý, làm giảm hiệu suất làm việc làm mất thời gian của nhân viên trung tâm dịch vụ và tăng thời gian cũng như mức độ phức tạp của sinh viên khi đăng kí và làm thủ tục để nội trú trong KTX và nhiều bất cập khác nên người viết đã quyết định chọn đề tài này, tuy nhiên do thời gian không cho phép nên đề tài này chỉ gói gọn trong công tác quản lý việc nhập liệu, sắp xếp phòng, thu tiền, báo cáo danh sách sinh viên KTX và một số báo cáo có liên quan…Đề tài này được lựa chọn là nhằm mục đích cung cấp một giải pháp riêng biệt cho công tác quản lý sinh viên nội trú trong KTX trường Đại học Kinh tế Quốc dân Giảm thiểu những sai sót không đáng có và giảm gánh nặng cho người nhâp liệu đồng thời nâng cao năng suất làm việc của nhân viên quản lý cũng như cung cấp các thông tin cần thiết một cách kịp thời cho ban giám đốc và những người có trách nhiệm liên quan Tuy gói gọn như vậy nhưng nội dung bao hàm nhiều mảng kiến thức được học như CSDL, cấu trúc dữ liệu và giải thuật, Hệ thống thông tin quản lý, tin học quản lý, kinh tế thông tin cũng như kiến thức được tổng hợp từ thực tế khi người viết thực tập tại một công ty chuyên cung cấp phần mềm quản lý, kế toán…Đồng thời bao hàm một số kiến thức về kinh tế và quản lý Phần mềm này được viết trên nền hệ quản trị cơ sở dữ liệu Visual Foxpro 7.0 – là một hệ quản trị cơ sở dữ liệu mạnh và thuận tiện cho các bài toán trong quản lý kinh tế, quản lý phân tích, tổng hợp cơ sở dữ liệu cho các doanh nghiệp từ nhỏ đến lớn.
2 Tính cấp bách của đề tài:
Hiện nay, do nhu cầu ngày càng mở rộng về quy mô đào tạo, nhu cầu sinh viên ở KTX ngày càng cao do chất lượng dịch vụ của KTX ngày càng đáp ứng đầy đủ về vật chất cũng như tinh thần cho sinh viên Toàn bộ khu KTX có
Trang 8tổng cộng 5 nhà là nhà 1, 2, 3, 4 và nhà 11 Từ nhà 1 đến nhà 4 mỗi nhà có 56 phòng, mỗi phòng có 10 sinh viên Nhà 11 cũng có số phòng tương đương với số lượng sinh viên tương tự Đầu năm học, ban quản lý KTX đều tổ chức đăng ký chỗ ở, sắp xếp lại phòng ở và thu tiền Việc thu tiền là dùng phần mềm chung của nhà trường Còn việc sắp xếp bố trí phòng ở thì làm trên Excel với nhiều hạn chế không đáp ứng được đặc thù quản lý của KTX,việc thêm, bớt, xóa sửa khi có thay đổi về chỗ ở là phải làm thủ công Vì vậy đã có rất nhiều sai lỗi trong quá trình thực hiện công việc, và những sai lầm đã từng thấy là sắp xếp sinh viên các khóa ở lộn xộn, khóa này với khóa khác, thậm chí đã từng sắp xếp sinh viên nữ và nam ở chung phòng, đến lúc sinh viên đi xem phòng ở mới phát hiện ra và báo cáo lại thì ban quản lý mới biết Ngoài ra trong quá trình ở cũng có nhiều vấn đề phát sinh như sinh viên bỏ dở ra ngoài, sinh viên ngoài xin vào, sinh viên xin chuyển từ phòng này sang phòng khác, cuối năm học phải sắp xếp lại chỗ ở, đến tháng phải thu tiền điện nước, phát giấy vệ sinh, tất cả đều phải báo cáo lại cho ban quản lý KTX biết….Vậy với đề tài này, người viết hy vọng sẽ ứng dụng tin học vào công tác quản lý sinh viên KTX nhằm đáp ứng phần nào những bất cập nêu trên để phục vụ công tác quản lý sinh viên nội trú một cách có hiệu quả, tránh lầm lẫn, sai sót, nâng cao chất lượng dịch vụ KTX, tự động xử lý một số công việc đòi hỏi mất nhiều thời gian và gặp nhiều sai sót khi làm thủ công, đặc biệt là việc xếp phòng cho sinh viên, tổng hợp báo cáo để báo cáo lại với cấp quản lý của KTX mà cụ thể là giám đốc trung tâm dịch vụ trường Đại học Kinh tế Quốc dân.
Trang 9Chương II: Cơ sở phương pháp luận cơ bản cho việc nghiêncứu đề tài
Chương này tập trung giới thiệu cơ sở lý luận chung cho việc nghiên cứu đề tài, bao gồm những vấn đề chủ yếu sau:
-Một số lý thuyết cơ bản về cơ sở dữ liệu quan hệ -Các thuộc tính cơ sở dữ liệu quan hệ
-Các mô hình quan hệ thực thể
-Giới thiệu các hệ quản trị cơ sở dữ liệu, giới thiệu kỹ về Foxpro 7.0 -Quy trình phân tích thiết kế hệ thống, các mô hình BFD, DFD -Mô hình hóa và chuẩn hóa dữ liệu
I Giới thiệu về mô hình thực thể - quan hệ 1 Giới thiệu các khái niệm cơ bản
a Những khái niệm liên quan đến mô hình dữ liệu quan hệ
Trong mô hình cơ sở dữ liệu quan hệ có những thuật ngữ sau làm cơ sở cho việc thiết kế cơ sở dữ liệu :
-Table (bảng): như bang thống kê, bảng danh mục tài khoản kế toán, bảng
danh sách cán bộ, bảng lương, bảng điểm sinh viên, bảng niêm yết giá chứng
khoán…thực hiện việc ghi chép về một nhóm phần tử nào đó gọi là entity
( thực thể)
-Entity(Thực thể): là một nhóm người, đồ vật, sự kiện hay,hiện tượng hay
khái niệm bất kì với các đặc điểm và thuộc tính sẵn có và đặc trưng cần được ghi chép lại Một số thực thể có thể là vật chất như hàng hóa, máy móc, xe cộ, khách hàng, sinh viên, cán bộ, hóa đơn…Một số khác lại mang tính khái niệm như giá cả, tài khoản kế toán, dự án, nhiệm vụ công tác…Như trên các thực thể đó có thể là các chỉ tiêu thống kê, các tài khoản kế toán, cán bộ, lương, điểm của các sinh viên, giá của các loại chứng khoán trên thị trường chứng khoán.
2 Thuộc tính
Trang 10• Attribute(Thuộc tính): là những đặc điểm và tính chất của thực thể, mỗi
thuộc tính là một yếu tố dữ liệu tách biệt, thường không chia nhỏ được nữa Các thuộc tính góp phần mô tả thực thể và là những dữ liệu về thực thể mà ta muốn lưu trữ Ví dụ, thực thể tài khoản kế toán được đặc trưng bởi những đặc điểm như mã tài khoản, tài khoản mẹ, tên tài khoản, nhóm tài khoản…
• Mỗi bảng bao gồm các dòng (row), mỗi dòng như thế ghi chép dữ liệu về
một cá thể (instance) là một biểu hiện riêng biệt của một thực thể nên còn được
gọi là một record (bản ghi) Ví dụ mỗi dòng của một tài khoản kế toán dùng để ghi chép thông tin về một tài khoản kế toán chẳng hạn như tài khoản 111 có mã tài khoản là 111, tên tài khoản là tiền gửi ngân hàng, tài khoản mẹ (rỗng), nhóm tài khoản là tài sản lưu động…
• Các bảng lại có những cột (colum): chúng còn được gọi là field
(Trường), đó là thuộc tính của thực thể như với thực thể sinh viên thì có mã
sinh viên, tên sinh viên, ngày sinh, quê quán… mỗi thuộc tính như vậy được phản ánh trên các trường và ô ghi thông tin chính là ô giao nhau giữa cột và dòng của một cá thể riêng biệt nào đó.
II Cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu
Trong phần này sẽ giới thiệu khái niệm cơ bản về cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu:
A Khái niệm chung
1 Cơ sở dữ liệu và hệ cơ sở dữ liệu
• Khái niệm CSDL (Database): là một nhóm gồm một hay nhiều bảng liên
quan với nhau Ví dụ như cơ sở dữ liệu sinh viên bao gồm nhiều bảng như bảng sinh viên, bảng dan sách khoa, bảng danh sách lớp,… Hoặc cơ sở dữ liệu quản lý nhân sự có các bảng như bảng cán bộ, bảng danh sách phòng ban, bảng lương…
• Hệ cơ sở dữ liệu (Database system): là một tập hợp các cơ sở dữ liệu có
liên quan với nhau kết hợp lại, chúng còn được gọi là một ngân hang dữ liệu
(Databank), ví dụ như tất cả các CSDL trong trường ĐHKTQD tập hợp lại
Trang 11thành một hệ cơ sở dữ liệu, các cơ sở dữ liệu của một cơ quan nào đó như quản lý nhân sự, quản lý lương, cơ sở dữ liệu quản lý kho, hợp lại thành một hệ cơ sở dữ liệu của cơ quan đó.
2 Hệ quản trị cơ sở dữ liệu
• Hệ quản trị cơ sở dữ liệu ( Database Management Systems): viết tắt là
HQTCSDL hay DBMS là một hệ thống chương trình máy tính giúp tạo lập thiểt kế, duy trì, sử dụng, quản lý các hệ cơ sở dữ liệu Một số DBMS thông dụng hiện nay như Oracle, SQL Server, Foxpro, Access, MySql, R:Base…
3 Hệ quản trị cơ sở dữ liệu Foxpro 7.0
Foxpro là hệ quản trị cơ sở dữ liệu hướng đối tượng, nó có khả năng giúp bạncó thể tạo lập và lựa chọn các giải pháp cơ sở dữ liệu phục vụ cho công tác quản trịkinh doanh của doanh nghiệp, đây là hệ quản trị cơ sở dữ liệu chuyên phục vụ để giảiquyết các bài toán trong quản lý Đặc điểm khác biệt của foxpro là sự đơn giản, bạncó thể nhanh chóng nắm bắt các kĩ thuật của nó, nó bao gồm một tập hợp khổng lồcác hàm giúp cho người phát triển không phải mất công viết lại hàm hay thủ tục chonhững công việc thông thường và như vật tiết kiệm công sức cũng như chi phí cho cảngười phát triển và cả các doanh nghiệp khi lựa chọn giải pháp quản trị doanh nghiệpcủa mình bằng hệ quản trị cơ sở dữ liệu này Đi theo bộ cài đặt hệ quản trị cơ sở dữliệu Foxpro là các công cụ phát triển, tài liệu hướng dẫn, các ví dụ minh họa để bạncó thể nắm bắt và áp dụng nhanh chóng các phương pháp để xây dựng, phát triển vàquản trị ứng dụng cơ sở dữ liệu của mình Hiện tại Visual Foxpro có bản mới nhất là9.0, tuy nhiên đề tài này được viết trên nền phiên bản Visual Foxpro 7.0, bản này cónhững cải thiện đáng kể so với bản 6.0 trước đó và hiện tại đang được sử dụng tạinhiều doanh nghiệp phần mềm chuyên viết các phần mềm quản lý và kế toán.
B Mô hình quan hệ thực thể
Khi phản ánh thực tế vào một cơ sở dữ liệu, thì các thực thể thường không độclập mà có mối liên quan chặt chẽ với nhau chứ không cô lập một cách tuyệt đối.Chính vì vật mà người thiết kế thường sử dụng những mô hình quan hệ để xây dựngcác mối quan hệ giữa các thực thể nhằm tối ưu quá trình thiết kế cơ sở dữ liệu cũngnhư xây dựng ứng dụng phục vụ quản lý Sau đây xin giới thiệu ba mô hình quan hệ
Trang 12phổ biến và thường được các nhà phát triển ứng dụng cơ sở dữ liệu sử dụng trong quátrình thiết kế hệ thống.
1 Mô hình quan hệ 1-1
Có hai thực thể A và B được phản ánh vào hai bảng là A và B, khi đó ta nói là hai bảng A và B có mối quan hệ 1-1 (one to one) khi ứng với mỗi dòng trong bản A thì cũng chỉ có một dòng tương ứng với nó trong bảng B và ngược lại, ứng với mỗi dòng trong bảng B cũng chỉ có một dòng trong bang A Trong thực tế thì mô hình quan hệ 1-1 thường ít khi sử dụng, vì luôn luôn có thể ghép hai bảng A và B thành một Nếu có sử dụng là do người ta muốn tách một bảng có quá nhiều cột thành hai bảng tương ứng có số cột ít hơn cho dễ nhìn và đỡ cồng kềnh, hoạc người ta muốn nhóm các trường hay biến động sang một bảng khác để cập nhật khi cần, khi cần cập nhật người dùng không cần phải mở tất cả các trường trong bảng lớn để cập nhật mà chỉ cần mở bảng có các trường hay biến động để cập nhật mà thôi Ví dụ như bảng hàng hóa thì có thể tách thành bảng chứa các thông tin về hàng hóa như mã hàng, tên hàng, hãng sản xuất, còn bảng thứ hai thì dùng để lưu những thông tin hay biến động hơn như ngày sản xuất, số lượng, đơn giá.
2 Mô hình quan hệ 1-m
Giữa hai bảng A và B là có mối quan hệ 1-m (one to many) nếu ứng với một dòng trong bảng A thì sẽ có nhiều dòng tương ứng với nó trong bảng B và ngược lãi mỗi dòng trong bảng B chỉ ứng với một dòng trong bảng A Bảng A còn gọi là bảng chủ, còn bảng B là bảng kết hợp hay là bảng quan hệ Ví dụ
Trong hình trên ta có hai thực thể là Nhà và Phòng, một nhà có nhiều phòng, nhưng mỗi phòng chỉ thuộc về một nhà mà thôi, ở bản nhà ta có Primary Key (PK) là Ma_nha, ở bảng Phong có PK là Ma_phong, có Foreign Key (FK) hay
Trang 13còn gọi là khóa ngoại lai là Ma_nha, hai bảng này có quan hệ với nhau thông qua khóa chính ở bảng Nha và khóa ngoại ở bảng Phong, mũi tên chỉ từ Phong sang Nha để chỉ rằng mỗi phòng trong bảng Phong chỉ thuộc về một nhà trong bảng Nha.
Mô hình quan hệ một nhiều có thể coi là mô hình ứng dụng nhiều nhất và cũng xuất hiện nhiều nhất trong thực tế, một khoa có nhiều sinh viên nhưng mỗi sinh viên chỉ thuộc về một khoa, một mặt hàng có nhiều món hàng nhưng mỗi món hàng chỉ thuộc về một mặt hàng mà thôi…
3 Mô hình quan hệ m-m
Hai bảng A và B có mối quan hệ nhiều- nhiều (many to many) khi ứng với một dòng trong bảng A thì cũng có nhiều dòng trong bảng B và ngược lại ứng với mỗi dòng trong bảng B thì cũng có nhiều dòng trong bảng A Ví dụ một hóa đơn ghi nhiều mặt hàng nhưng mỗi mặt hàng cũng có thể xuất hiện trên nhiều hóa đơn khác nhau Tuy nhiên mối quan hệ này thường được chuyển về mô hình quan hệ 1-nhiều Khi gặp mô hình quan hệ nhiều - nhiều ta thường tạo ra một thực thể thứ ba là giao của hai thực thể ban đầu, giả sử là thực thể C Ví dụ như trên ta có thể thêm một thực thể thứ ba là món hàng giao của hóa đơn và mặt hàng, một hóa đơn có nhiều món hàng, một mặt hàng cũng có nhiều món hàng, như vậy thông qua bảng giao này mà giữa hóa đơn và mặt hàng có mối quan hệ với nhau.
C Nội dung của việc thiết kế và tạo lập CSDL1 Xác định mục đích của cơ sở dữ liệu
Là một người phát triển ứng dụng cơ sở dữ liệu thì trước hết bạn phải xác định được là cơ sở dữ liệu này dùng để làm gì Muốn vậy phải trải qua một quá trình điều tra, xác định yêu cầu, từ đó phân tích và thiết kế cho hợp lý, bạn phải hỏi người trực tiếp sử dụng và người quản lý của hệ thống để biết rõ những thông tin nào thì cần thiết cho cơ sở dữ liệu, hình thức báo cáo đầu ra như thế nào để có thể thiết kế một cách hợp lý Phải xác định một cách rõ ràng, chính xác và đầy đủ nếu không cơ sở dữ liệu sẽ trở nên vô dụng và như vậy
Trang 14ứng dụng của bạn khó có thể đáp ứng được yêu cầ sử dụng của người dùng và yêu cầu quản lý của người quản lý.
2 Phác họa mô hình dữ liệu
a Xác định thực thể và thuộc tính của mỗi thực thể
Công việc đầu tiên của quá trình xây dựng ứng dụng cơ sở dữ liệu là xác định xem có những thực thể nào cần phản ánh và những thuộc tính nào cần có để đưa vào cơ sở dữ liệu, thực chất của quá trình này là xây dựng các bảng và trong các bảng đó thì cần có những trường nào nhằm đáp ứng được yêu cầu đặt ra khi phân tích và xác định yêu cầu Một số nguyên tắc khi chọn lựa xây dựng các bảng và các cột trong bảng:
- Giảm thiểu sự trùng lặp: hoàn toàn không nên để những thông tin trùng lặp trong một bảng và cũng không nên để thông tin trùng lặp giữa các bảng với nhau Ví dụ trong một bảng sinh viên thì không nên có đồng thời hai trường cùng lưu thông tin về một thuộc tính nào đó của sinh viên, cũng không nên lưu thông tin ngày sinh và giới tính hoặc lớp của sinh viên vào hai bảng nào đó, như vậy khi cập nhật thì chỉ cần thực hiện trên một bảng là được tránh phải cập nhật chỗ này xong rồi lại cập nhật trong một bảng khác, tránh được sự không nhất quán dữ liệu khi không cập nhật kịp thời, như thế sẽ rất mất thời gian và công sức cho người lập trình, và người sử dụng sẽ cảm thấy khó khăn khi xử lý những vấn đề bất thường có thể xảy ra trong quá trình sử dụng.
- Tránh dữ liệu dư thừa : một bảng thì phải chứa những thông tin vừa và đủ về một thực thể, không nên đưa những thông tin không cần thiết vào bảng sẽ làm rối cơ sở dữ liệu và làm cho dung lượng của cơ sở dữ liệu tăng lên Cũng không nên đưa những thông tin mà có thể tính toán từ những bảng khác hoặc từ các cột khác trong cùng một bảng Ví dụ không nên đưa vào cột điểm trung bình vì máy có thể tính toán điểm đó dựa trên thông tin về điểm của từng môn học của sinh viên, hoặc không cần cột thành tiền vì máy cũng có thể tính được kết quả dựa vào thông tin đơn giá và số lượng Tất nhiên cũng có thể đưa những thông
Trang 15tin này vào cơ sở dữ liệu nhưng sẽ thực hiện việc tính toán bàng việc lập trình mà người dùng không phải can thiệp gì.
- Tăng cường tính độc lập giữa các bảng : khi thiết kế cơ sở dữ liệu làm sao cố gắng đến mức tối đa tách những thông tin độc lập về từng thực thể giữa các bảng, như vật khi cần thay đổi cập nhật thông tin trong một bảng nào đó sẽ không ảnh hưởng đến những bảng khác Ví dụ như thông tin về khách hàng như họ tên, số điện thoại, địa chỉ thì nên để trong bảng tách biệt với đơn đặt hàng của khách hàng đó, như vật khi cần thay đổi thông tin hay loại bỏ đơn đặt hàng thì cũng không ảnh hưởng gì đến thông tin của khách hàng ở bảng thông tin khách hàng.
- Dữ liệu nguyên tố: mỗi một cột trong bảng cần phải chứa được thông tin nguyên tố tức là thông tin ma không hoặc ít khi phải chia nhỏ hơn nữa Ví dụ như trường họ tên thì nên tách thành trường họ đệm và trường tên, vì thường người ta hay sắp xếp theo theo vần abc của tên chứ ít khi người ta sắp xếp theo thứ tự của họ đệm.
b Xác định các mối quan hệ
Khi xác định xong các thực thể và các thuộc tính của mỗi thực thể thì người thiết kế cần phải xác định các mối quan hệ giữa các thực thể đó, nhằm sau này có thể trích rút và tổng hợp thông tin giữa các bảng khác nhau nhằm đáp ứng nhanh chóng và đầy đủ những yêu cầu của người dùng Ví dụ thông tin về hàng hóa có thể phải tổng hợp từ nhiều bảng khác nhau của cơ sở dữ liệu hàng hóa.
3 Duyệt lại mô hình dữ liêu
Kiểm tra và duyệt lại cơ sở dữ liệu một lần nữa nhằm phát hiện tránh những sai sót ngay từ lúc sau khi thiết kế, vì sửa ngay lúc này thì dễ dàng hơn nhiều so với lúc các bảng đã chứa đầy dữ liệu và ứng dụng đang được xây dựng dở dang.
4 Xây dựng CSDL
Trang 16Công việc lúc này là sẽ dùng đến một hệ quản trị cơ sở dữ liệu để “biên dịch” mô hình thiết kế thành một cơ sở dữ liệu thực trên máy tính, tiến hành tạo bảng, điền dữ liệu, tạo các truy vấn, module chương trình, các form nhập, báo cáo… để xây dựng một ứng dụng hoàn chỉnh.
III Quy trình phân tích hệ thống thông tin quản lý1 Quy trình
Một số nguyên nhân dẫn đến việc phát triển một hệ thống thông tin
- Những vấn đề về quản lý.
- Những yêu cầu mới của nhà quản lý - Sự thay đổi của công nghệ.
- Thay đổi sách lược chính trị.
Những yêu cầu mới của quản lý cũng có thể dẫn đến sự cần thiết của một dự án phát triển một hệ thống thông tin mới Những luật mới của Chính phủ mới ban hành, việc ký kết một hiệp tác mới, đa dạng hóa các hoạt động của doanh nghiệp bằng sản phẩm mới hoặc dịch vụ mới Các hành động mới của doanh nghiệp cạnh tranh cũng có một tác động mạnh vào động cơ buộc doanh nghiệp phải có những hành động đáp ứng.
Việc xuất hiện các công nghệ mới cũng có thể dẫn đến việc một tổ chức phải xem lại những thiết bị hiện có trong hệ thống thông tin của mình Khi các HQTCSDL ra đời nhiều tổ chức phải rà soát lại các hệ thống thông tin của mình để quyết định những gì họ phải cài đặt lại khi muốn sử dụng những công nghệ mới này.
Cuối cùng, vai trò của những thách thức chính trị cũng không nên bỏ qua Nó cũng có thể là nguyên nhân dẫn đến việc phát triển một hệ thống thông tin.
Phương pháp phát triển hệ thống thông tin
Mục đích chính xác của dự án phát triển một hệ thống thông tin là có được một sản phẩm đáp ứng nhu cầu của người sử dụng, mà nó được hòa hợp
Trang 17vào trong các hoạt động của tổ chức, chính xác về mặt kỹ thuật, tuân thủ các giới hạn về tài chính và thời gian định trước Không nhất thiết phải theo đuổi một phương pháp để phát triển một hệ thống thông tin, tuy nhiên không có phương pháp ta có nguy cơ không đạt những mục tiêu định trước Tại sao lại như vậy? Một hệ thống thông tin là là một đối tượng phức tạp, vận động trong một môi trường cũng rất phức tạp Để làm chủ sự phức tạp đó, phân tích viên cần phải có một cách tiến hành nghiêm túc, một phương pháp.
Một phương pháp được định nghĩa như một tập hợp các bước và các công cụ cho phép tiến hành một quá trình phát triển hệ thống chặt chẽ nhưng dễ quản lý hơn Phương pháp được đề nghị ở đây dựa vào ba nguyên tắc cơ sở chung của nhiều phương pháp hiện đại có cấu trúc để phát triển hệ thống thông tin Ba nguyên tắc đó là:
- Sử dụng các mô hình.
- Chuyển từ cái chung sang cái riêng.
- Chuyển từ mô hình vật lý sang mô hình logic khi phân tích và từ mô hình logic sang mô hình vật lý khi thiết kế.
Nguyên tắc đi từ chung đến riêng là một nguyên tắc của sự đơn giản hóa Thực tế người khẳng định rằng để hiểu tốt một hệ thống thì trước hết phải hiểu các mặt chung trước khi xem xét chi tiết Sự cần thiết áp dụng nguyên tắc này là hiển nhiên Tuy nhiên những công cụ đầu tiên được sử dụng để phát triển ứng dụng tin học cho phép tiến hành mô hình hóa một hệ thống bằng các khía cạnh chi tiết hơn Nhiệm vụ lúc đó sẽ khó khăn hơn.
Nhiệm vụ phát triển cũng sẽ đơn giản hơn bằng cách ứng dụng nguyên tắc thứ ba, có nghĩa là đi từ vật lý sang logic khi phân tích và đi từ logic sang vật lý khi thiết kế Ta thấy, phân tích bắt đầu từ thu thập dữ liệu về hệ thống thông tin đang tồn tại và về khung cảnh của nó Nguồn dữ liệu chính là những người sử dụng, các tài liệu và quan sát Cả ba nguồn
Trang 18này cung cấp chủ yếu sự mô tả mô hình vật lý ngoài của hệ thống Tuy nhiên vấn đề sẽ khác đi khi ta tiến hành thiết kế hệ thống mới.
Các công đoạn của quá trình phát triển hệ thống thông tin
Phát triển hệ thống thông tin có 7 công đoạn chủ yếu, mỗi công đoạn lại bao gồm một dãy các công đoạn được liệt kê kèm theo Cuối mỗi giai đoạn là phải kèm theo việc ra quyết định về việc tiếp tục hay chấm dứt sự phát triển của hệ thống Quyết định này được trợ giúp dựa vào nội dung báo cáo mà phân tích viên hoặc nhóm phân tích viên trình bày cho các nhà sử dụng.
a.Giai đoạn 1: Đánh giá yêu cầu.
Đánh giá yêu cầu có mục đích cung cấp cho lãnh đạo tổ chức hoặc hội đồng giám đốc những dữ liệu đích thực để ra quyết định về thời cơ, tính khả thi và hiệu quả của một dự án phát triển hệ thống Giai đoạn này được thực hiện tương đối nhanh và không đòi hỏi chi phí lớn Nó bao gồm các công đoạn sau:
- Lập kế hoạch đánh giá yêu cầu.
Mỗi giai đoạn của quá trình phát triển hệ thống cần phải được lập kế hoạch cẩn thận Trong giai đoạn thẩm định dự án thì chúng ta phải làm quen với hệ thống đang xem xét và xác định các thông tin phải thu thập cũng như các nguồn, các phương pháp thu thập thông tin Thông tin cần thu thập ít hay nhiều phụ thuộc vào kích thước và độ phức tạp của hệ thống mà ta đang nghiên cứu Chẳng hạn, thẩm định yêu cầu phát triển hệ thống lập hóa đơn bán hàng cho một doanh nghiệp nhỏ sẽ yêu cầu tư vấn với số lượng nguồn thông tin ít hơn so với hệ thống quản lý nhan sự của một doanh nghiệp lớn.
Đối với những dự án lớn và có nhiều thành tham gia vào công việc thẩm định dự án thì cần phải xác định nhiệm vụ cho từng thành viên và xác định phương tiện kết hợp giữa các nhiệm vụ.
- Làm rõ yêu cầu.
Trong khâu này thì mục đích chính là làm cho phân tích hiểu đúng và hiểu rõ yêu cầu của người xác định yêu cầu Cần xác định được chính xác đối tượng
Trang 19yêu cầu và thu thập những thông tin cơ bản của môi trường hệ thống và xác định khung cảnh nghiên cứu.
Yêu cầu phát triển hệ thống của khách hàng có thể được thông báo một cách chung chung do đó có thể dẫn đến sự nhầm lẫn Chẳng hạn, một nhà quản lý yêu cầu “Làm lại hệ thống quản lý đơn đặt hàng” Nhưng thực ra ông ta muốn sửa chữa hệ thống thu nhận đơn đặt hàng vì việc sử dụng nó chưa có hiệu quả Như vậy phân tích viên có thể hiểu theo nghĩa là nhà quản lý muốn làm lại toàn bộ hệ thống nhưng thực ra thì đó là một cách hiểu sai bởi vì đơn giản chỉ là nhà quản lý muốn thay thế hệ thống đơn đặt hàng cũ mà thôi Vì vậy chính giai đoạn đánh giá yêu cầu và cụ thể là công đoạn làm rõ yêu cầu cho phép xác định được đúng yêu cầu của nhà quản lý Khi làm rõ yêu cầu thì đầu tiên là phân tích viên phải xác định chính xác xem người sử dụng muốn gì? Tiếp theo là phân tích viên phải đánh giá xem liệu yêu cầu đúng như đề nghị hay có thể giảm xuống hoặc phải tăng cường mở rộng thêm?
Làm sáng tỏ yêu cầu được thực hiện chủ yếu qua những cuộc gặp gỡ với những người yêu cầu sau đó là với những người quản lý chính mà bộ phận của họ bị tác động hoặc bị hệ thống nghiên cứu ảnh hưởng tới Chúng ta cần xây dựng lên bản phác họa đầu tiên về khung cảnh của hệ thống nghiên cứu Xác định khung cảnh nghiên cứu không phải là một công việc dễ dàng vì nếu phân tích viên xác định nó quá hẹp thì sẽ có thể dẫn đến một số thành phần quan trọng không được đưa vào trong hệ thống còn nếu xác định nó quá rộng thì có thể lại dẫn đến những hậu quả tiêu cực mặc dù nó đảm bảo cho nhà phân tích tính hết tới các yếu tố quan trọng của hệ thống Nhưng mà nếu như xác định rộng như vậy thì liệu có đủ thời gian và tiền bạc để phát triển hệ thống trong tương lai.
Các phân tích viên phải tận dụng các cơ hội được gặp gỡ cũng như tham khảo từ các tài liệu khác nhau có trong tổ chức của mình để có thể hoàn thiện thêm về hệ thống Trên thực tế thì phỏng vấn, quan sát, nghiên cứu tài liệu và sử dụng phiếu điều tra là những công cụ được tin dùng của nhà phân tích.
Trang 20Chúng cũng được dùng trong suốt quá trình phát triển dự án nhưng đặc biệt là trong giai đoạn đánh giá yêu cầu Tại sao lại như vậy? Bởi vì một lý do đơn giản đó là cần phải đánh giá được khả năng thực thi của dự án, nếu trong giai đoạn đánh giá yêu cầu mà không đánh giá được hết các khả năng có thể xảy ra của hệ thống cũng như những yếu tố tác động bên ngoài tới hệ thống thì có thể gây ra rất nhiều lãng phí cả về tài chính cũng như nhân lực.
- Đánh giá khả năng thực thi.
Đánh giá khả năng thực thi của dự án là tìm xem có yếu tố nào ngăn cản nhà phân tích thực hiện, cài đặt một cách thành công giải pháp đã đề xuất hay không? Nhưng trong thực tế quá trình phát triển hệ thống luôn luôn phải tiến hành việc đánh giá lại Trong đánh giá khả năng thực thi của dự án thì cần quan tâm đến các vấn đề chính như sau:
+ Khả thi về tổ chức: đó là đòi hỏi bắt buộc phải có của mỗi hệ thống thông tin quản lý, nếu không đáp ứng được yêu cầu này thì dự án phát triển thông tin đó coi như không khả thi bởi vì một hệ thống thông tin quản lý luôn luôn phải kết hợp hài hòa với môi trường tổ chức Ngoài ra chúng ta còn phải xem xét các ảnh hưởng của quản lý nhân sự của Nhà nước, ảnh hưởng tới quan hệ khách hàng, ảnh hưởng xảy ra với sự trợ giúp của hệ thống thông tin mới …
+ Khả thi về mặt kỹ thuật: đòi hỏi này được đánh giá bằng cách so sánh công nghệ hiện có hoặc có thể mua sắm được với yêu cầu kỹ thuật của hệ thống đề xuất Chúng ta phải đánh giá khả thi về mặt kỹ thuật bởi vì đòi hỏi về mặt kỹ thuật là quan trọng nếu như các đòi hỏi khác đều đáp ứng được nhưng lại không đáp ứng được yêu cầu này thì hệ thống đó không thể sử dụng được và không thể tiếp tục phát triển được.
+ Khả thi về mặt tài chính: chúng ta xem xét khả thi về mặt tài chính đó là đánh giá xem lợi ích thu được của hệ thống (cả về mặt hữu hình và vô hình) có lớn hơn được chi phí đã bỏ ra để xây dựng hệ thống hay không? Nếu lợi ích thu được từ hệ thống mà nhỏ hơn chi phí đã bỏ ra thì ta không nên tiếp tục phát triển hệ thống.
Trang 21- Chuẩn bị và trình bày báo cáo đánh giá yêu cầu.
Báo cáo cho phép các nhà quyết định cho phép dự án tiếp tục hay ngừng lại Báo cáo phải cung cấp một bức tranh sáng sủa và đầy đủ về tình hình và khuyến nghị những hành động tiếp theo Báo cáo thường được trình bày để các nhà quyết định có thể yêu cầu làm rõ thêm các vấn đề Sau đó là quyết định tiếp tục hay loại bỏ dự án.
b.Giai đoạn 2: Phân tích chi tiết
Phân tích chi tiết được tiến hành sau khi có sự đánh giá thuận lợi về yêu cầu Những mục đích chính của phân tích chi tiết là hiểu rõ các vấn đề của hệ thống đang nghiên cứu, xác định những nguyên nhân đích thực của những vấn đề đó, xác định những đòi hỏi và những ràng buộc áp đặt đối với hệ thống và xác định mục tiêu mà hệ thống thông tin mới phải đạt được Trên cơ sở nội dung báo cáo chi tiết sẽ quyết định tiếp tục tiến hành hay thôi phát triển một hệ thống mới Để làm những việc đó giai đoạn phân tích chi tiết bao gồm các công đoạn sau đây:
- Lập kế hoạch phân tích chi tiết.
Trong khi lập kế hoạch phân tích chi tiết thì ta cần phải thành lập nhóm phân tích, phân chia nhiệm vụ, chon phương pháp, công cụ và kỹ thuật sẽ dùng và xây dựng thời hạn cho các công việc.
+ Thành lập đội ngũ: để thành lập đội ngũ phân tích thì ta cần căn cứ vào các yếu tố như quy mô của hệ thống, kích cỡ của tổ chức, cách thức quản lý dự án trong tổ chức, sự sẵn sàng và kinh nghiệm của các thành viên tham gia Với một hệ thống lớn và phức tạp thì cần có một đội ngũ phân tích viên lớn mạnh và dày dạn kinh nghiệm nhưng đối với các hệ thống nhỏ thì có thể là chỉ có một phân tích viên chịu toàn bộ trách nhiệm phát triển hệ thống Trong quá trình phân tích chi tiết thì không thể thiếu được sự cộng tác của đại diện người sử dụng vì đó là những người cho sử dụng cuối cùng Điều tất nhiên là người sử dụng hệ thống sẽ đóng vai trò quan trọng trong dự án vì chính họ sẽ sử dụng hệ thống trong tương lai và họ có yêu cầu bảo đảm rằng hệ thống đó sẽ đáp ứng
Trang 22yêu cầu của họ Vì vậy có một số tổ chức đã cho một số người sử dụng trở thành thành viên của nhóm phát triển hệ thống, tuy nhiên điều này không phải lúc nào cũng xảy ra do điều kiện về tài chính cũng như nhân sự của công ty.
+ Lựa chọn phương pháp và công cụ: hiện nay tồn tại bốn phương pháp thu thập thông tin chính là phỏng vấn, phiếu điều tra, quan sát và nghiên cứu tài liệu của tổ chức Các công cụ này không phải lúc nào cũng có thể sử dụng được vì nó còn phụ thuộc vào hệ thống ta đang phát triển có lớn hay không? Trong một số trường hợp thì phỏng vấn tỏ ra rất có ích nhưng trong một số trường hợp nó lại tỏ ra không có hiệu quả Chính vì vậy chúng ta cần lựa chọn phương pháp và công cụ thu thập thông tin một cách đúng đắn.
+ Xác định thời hạn: người sử dụng luôn luôn yêu cầu hệ thống được hoàn tất ngay sau ngày bắt đầu xây dựng hệ thống Vì vậy chúng ta cần đảm bảo thời hạn hoàn tất của dự án, muốn như vậy thì chúng ta cần phải phân chia công việc một cách hiệu quả và yêu cầu cần phải tuân thủ đúng thời hạn để hệ thống có thể đưa vào sử dụng đúng hạn.
- Nghiên cứu môi trường của hệ thống đang tồn tại.
Một hệ thống thông tin luôn luôn chịu sự ràng buộ của các yếu tố bên ngoài và bên trong, nó không phát triển một cách độc lập Chúng ta cần phải thu thập những yếu tố ràng buộc đó để có thể phát triển hệ thống được nhanh chóng và chính xác.
+ Môi trường ngoài + Môi trường tổ chức + Môi trường vật lý.
- Nghiên cứu hệ thống hiện tại.
Muốn phát triển dự án được tốt thì ta phải có sự hiểu biết về hệ thống đang tồn tại đầy đủ và chi tiết Để làm được điều này thì đội ngũ phát triển hệ thống phải làm việc một cách nghiêm túc và hiệu quả, họ phải làm các công việc sau:
Trang 23+ Thu thập thông tin về hệ thống đang tồn tại: trong công đoạn này thì đội ngũ phát triển hệ thống phải làm đó là mô tả các bộ phận và hoạt động của chúng và các vấn đề có liên quan như: hệ thống, vấn đề của hệ thống.
+ Xây dựng mô hình vật lý ngoài: mô hình vật lý ngoài mô tả hệ thống như những người sử dụng nhìn thấy Mô hình này tạo thành tư liệu về hệ thống như nó đang tồn tại, nó cũng là công cụ để phân tích viên kiểm tra sự hiểu biết của mình về hệ thống với người sử dụng Xây dựng một mô hình hệ thống cần phải có rất nhiều thông tin chi tiết Cho dù là bao nhiêu thời gian dành cho phỏng vấn, quan sát và nghiên cứu tài liệu và làm việc cùng với người sử dụng thì vẫn cứ luôn tồn tại những câu hỏi mà phân tích viên chưa có câu trả lời Chính vì vậy phân tích viên luôn luôn phải bám sát với người sử dụng và không được tự mình đưa ra câu trả lời mà phải lấy thông tin từ người sử dụng.
+ Xây dựng mô hình logic: mô hình logic sẽ được xây dựng từ mô hình vật lý ngoài và từ các dữ liệu thu thập được trước đây Sơ đồ luồng dữ liệu và từ điển dữ liệu là tại liệu về hệ thống Khi cần thiết thì sơ đồ cấu trúc dữ liệu (DSD) sẽ hoàn chỉnh tài liệu đã thu thập được Cũng như mô hình vật lý ngoài thì mô hình logic mô tả hệ thống thực tại cho phép nhà phân tích hợp lệ hóa sự hiểu biết của mình về hệ thống với người sử dụng và là công cụ để xác định một số vấn đề của hệ thống cũng như nguyên nhân của chúng.
- Đưa ra chuẩn đoán và xác định các yếu tố giải pháp.
Trong công đoạn này thì bao gồm ba công việc chính mà phân tích viên phải thực hiện đó là:
+ Đưa ra chuẩn đoán: công việc mà phân tích phải làm trong giai đoạn này không phải là đơn giản nhưng nó lại là một công đoạn rất quan trọng để biết được hệ thống đang phát triển có bị mắc các lỗi không? Phân tích viên chỉ nên đưa ra các chuẩn đoán mà không nên sửa chữa nó vì nó không nằm trong lĩnh vực chuyên môn của mình Trong đại đa số các trường hợp nghiên cứu hệ thống, nguyên nhân của các vấn đề là hỗn hợp Có một số trường hợp liên quan đến hệ thống thông tin, một số khác gắn liền với nhiều lĩnh vực, cả quản trị
Trang 24nhân lực cũng như quản trị tác nghiệp quản lý Việc đưa ra chuẩn đoán là một hoạt động phức tạp đòi hỏi một cách tiếp cận chặt chẽ Phân tích viên phải biết tận dụng mọi công cụ để thực hiện nhiệm vụ này.
+ Xác định mục tiêu mới của hệ thống: các nguyên nhân và các vấn đề của hệ thống đã được xác định thì phân tích viên sẽ tiến hành cùng với người sử dụng xác định mục tiêu của hệ thống mới hay hệ thống đã được sửa chữa Mục đích chính của công việc này đó là hướng dẫn cho việc thiết kế hệ thống mới và đánh giá hệ thống mới sau khi được cài đặt.
+ Xác định các yếu tố của giải pháp: các mục tiêu của hệ thống mới gắn chặt với các vấn đề của hệ thống còn các yếu tố giải pháp lại gắn chặt với nguyên nhân của các vấn đề Nếu thời gian trả lời của hệ thống là quá lâu vì vấn đề năng lự của máy tính thì yếu tố giải pháp trước nhất là phải nâng cao năng lực đó.
- Đánh giá lại tính khả thi.
Sau khi các công đoạn trên hoàn thành thì ta đã có rất nhiều thông tin về hệ thống cũng như những nguyên nhân và giải pháp cho các vấn đề mắc phải của hệ thống Trong công đoạn này thì mục đích chính vẫn là đánh giá tính khả thi trong tổ chức, tài chính, kỹ thuật và thời hạn.
Đối với mỗi một yếu tố trong giải pháp thì phân tích viên phải xác định loại công nghệ cần có để thực thi giải pháp Việc đánh giá lại tính khả thi của dự án được thực hiện bằng việc so sánh những thông tin đó với những ràng buộc về tổ chức, kỹ thuật, tài chính và thời hạn đã được xác định trước đây.
- Thay đổi đề xuất của dự án.
Trong khi thực hiện đánh giá lại tính khả thi của dự án thì nhóm phân tích viên đã phác họa một đề xuất của dự án và đã được người sử dụng chấp nhận Với những thông tin đã thu thập được qua các công đoạn trên và việc đánh giá lại tính khả thi của dự án thì chúng ta cần xem xét và sửa đổi lại để xuất của dự án Chúng ta cần phải cố gắng cung cấp cho những người ra quyết định những thông tin và bức tranh rõ nhất có thể được về dự án, về nhiệm vụ phải thực
Trang 25hiện, về chi phí và về các ràng buộc về thời gian thực hiện hệ thống thông tin mới.
- Chuẩn bị và trình bày báo cáo phân tích chi tiết.
Báo cáo chi tiết là một tài liệu rất quan trọng nó sẽ phục vụ cho việc ra quyết định tiếp tục hay ngừng dự án Báo cáo chi tiết phải thể hiện được những điều căn bản mà nhóm phân tích đã tìm thấy được, nó không thể được thể hiện để đến khi người nghe không nắm rõ được ý nghĩa Báo cáo phải được thể hiện rõ ràng và có thể đính kèm các trang phụ lục mô tả tình hình chi tiết hơn.
c.Giai đoạn 3: Thiết kế logic
Giai đoạn này nhằm xác định tất cả các thành phần logic của một hệ thống thông tin, cho phép loại bỏ được các vấn đề của hệ thống thực tế và đạt được những mục tiêu đã được thiết lập ở giai đoạn trước Mô hình logic của hệ thống mới sẽ sản sinh ra (nội dung của Output), nội dung của cơ sở dữ liệu (các tệp, các quan hệ giữa các tệp), các xử lý và hợp thức hóa sẽ phải thực hiện (các xử lý) và các dữ liệu sẽ được nhập (các Input) Mô hình logic sẽ phải được những người sử dụng xem xét và chuẩn y Thiết kế logic bao gồm những công đoạn sau:
- Thiết kế cơ sở dữ liệu.
Thiết kế cơ sở dữ liệu là việc xác định yêu cầu thông tin của người sử dụng hệ thống thông tin mới Công việc này rất phức tạp do đó cần phải có những kinh nghiệm trong thiết kế cơ sở dữ liệu thì mới có thể thiết kế cơ sở dữ liệu một cách chính xác được Muốn thiết kế cơ sở dữ liệu chính xác thì phân tích viên phải xác định được phương pháp thiết kế hợp lý, nhưng mà trong thực tế thì không tồn tại một phương pháp nào thật sự hữu ích cho mọi hoàn cảnh Những nguyên nhân để giải thích cho sự khó khăn về thiết kế cơ sở dữ liệu được chia thành bốn loại chính sau:
+ Đặc trưng của nhiệm vụ mà hệ thống thông tin phải trợ giúp + Đặc trưng của hệ thống thông tin.
+ Đặc trưng của người sử dụng.
Trang 26+ Đặc trưng của những người phát triển hệ thống.
Trong thiết kế cơ sở dữ liệu thì việc xác định các yêu cầu của thông tin là hết sức quan trọng và có bốn cách thức để xác định yêu cầu thông tin:
+ Hỏi người sử dụng cần những thông tin gì?
+ Phương pháp đi từ hệ thống thông tin đang tồn tại.
+ Tổng hợp từ đặc trưng của nhiệm vụ mà hệ thống thông tin trợ giúp + Phương pháp thực nghiệm.
Thực tế thì khi thiết kế cơ sở dữ liệu sử dụng hai phương pháp tiếp cận phổ biến hiện nay đó là phương pháp mô hình hóa và phương pháp đi từ các đầu ra.
- Thiết kế xử lý.
Công đoạn này là làm rõ thêm những quan hệ của các dữ liệu bằng những xử lý trong hệ thống thông tin trợ giúp Thiết kế xử lý logic chỉ quan tâm đến các mô hình ngoài.
- Thiết kế các luồng dữ liệu vào.
Từ những thông tin đầu vào mà ta đã thu thập được bằng các phương pháp và các dữ liệu về hệ thống Chúng ta thiết kế các luồng dữ liệu vào nhằm cụ thể hóa các dữ liệu cho quá trình phát triển dự án được tiến hành theo đúng thời hạn cả về mặt kỹ thuật cũng như thời gian.
- Chỉnh sửa tài liệu cho mức logic.
Mức logic là mức mà các quan hệ trong hệ thống đã được cụ thể hóa bằng các mô hình và thông tin về hệ thống cần được chỉnh sửa sao cho có thể diễn đạt được hết các khả năng của hệ thống mới.
- Hợp thức hóa mô hình logic.
d.Giai đoạn 4: Đề xuất các phương án của giải pháp
Mô hình logic của hệ thống mới mô tả cái mà hệ thống này sẽ làm khi mô hình này được xác định và chuẩn y bởi người sử dụng, thì phân tích viên hoặc nhóm phân tích viên phải nghiêng về các phương tiện để thực hiên hệ thống này Đó là việc xây dựng các phương ác khác nhau để cụ thể hóa mô hình logic Mỗi một phương án là một phác họa của mô hình vật lý ngoài của hệ
Trang 27thống nhưng chưa phải là một mô tả chi tiết Tất nhiên là người sử dụng sẽ thấy dễ dàng hơn khi lựa chọn dựa trên những mô hình vật lý ngoài được xây dụng chi tiết nhưng chi phí cho việc tạo ra chúng là rất lớn.
Để giúp cho những người sử dụng lựa chọn giải pháp vật lý thỏa mãn tốt hơn các mục tiêu đã định ra trước đây, nhóm phân tích viên phải đánh giá các chi phí và lợi ích (hữu hình và vô hình) cả mỗi phương án và phải có những khuyến nghị cụ thể Một báo cáo sẽ được trình lên những người sử dụng và một buổi trình bày sẽ được thực hiện Những người sử dụng sẽ chọn lấy một phương án tỏ ra đáp ứng tốt nhất các yêu cầu của họ mà vẫn tôn trọng các ràng buộc của tổ chức Sau đây là các công đoạn của giai đoạn đề xuất các phương án giải pháp:
- Xác định các ràng buộc tin học và ràng buộc tổ chức.
Các ràng buộc của hệ thống là rất lớn và rất phức tạp, ta phải xác định được các ràng buộc đó nếu không xác định được thì hệ thống khó lòng tồn tại được Trong thực tế thì có những điều đúng cho mô hình logic nhưng lại không đúng cho mô hình vật lý Tất cả có các ràng buộc liên quan tới việc thiết kế hệ thống như sau:
+ Các ràng buộc có liên quan tới tổ chức + Các ràng buộc về tin học.
- Xây dựng các phương án của giải pháp.
Ở các công đoạn trước nhóm phân tích viên đã đưa ra các đề xuất cho việc phát triển hệ thống Trong công đoạn này thì nhóm phân tích viên phải tìm được giải pháp phù hợp cho hệ thống thông tin và công đoạn này được bắt đầu từ các khâu sau: xác định biên giới cho phần tin học hóa, xác định cách thức xử lý.
- Đánh giá các phương án của giải pháp.
Nhóm phân tích viên phải đánh giá các phương án của giải pháp trong khâu trước nhằm chọn ra phương án giải pháp tốt nhất cho hệ thống Để đánh giá các phương án của giải pháp thì có các tiêu thức đánh giá sau:
Trang 28+ Phân tích chi phí lợi ích + Phân tích đa tiêu chuẩn.
- Chuẩn bị và trình bày báo cáo của giai đoạn đề xuất các phương án giải pháp.
Sau mỗi công đoạn thì nhóm phân tích viên luôn luôn phải báo cáo lại công việc của mình Trong giai đoạn này cũng không ngoại lệ, báo cáo của giai đoạn này tập trung vào các phương án đã được đề xuất và đưa ra những lý luận để có thể thuyết phục được người sử dụng chấp nhận phương án giải pháp đó.
e.Giai đoạn 5: Thiết kế vật lý ngoài
Giai đoạn này được tiến hành sau khi một phương án giải pháp được lựa chọn Thiết kế vật lý bao gồm hai tài liệu kết quả cần có: trước hết là một tài liệu bao chứa tất cả các đặc trưng của hệ thống mới sẽ cần cho việc thực hiện kỹ thuật; và tiếp đó là tài liệu dành cho người sử dụng và nó mô tả cả phần thủ công và cả những giao diện với những phần tin học hóa Những công đoạn chính của thiết kế vật lý ngoài là:
- Lập kế hoạch thiết kế vật lý ngoài.
Phân tích viên trong giai đoạn này phải lựa chọn phương tiện, khuôn dạng của các dòng vào ra, xác định cách thức hội thoại với phần tin học hóa của hệ thống và các cách thức thực hiện các thủ tục thủ công Phân bố thời gian và lập các danh mục sản phẩm.
- Thiết kế chi tiết các giao diện (vào/ra).
Thiết kế chi tiết vào ra là một công việc quan trọng vì những nhận xét đánh giá về hệ thống thông tin của người sử dụng là chủ yếu dựa vào những yếu tố vào ra này Công đoạn này cần phải thực hiện qua các bước:
+ Thiết kế vật lý cho các đầu ra: trong thiết kế này thì chúng ta cần lựa chọn vật mang tin, bố trí thông tin trên vật mang, thiết kế trang in ra, thiết kế ra trên màn hình
Trang 29+ Thiết kế vào: mục đích của việc thiết kế vào là thiết kế các thủ tục nhập dữ liệu có hiệu quả và giảm thiểu sai sót Thiết kế vào bao gồm lựa chọn phương tiện, thiết kế khuôn dạng cho thông tin nhập.
- Thiết kế cách thức tương tác với phần tin học hóa.
Một hệ thống thường phải thực hiện các nhiệm vụ khác nhau Hệ thống cần phải được chỉ thị của người sử dụng thì mới có thể thực thi được, muốn như vậy thì cần phải thiết kế hệ thống sao cho khi tương tác với phần tin học hóa phải thật dễ dàng Có bốn cách thức để thực hiện việc tương tác với hệ thống tin học hóa đó là:
+ Giao tác bằng tập hợp lệnh.
+ Giao tác bằng các phím trên bàn phím + Giao tác qua thực đơn.
+ Giao tác dựa vào các biểu tượng - Thiết kế các thủ tục thủ công.
- Chuẩn bị và trình bày báo cáo về thiết kế vật lý ngoài f.Giai đoạn 6: Triển khai kỹ thuật hệ thống
Kết quả quan trọng nhất của giai đoạn thực hiện kỹ thuật là phần tin học hóa của hệ thống thông tin, có nghĩa là phần mềm Những người chịu trách nhiệm về giai đoạn này phải cung cấp các tài liệu như các bản hướng dẫn sử dụng và thao tác cũng như các tài liệu mô tả về hệ thống Các hoạt động chính của việc triển khai thực hiện kỹ thuật hệ thống là:
- Lập kế hoạch thực hiện kỹ thuật.
Công việc quan trọng nhất của việc lập kế hoạch đó là việc lựa chọn công cụ Công việc lựa chọn này liên quan đến việc thiết kế vật lý trong cũng như những hoạt động lập trình sau này Việc chọn ngôn ngữ lập trình tùy thuộc vào tình hình thực tế của hệ thống Một ứng dụng do một cán bộ không chuyên tin học thì rõ ràng là nên chọn ngôn ngữ thế hệ 4 Tuy nhiên những ứng dụng lớn thì cần phải có nhiều ngôn ngữ kết hợp và cần những nhà chuyên môn thực hiện.
Trang 30- Thiết kế vật lý trong.
Thiết kế vật lý trong có mục đích đảm bảo độ chính xác của thông tin và làm hệ thống mềm dẻo, ít chi phí Có hai bộ phận cơ bản của thiết kế vật lý trong đó là: thiết kế cơ sở dữ liệu vật lý trong, thiết kế vật lý trong các xử lý.
- Lập trình.
Là quá trình chuyển đổi các yêu cầu về đặc tả thiết kế vật lý của các nhà phân tích thành phần mềm máy tính do các lập trình viên đảm nhận Khi tiến trình lập trình bắt đầu thì cũng có thể tiến hành tiến trình thử nghiệm và có thể tiến hành chúng song song với nhau.
- Thử nghiệm hệ thống.
Là quá trình tìm lỗi của hệ thống, nó là một đánh giá cuối cùng về các đặc tả, thiết kế và mã hóa Mục đích của việc thử nghiệm chương trình là nhằm bảo đảm rằng tất cả các thành phần của chương trình đều được triển khai và thiết kế đúng với các yêu cầu đã được đặt ra.
- Chuẩn bị tài liệu.
Đây là công đoạn cần thiết trước khi các phân tích viên kết thúc một dự án tin học hóa để bắt đầu chuyển sang một dự án khác, nhằm tập hợp các thông tin quan trọng mà họ có được về hệ thống trong quá trình phát triển và triển khai hệ thống Các loại tài liệu cần có trong quá trình này đó là “tài liệu hệ thống” và “tài liệu hương dẫn sử dụng”.
g.Giai đoạn 7: Cài đặt và khai thác
Cài đặt hệ thống là pha trong đó việc chuyển từ hệ thống cũ sang hệ thống mới được thực hiện Để việc chuyển đổi này được thực hiện với những va chạm ít nhất, cần phải lập kế hoạch một cách cẩn thận Giai đoạn này bao gồm các công đoạn:
- Lập kế hoạch cài đặt.
Trước khi tiến hành cài đặt hệ thống thì cần phải tiến hành lập kế hoạch chi tiết Có thể áp dụng các phương pháp cài đặt sau đây: cài đặt trực tiếp, cài đặt song song, cài đặt thí điểm cục bộ.
Trang 31+ Cài đặt trực tiếp: theo phương pháp này thì người ta dừng toàn bộ hệ thống cũ và thay thế bằng hệ thống mới.
+ Cài đặt song song: theo phương pháp này thì cả hai hệ thống cũ và mới cùng tồn tại song song cho tới khi có thể quyết định dừng hệ thống cũ.
+ Cài đặt thí điểm cục bộ: theo phương pháp này thì việc cài đặt chỉ diễn ra trên phạm vi hẹp có thể là một hoặc một vài bộ phận.
- Chuyển đổi.
Mỗi chiến lược chuyển đổi hệ thống chỉ bao gồm việc chuyển đổi phần mềm mà cả chuyển đổi dữ liệu, phần cứng, tài liệu, các phương pháp làm việc, các mô tả công việc, các phương tiện làm việcm các tài liệu đào tạo, các biểu mẫu nghiệp vụ …
- Khai thác và bảo trì.
Khi đưa hệ thống vào hoạt động thì đây là giai đoạn chiếm chi phí lớn nhất trong chu kỳ sống của hệ thống đối với phần lớn các tổ chức Quá trình này có thể bắt đầu ngay sau khi hệ thống được cài đặt Sau khi hệ thống được cài đặt thì vấn đề bảo trì được đặt ra Quá trình này là quá trình cuối cùng trong chu kỳ sống của hệ thống và nó cũng là mắt xích cuối cùng sẽ dẫn trở lại mắt xích ban đầu để bắt đàu một chu kỳ mới.
- Đánh giá.
Đánh giá sau dự án chủ yếu là việc so sánh thời gian thực sự để có được hệ thống mới với thời gian dự kiến và xác định xem dự án này có tuân thủ ngân sách đã xác định hay không? Đánh giá chất lượng công việc giao cho các thành viên có hoàn thành tốt hay không, đánh giá quản lý dự án chủ yếu là việc xem dự án có được tiến hành tuân thủ về thời gian đã định hay không?
Đánh giá về hệ thống là việc xem xét xem hệ thống có đạt được các mục tiêu đã đề ra hay không Điều này không thể thực hiện ngay sau khi cài đặt mà cần phải sau một thời gian khai thác nhất định.
2 Mô hình IFD
Trang 32Sơ đồ luồng thông tin ( Information Flow Diagram) là một trong hai công cụ thường dùng để phân tích và thiết kế hệ thống thông tin, nó được dùng để mô tả hệ thống thông tin theo cách thức động Tức là mô tả sự di chuyển của dữ liệu, việc xử lý và lưu trữ trong thế giới vật lý bằng các sơ đồ Các kí pháp của sơ đồ luồng thông tin như sau:
-Kho lưu trữ dữ liệu:
Thủ côngTin học hóa
-Dòng thông tin:
Tài liệu
-Điều khiển:
Ví dụ:
Sơ đồ luồng thông tin thể hiện hoạt động chấm thi, nhập điểm vàomáy tính và in bảng thông báo điểm cho sinh viên cuối mỗi kì học.
Trang 33Thời điểm Sinh viênGiáo viênPhòng đào tạo
Sơ đồ luồng thông tin trong hệ thống chấm, nhập và lên điểm
Các phích vật lý là những mô tả chi tiết hơn bằng lời cho các đối tượng được biểu diễn trên sơ đồ Rất nhiều thông tin không thể hiện sơ đồ như hình dạng (Format) của các thông tin vào ra, thủ tục xử lý, phương tiện thực hiện xử lý… sẽ được ghi trên các phích vật lý này Co 3 loại phích : phích luồng thông thin, phích kho dữ liệu, phích xử lý.
Loại thứ nhất: phích luồng thông tin có mẫu:
Trang 34Tên tài liệu:
Loại thứ hai: Phích kho chứa dữ liệu
Tên kho dữ liệu:
Sự kiện khởi sinhTên IFD có liên quan:
Trang 35Sơ đồ luồng dữ liệu dùng để mô tả cũng chính hệ thống thông tin như sơ đồ luồng thông tin nhưng trên góc độ trừu tượng 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 hề quan tâm tới nơi, thời điểm và đối tượng chịu trách nhiệm xử lý Sơ đồ luồng dữ liệu chỉ mô tả đơn thuần hệ thống thông tin làm gì và để làm gì.
Ký pháp dùng cho sơ đồ luồng dữ liệu DFD
Ngôn ngữ sơ đồ luồng dữ liệu DFD sử dụng 4 loại kí pháp cơ bản: thực thể, tiến trình, kho dữ liệu và dòng dữ liệu.
Sơ đồ ngữ cảnh ( Context Diagram) thể hiện rất khái quát nội dung
chính của hệ thống thông tin Sơ đồ này không đi vào chi tiết, mà mô tả sao cho một lần nhìn là có thể nhận ra nội dung chính của hệ thống Để
Trang 36cho sơ đồ ngữ cảnh sáng sủa, dễ nhìn có thể bỏ qua các kho dữ liệu; bỏ qua các xử lý cập nhật Sơ đồ khung cảnh còn được gọi là sơ đồ mức 0.
Để mô tả hệ thống chi tiết hơn người ta dùng kỹ thuật phân rã sơ đồ Bắt đầu từ sơ đồ khung cảnh, người ta phân ra thành sơ đồ mức 0,mức một, mức hai…
Ví dụ sau là sơ đồ DFD mức 0 của hệ thống tính lương Sau mức này nếu thấy cần thiết người ta có thể phân rã thành mức 1, mức hai nếu thấy cần thiết.
Trang 37Nhân viên 1.0 Kiểm tra ngày công 2.0 Tính các khoản
Giống như phích vật lý, phích logic hoàn chỉnh tài liệu cho hệ thống Có 5 loại phic logic, chúng được dùng mô tả thêm cho luồng dữ liệu, xử lý, kho dữ liệu, tệp dữ liệu và phần tử thông tin.
-Mẫu phíc xử lý logic -Mẫu phíc luồng dữ liệu -Mẫu phíc phần tử thông tin
Trang 38-Mẫu phíc kho dữ liệu -Mẫu phíc tệp dữ liệu
Trang 39Phíc xử lý logicTên xử lý
Mô tả
Tên DFD liên quanCác luồng dữ liệu vào
Trang 40Ngôn ngữ cấu trúc dùng để mô tả xử lý logic trên phích xử lý
Ngôn ngữ này chứa các động từ như đọc, ghi, sắp xếp, chuyển sang, trộn, cộng, trừ, nhân, chia, hãy thực hiện…Các phép toán số học và logic thường dùng.
Ngôn ngữ cũng dùng các danh từ được dùng để mô tả dữ liệu trong từ điển hệ thống.
Ngôn ngữ cấu trúc không dùng các trạng từ và tính từ.
Ngôn ngữ cấu trúc chỉ dùng các cấu trúc sau để viết các câu: 1.Tiếp theo (Sequence)
2.Nếu …thì…(If…Then)
3.Nếu thì Nếu không …Thì (If…Then…Else…End if) 4.Trong khi mà (While…)
5.Cho đến khi (Do Until)
6.Câu phức hợp bắt đầu kết thúc (Begin…End) 7.Theo các trường hợp (Do…Case)
Ngôn ngữ cấu trúc tiếng Anh cũng có thể dùng khi thiết kế.
Ngôn ngữ này chứa các động từ như: Read, Write, Sort, Move, Merge, Add, Substract, Multily, Division, Do… Các phép toán số học và logic thường