Công nghệ quản lý dữ liệu phi cấu trúc và ứng dụng phát triển hệ thống thông tin quản lý - Pdf 14

1
Số hóa bởi trung tâm học liệu

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG

Phạm Thu Trang

CÔNG NGHỆ QUẢN LÝ DỮ LIỆU PHI CẤU TRÚC
VÀ ỨNG DỤNG PHÁT TRIỂN
HỆ THỐNG THÔNG TIN QUẢN LÝ LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH Thái Nguyên - 2013
2
Số hóa bởi trung tâm học liệu

Số hóa bởi trung tâm học liệu
, không
.
.

6 năm 2013

ii
Số hóa bởi trung tâm học liệu

2.3.1. Tổng quan………………………………………………………………………….51
2.3.2. Các phần mềm trong hệ thống Lotus………………………………………… 52
Chương 3. Phát triển và cài đặt hệ thống quản lý văn bản và điều hành trực tuyến trên
công nghệ IBM – Lotus Domino…………………………………………………….55
3.1. Những vấn đề đặt ra cần tiến hóa hệ thống 55
3.2. Lựa chọn giải pháp tái kỹ nghệ 56
3.3. Sơ đồ tiến trình thực hiện tái kỹ nghệ và quy trình phát triển hệ thống quản lý
văn bản và điều hành trực tuyến 57
3.3.1. Từ mã nguồn của hệ thống chuyển sang mô hình trực quan………………….58
3.3.2. Từ mô hình trực quan cấu trúc lại chương trình……………………………… 60
3.3.3. Tái kỹ nghệ dữ liệu………………………………………………………………….62
3.3.4. Xây dựng mã nguồn…………………………………………………………………62
3.3.5. Hoàn thiện, cài đặt và sử dụng……………………………………………………62
3.4. Môi trường cài đặt 62
3.5. Kết quả đạt được và một số đánh giá 63
3.6. Hệ thống giao diện chương trình 63
KẾT LUẬN 71
a. Tiếng Việt 72
b. Tiếng Anh 72
c. Internet 72

iv
Số hóa bởi trung tâm học liệu

DANH MỤC CÁC TỪ VIẾT TẮT

CSDL
: Cơ sở dữ liệu
CV
: Chuyên viên

Hình 1.10: Quá trình tái kỹ nghệ dữ liệu
Hình 1.11: Kỹ nghệ chuyển tiếp và Tái kỹ nghệ phần mềm
Hình 1.12: Dịch xuôi và dịch ngược trong UML
Hình 1.13: Một bước lặp của quá trình tái thiết kế với xuất phát là mã nguồn
Hình 1.14: Một bước lặp của quá trình tái thiết kế xuất phát là mô hình thiết kế
Hình 3.1: Sơ đồ tiến trình tái kỹ nghệ “Hệ thống quản lý văn bản & điều hành trực
tuyến”
Hình 3.2: Từ mã nguồn của hệ thống chuyển sang mô hình trực quan
Hình 3.3: Mô hình use case cho thấy các yêu cầu của hệ thống
Hình 3.4: Mô hình use case cho quyền quản trị
Hình 3.5: Mô hình use case cho quyền người dùng
Hình 3.6: Biểu đồ tuần tự cho chức năng tìm kiếm
Hình 3.7: Màn hình đăng nhập
Hình 3.8: Màn hình cập nhật văn bản đến
Hình 3.9: Màn hình cập nhật văn bản đi
Hình 3.10: Biểu mẫu xuất văn bản đến
Hình 3.11: Biểu mẫu xuất văn bản đi
Hình 3.12: Giao diện trang chủ
Hình 3.13: Giao diện tác nghiệp phụ
Hình 3.14: Giao diện danh sách văn bản đến
vi
Số hóa bởi trung tâm học liệu

Hình 3.15: Giao diện chi tiết văn bản đến
Hình 3.16: Giao diện danh sách văn bản đi
Hình 3.17: Giao diện chi tiết văn bản đi
Hình 3.18: Giao diện yêu cầu công việc
Hình 3.19: Giao diện tìm kiếm văn bản
Hình 3.20: Tìm kiếm toàn bộ văn bản
Hình 3.21: Tìm kiếm theo sổ văn bản

sau:
- Tìm hiểu khái quát về tái kỹ nghệ và các công nghệ sử dụng trong quá trình tái
kỹ nghệ.
- Nghiên cứu các công nghệ quản lý dữ liệu phi cấu trúc và khả năng ứng dụng
của chúng.
2
Số hóa bởi trung tâm học liệu

- Ứng dụng một công nghệ quản lý dữ liệu phi cấu trúc là Lotus Domino của
IBM để phát triển hệ thống quản lý văn bản và điều hành trực tuyến thông qua đổi mới
cơ chế tìm kiếm thông tin.
Luận văn gồm 3 chương:
Chương 1. Tổng quan về các công nghệ quản lý dữ liệu phi cấu trúc và hệ thống
quản lý văn bản, điều hành trực tuyến.
Chương 2. Các công nghệ quản lý dữ liệu phi cấu trúc.
Chương 3. Phát triển và cài đăt Hệ thống quản lý văn bản và điều hành trực
tuyến dựa trên công nghệ IBM-Lotus Domino. 3
Số hóa bởi trung tâm học liệu

Chương 1.
TỔNG QUAN VỀ CÁC CÔNG NGHỆ QUẢN LÝ DỮ LIỆU PHI CẤU TRÚC
VÀ HỆ THỐNG QUẢN LÝ VĂN BẢN, ĐIỀU HÀNH TRỰC TUYẾN
1.1. Tổng quan về các công nghệ quản lý dữ liệu phi cấu trúc
1.1.1. Khái niệm về tái kỹ nghệ
Chikofsky và Cross đã định nghĩa tái kỹ nghệ là: “Kiểm tra, phân tích, biến đổi
hệ thống phần mềm hiện thời để xây dựng lại thành một hệ thống mới, và bổ sung
thêm một số thành phần mới vào trong đó” [6]. Định nghĩa này tập trung vào làm sáng

thức, công nghệ đã cũ, một hệ thống máy tính hay một chương trình ứng dụng lạc hậu
vẫn đang tiếp tục được sử dụng bởi các chức năng của nó vẫn đang đáp ứng những nhu
cầu của người dùng. Tuy nhiên, các hệ thống này sẽ không có hiệu quả cao do công
nghệ đã lạc hậu và các thủ tục hay các nền tảng hỗ trợ đã không còn tồn tại. Hơn thế
nữa, các hệ thống này thường không còn các tài liệu đặc tả, phân tích, các mô hình
thiết kế. Vì vậy, để có thể xây dựng lại hệ thống cần phải có sự hiểu biết sâu sắc về nó.
Do đó, tái kỹ nghệ là lựa chọn tốt nhất trong những trường hợp này.
Tái kỹ nghệ giai đoạn cũng liên kết với tái kỹ nghệ tiến trình nghiệp vụ
(Hammer, 1990). Tái kỹ nghệ tiến trình nghiệp vụ cũng liên quan với tiến trình nghiệp
vụ tái thiết kế để giảm số lượng các hoạt động dự phòng và nâng cao hiệu quả của qui
trình. Nó thường phụ thuộc vào việc giới thiệu hoặc tăng cường hỗ trợ dựa trên máy
tính cho quá trình này. Kỹ thuật dịch xuôi Tái kỹ nghệ phần mềm
Hình 1.1 : Tái kỹ nghệ phần mềm
Sự khác biệt then chốt giữa tái kỹ nghệ và phát triển một hệ thống phần mềm
mới chính là điểm xuất phát cho việc phát triển. Đối với việc phát triển một hệ thống
phần mềm mới, công việc sẽ bắt đầu với việc viết một tài liệu đặc tả cho hệ thống,
trong khi đối với tái kỹ nghệ, hệ thống cũ đã đóng vai trò như một bản đặc tả cho hệ
thống mới. Chikofsky và Cross (Chikofsky and Cross, 1990) đã đưa ra thuật ngữ “kỹ
Đặc tả hệ thống
Thiết kế và thực thi



Hình 1.2: Qui trình tái kỹ nghệ
Hình 1.2 mô tả một qui trình tái kỹ nghệ có khả năng thực hiện được. Đầu vào
của qui trình là một chương trình được kế thừa và đầu ra là một phiên bản có các
module có cấu trúc rõ ràng của chính chương trình đó. Đồng thời cũng như là tái kỹ
nghệ chương trình, dữ liệu cho hệ thống cũng có thể được tái kỹ nghệ lại.
Các hoạt động trong qui trình tái kỹ nghệ là:
1 Dịch mã nguồn Chương trình được chuyển đổi từ một ngôn ngữ lập trình cũ sang
một phiên bản mới hơn hoặc chuyển sang một ngôn ngữ khác.
2 Kỹ nghệ ngược Chương trình được phân tích và lấy thông tin để làm tài liệu cho tổ
chức và các chức năng của chương trình.
Chương
trình
nguồn
Tài liệu
chương
trình
Chương

5 Tái kỹ nghệ dữ liệu Dữ liệu xử lý bởi chương trình được thay đổi để phản hồi lại
những thay đổi của chương trình.
Tái kỹ nghệ chương trình có thể không cần thiết phải đầy đủ tất cả các bước như
trong hình 1.2. Việc dịch mã nguồn có thể không cần thiết nếu ngôn ngữ chương trình
sử dụng để phát triển hệ thống vẫn được các trình biên dịch hiện thời hỗ trợ. Nếu các
công cụ tự động phục vụ cho quá trình tái kỹ nghệ có thể tin tưởng hoàn toàn thì
những tài liệu có được thông qua hoạt động kỹ nghệ ngược có thể không cần thiết. Tái
kỹ nghệ dữ liệu chỉ cần thiết nếu cấu trúc dữ liệu trong chương trình thay đổi trong quá
trình tái kỹ nghệ hệ thống. Tuy nhiên, tái kỹ nghệ phần mềm luôn bao gồm việc cấu
trúc lại chương trình.
Chi phí tăng
Hình 1.3: Chi phí tái kỹ nghệ
Chi phí của tái kỹ nghệ hiển nhiên được quyết định bởi qui mô công việc cần
phải được tiến hành. Chi phí của các phương pháp tiếp cận đến tái kỹ nghệ được thể
hiện trong hình 1.3. Chi phí tăng từ trái qua phải, vì thế chuyển đổi mã nguồn là lựa
chọn rẻ nhất và tái kỹ nghệ chính là một phần của việc chuyển hướng cấu trúc là cái có
chi phí cao nhất.
Tổ chức lại chương
trình và dữ liệu
phần mềm.
1.1.2. Qui trình chung tái kỹ nghệ phần mềm

Hình 1.4. Quy trình tái kỹ nghệ phần mềm
Kiểm kê phân tích
Lựa chọn tài liệu tái tổ chức lại:
Kỹ nghệ ngược:
Tổ chức lại code (Code restructuring):
Tổ chức lại dữ liệu (Data restructuring):
Kỹ nghệ chuyển tiếp.
Tái kỹ nghệ bắt đầu với mã nguồn của hệ thống cơ sở đang tồn tại và kết thúc
với mã nguồn của hệ thống muốn hướng tới. Quá trình này có thể đơn giản như sử
dụng công cụ dịch mã nguồn để dịch mã nguồn từ một ngôn ngữ sang ngôn ngữ khác
(FORTRAN sang C) hoặc từ một hệ điều hành này sang hệ điều hành khác (UNIX
sang DOS). Mặt khác, nhiệm vụ của tái kỹ nghệ có thể rất phức tạp, sử dụng mã
nguồn hiện đang tồn tại để tái tạo lại phần thiết kế, xác định yêu cầu trong hệ thống
8
Số hóa bởi trung tâm học liệu

đang tồn tại sau đó so sánh chúng với yêu cầu hiện tại, loại bỏ những thứ không còn
áp dụng, thiết kế lại hệ thống bằng cách sử dụng thiết kế hướng đối tượng và cuối
cùng code thành một hệ thống mới. Hình 1.4, Mô hình chung của các phần mềm tái
kỹ nghệ cho biết kỹ thuật, quy trình cho tất cả các cấp của tái kỹ nghệ dựa trên các
cấp độ của trình độ phát triển phần mềm trừu tượng được nói đến ở trên.
Các mô hình trong hình 1.5 áp dụng ba nguyên tắc của tái ký nghệ: sự trừu
tượng hóa (abstraction ), sự sửa đổi (alteration), và sự sàng lọc (refinement).

Khái
niệm
Yêu cầu
Thiết kế
Triển khai
Kỹ nghệ
ngược
(Trừu tượng)

Kỹ nghệ
xuôi
(Cải tiến)
(Biến đổi)
Nghĩ lại
Đặc tả lại
So sánh
chất lượng
chức năng
Hệ thống đích
Hệ thống ban đầu
9
Số hóa bởi trung tâm học liệu

1.1.2.1. Dịch mã nguồn
Dạng đơn giản nhất của tái kỹ nghệ phần mềm là dịch mã nguồn từ ngôn ngữ
này sang một ngôn ngữ khác bằng các công cụ dịch tự động. Do đó cấu trúc của
chương trình hoàn toàn không thay đổi. Ngôn ngữ đích có thể là một phiên bản mới
hơn của ngôn ngữ gốc (ví dụ từ COBOL-74 sang COBOL-85) hoặc là một ngôn ngữ

biệt của mã nguồn
Thiết kế tài liệu
chuyển đổi
Dịch mã
tự động
Dịch mã
thủ công
10
Số hóa bởi trung tâm học liệu

Kỹ nghệ ngược là một tiến trình phân tích để xác định quan hệ của hệ thống và
tạo ra các thành phần của hệ thống trong một mẫu khác hoặc trong một cấp độ trừu
tượng cao hơn. Trong kỹ nghệ ngược, các yêu cầu và thiết kế cấu trúc cần thiết và nội
dung của hệ thống phải giảm đi. Ngoài ra để giữ lại lược đồ quan hệ và các mối tương
tác, thông tin và các quy luật về ứng dụng doanh nghiệp và quá trình hữu ích trong
hoạt động kinh doanh phải được lưu lại. Mục tiêu chủ chốt của kỹ nghệ ngược là tạo ra
để thay thế, phục hồi việc mất thông tin, phát hiện phản ứng phụ, và tạo điều kiện tái
sử dụng. Hiệu quả của quá trình này ảnh hưởng đến việc thành công của dự án tái kỹ
nghệ. Kỹ nghệ ngược không làm thay đổi hệ thống được tạo ra một hệ thống mới, nó
là một quá trình kiểm tra không làm thay đổi tính năng tổng thể của hệ thống. Hình 1.7: Tiến trình kỹ nghệ ngược
Kỹ nghệ ngược thường đi trước tái kỹ nghệ. Đôi khi kỹ nghệ ngược được ưa

Tạo tài
liệu
11
Số hóa bởi trung tâm học liệu

như luồng điều khiển, cấu trúc điều khiển, luồng dữ liệu). Làm lại tài liệu là một hình
thức đơn giản nhất và là giai đoạn khởi đầu của kỹ nghệ ngược.
Làm lại tài liệu mã nguồn là sự biến đổi từ mã nguồn (cộng với những hiểu biết
về chương trình và các tài liệu khác) sang một tài liệu mã nguồn mới hoặc nâng cấp tài
liệu mã nguồn. Thông thường, những tài liệu này sẽ ở dạng văn bản (ví dụ như là
những ghi chú trong chương trình), nhưng nó cũng có thể là những tài liệu bằng đồ
họa. Việc cải tiến phần mềm bằng cách nâng cấp tài liệu (những chú thích, thiết kế,
đặc tả được nhúng trong chương trình) là một trong những kỹ thuật tái kỹ nghệ cũ.
Làm lại tài liệu là một hoạt động quan trọng bởi việc bảo trì thường phải dựa vào
những chú thích được viết trong chương trình và coi đó là cơ sở để có thể hiểu được
những đoạn mã trong chương trình hoạt động như thế nào. Với việc làm lại tài liệu,
những kĩ sư bảo trì sẽ có cái nhìn toàn diện và đầy đủ hơn về hệ thống và hoạt động
của nó. Ngày nay, việc làm lại tài liệu không phải chỉ thủ công mà đã có rất nhiều
công cụ, hỗ trợ cho con người rất nhiều trong việc xây dựng lại tài liệu. Một số công
cụ phổ biến như là “máy in chất lượng” là một chương trình có thể hiển thị một danh
sách các mã trong dạng cải tiến, hay như máy tạo biểu đồ có thể tạo ra các biểu đồ trực
tiếp từ mã, phản ánh các luồng mã và cấu trúc mã, hoặc là máy phát danh sách tham
chiếu chéo. Một mục tiêu chính của những công cụ này là giúp cho con người có thể
dễ dàng hình dung được mối quan hệ giữa các thành phần của chương trình, từ đó có
thể thấy phương hướng rõ ràng để thực hiện công việc.
1.1.2.4. Phục hồi thiết kế
Sau bước làm lại tài liệu, việc phục hồi lại thiết kế của chương trình là một việc
làm cần thiết. Phục hồi thiết kế là một tập hợp các kỹ thuật đảo ngược trong đó chúng
ta phải xây dựng lại thiết kế cho chương trình dựa trên việc trực tiếp kiểm tra hệ thống
đó. Ngoài ra, chúng ta phải thu thập thêm các thông tin, kiến thức bên ngoài của hệ

thống cũ, mà chúng ta phải thực hiện cải tiến lại hệ thống cũ, tạo ra một hệ thống mới
phù hợp với môi trường hiện tại, cung cấp đầy đủ các tính năng mà hiện tại hệ thống
được đòi hỏi. Do nhu cầu ngày nay, các hệ thống cần sử dụng bộ nhớ lớn, vì vậy phải
có sự tối ưu hóa việc sử dụng bộ nhớ chương trình. Cộng với việc có nhiều người lập
trình thiếu hiểu biết về kỹ nghệ phần mềm dẫn đến hệ thống có cấu trúc không tốt. Cấu
trúc điều khiển chương trình có thể sẽ khó hiểu do chương trình có nhiều nhánh rẽ
không sử dụng các câu lệnh điều kiện và logic điều khiển chương trình không được
tốt. Cũng có thể do chương trình thường xuyên phải bảo trì đã làm xuống cấp cấu trúc
của hệ thống. Chúng ta có thể thay đổi để chương trình có thể thực hiện những đoạn
13
Số hóa bởi trung tâm học liệu

mã mà bình thường chúng không hoạt động, tuy nhiên điều này chỉ được phát hiện khi
sau khi đã có sự phân tích tổng thể. Các lập trình viên bảo trì thường không dám loại
bỏ mã trong trường hợp nó có thể được truy cập gián tiếp.
Bohm và Jacopini (Bohm và Jacopini, 1966) đã chứng minh rằng, bất kỳ chương
trình nào cũng có thể được viết lại thành các dạng đơn giản bằng cách sử dụng những
câu lệnh điều kiện if – else , vòng lặp while, và những câu lệnh vô điều kiện như goto
sẽ không cần thiết trong chương trình. Định lý này là cơ sở cho việc tái cấu trúc
chương trình tự động. Hình 1.8 cho thấy các giai đoạn trong việc cấu trúc lại một
chương trình bằng phương pháp tự động. Qua lần biến đổi đầu tiên, chương trình sẽ
được chuyển đổi thành một đồ thị có hướng, tiếp theo đó nó sẽ được chuyển đổi thành
một chương trình mới có cấu trúc tương đương với chương trình cũ.


rất phức tạp. Thậm chí ngay cả với các phần cứng nhanh và hiện đại cũng phải mất
một thời gian dài để hoàn thành qui trình tái cấu trúc cho các chương trình lớn.
Nếu chương trình phụ thuộc vào dữ liệu trong đó các thành phần gắn kết chặt
chẽ với nhau thông qua việc chia sẻ cấu trúc dữ liệu, việc cấu trúc lại mã không đưa
đến cải tiến sự hiểu biết một cách đáng kể. Do vậy, việc module hóa chương trình có
thể cần thiết. Nếu chương trình được viết bằng một hệ ngôn ngữ không chuẩn, các
công cụ tái cấu trúc tiêu chuẩn có thể không hoạt động đúng đắn và sự can thiệp thủ
công có ý nghĩa vô cùng cần thiết.
Trong một số trường hợp, có thể không có chi phí hiệu quả để cấu trúc lại toàn
bộ các chương trình trong một hệ thống. Một số có thể có chất lượng tốt hơn so với số
khác trong khi đó một vài cái lại không thể tùy thuộc vào các thay đổi thường xuyên.
Arthur (Arthur, 1988) cho thấy rằng một dữ liệu phải được thu thập để giúp xác định
những chương trình nào có thể hưởng lợi nhiều nhất từ tái cấu trúc. Ví dụ, các thông
số sau đây có thể được sử dụng để xác định các chương trình thích hợp cho việc tái
cấu trúc:
- Ước lượng thất bại
- Tỉ lệ phần trăm mã nguồn thay đổi trên mỗi năm
- Độ phức tạp của các thành phần
Một số nhân tố khác như mức độ để chương trình hoặc các thành phần của
chương trình có thể đạt đến tiêu chuẩn như hiện thời cũng có thể dựa vào đó để quyết
định cho việc tái cấu trúc.
1.1.2.6. Module hóa chương trình
Module hóa chương trình là quá trình tổ chức lại chương trình sao cho các phần
chương trình có liên quan đến nhau được tập hợp lại với nhau trong cùng một module.
Một khi việc module hóa chương trình đã được thực hiện, chúng ta có thể dễ dàng loại
15
Số hóa bởi trung tâm học liệu

bỏ được các thành phần dư thừa và tối ưu hóa tương tác giữa các thành phần đồng thời
làm giảm giao diện giữa một thành phần với các phần còn lại của hệ thống. Ví dụ,

Số hóa bởi trung tâm học liệu

- Vấn đề đặt tên dữ liệu
- Vấn đề độ dài trường
- Vấn đề tổ chức bản ghi
- Các giá trị cố định mã hóa cứng
- Không có từ điển dữ liệu Hình 1.9. Chuyển đổi dữ liệu
Tệp 1
Tệp 6

nghệ, giá trị của dữ liệu cũng phải được chuyển đổi để phù hợp với cấu trúc mới.
Trước khi tái kỹ nghệ dữ liệu của chương trình, điều cần thiết trước khi làm là
phải phân tích chi tiết chương trình. Những phân tích này nên nhằm vào mục đích phát
hiện những chức năng định danh trong chương trình, tìm ra các giá trị cố định để thay
đổi thành tên hằng số, phát hiện những qui tắc kiểm chứng dữ liệu nhúng và chuyển
đổi đại diện của dữ liệu. Các công cụ như là phân tích và mô hình tham chiếu chéo có
thể được sử dụng để giúp cho quá trình phân tích được nhanh chóng và đơn giản hơn.
Một tập hợp các bảng nên được tạo ra để chỉ ra các mục dữ liệu được tham chiếu và
những thay đổi được tạo ra cho mỗi tham chiếu đó.

Hình 1.10: Quá trình tái kỹ nghệ dữ liệu
Hình 1.10 minh họa quá trình tái kỹ nghệ dữ liệu, giả định rằng những định nghĩa
dữ liệu được sửa đổi, các giá trị cố định được đặt tên, định dạng dữ liệu được tổ chức
lại và giá trị dữ liệu được chuyển đổi. Bảng tóm tắt các chi tiết trong thay đổi được tạo
ra. Do đó chúng được sử dụng ở tất cả các giai đoạn của quá trình tái kỹ nghệ dữ liệu.
Trong giai đoạn 1 của quá trình này, các định nghĩa dữ liệu trong chương trình
được sửa đổi cho dễ hiểu hơn. Dữ liệu không bị ảnh hưởng bởi các sửa đổi. Có thể tự
động quá trình này ở một mức độ nào đó bằng cách sử dụng hệ thống kết hợp mô hình
Phân
tích dữ
liệu


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status