Tìm hiểu và giới thiệu cơ sở dữ liệu phân tán, áp dụng cơ sở dữ liệu phân tán vào một hệ thống thực như quản lý tiền gửi tiết kiệm ngân hàng để làm nổi bật ưu và nhược điểm của cơ sở dữ liệu phân tán trên cơ sở sử dụng ngôn ngữ CSharp, môi trường WinForm
Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Mục lục _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 1 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Lời nói đầu Những năm của thập kỷ 70, máy tính đã có đủ khả năng xây dựng hệ thống thông tin và hệ cơ sở dữ liệu. Một mặt đã hình thành và phát triển các mô hình lý thuyết cho hệ cơ sở dữ liệu và mặt khác những nguồn phát triển hệ thống ứng dụng ngày càng có nhiều kinh nghiệp. Hệ thống thông tin hình thành trên cơ sở kết nối các máy tính khách nhau. Những năm gần đây, hệ cơ sở dữ liệu phân tán được phát triển dựa trên cơ sở dữ liệu và mạng máy tính. Cơ sở dữ liệu phân tán gồm nhiều cơ sở dữ liệu tích hợp lại với nhau thông qua mạng máy tính để trao đổi dữ liệu, thông tin… Cơ sở dữ liệu được tổ chức và lưu trữ ở những vị trí khác nhau trong mạng máy tính và chương trình ứng dụng là việc trên cơ sở truy cập dữ liệu ở những điểm khác nhau đó. Vấn đề hoàn toàn mới là xây dựng và cài đặt một cơ sở dữ liệu phân tán. Cần giải quyết vấn đề xây dựng và cài đặt cơ sở dữ liệu phân tán cụ thể nhue vấn đề giải quyết thiết kế phân tán, thiết kế cơ sở dữ liệu… Ngày nay, với sự phát triển chóng mặt của các công ty, tập đoàn lớn. Việc ứng dụng công nghệ thông tin trong việc quản lý hoạt động của các công ty, tập đoàn này là một điều không hề đơn giản. Kéo theo đó là sự tốn kém về nhân lực và kinh tế, đòi hỏi phải có một phương thức quản lý có khả năng đảm bảo hệ thống quản lý hoạt động ổn định, tiết kiệm nhân lực và kinh tế. Với các ưu điểm hiện có, cơ sở dữ liệu phân tán đang dần phát huy được khả năng vượt trội hơn so vớ cơ sở dữ liệu tập chung. Với các đặc trưng của nghiệp vụ ngân hàng phù hợp với việc cài đặt cơ sở dữ liệu phân tán(Chi nhánh đặt tại nhiều nơi, khách hàng có thể gửi một nơi và rút nhiều nơi ….) Em quyết định chọn phân hệ tiền gửi tiết kiệm ngân hàng để cài đặt cơ sở dữ liệu phân tán. Cụ thể hơn, em chọn đề tài “Quản lý tiền gửi tiết _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 2 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB kiệm “Rút gốc linh hoạt” tại ngân hàng SHB, áp dụng có sở dữ liệu phân tán” để làm đề tài tốt nghiệp của mình. Nhân đây, em xin gửi lời cảm ơn đến: • Các thầy, các cô trong Khoa Công nghệ Tin học – Viên Đại học Mở Hà Nội đã tận tình giảng dậy, truyền đạt cho em những kiến thức bổ ích suốt 4 năm học vừa qua. Đặc biệt em xin gửi lời cảm ơn đến thầy TS. Trương Tiến Tùng người đã tận tình trực tiếp hướng dẩn em hoàn thành đồ án này. Thầy Lê Hữu Dũng, người bước đầu định hướng và chỉ bảo cho em rất nhiều về cơ sở dữ liệu phân tán. • Các anh, các chị trong phòng Thương mại điện tử - Trung tâm Công nghệ thông tin – ngân hàng SHB đã chỉ bảo cho em rất nhiều về nghiệp vụ ngân hàng và kỹ thuật lập trình. Đăc biệt em xin gửi lời cảm ơn đến anh Nguyễn Chiến Thắng trưởng phòng Thương mại điện tử người đã trực tiếp hướng dẫn em hoàn thành việc thực tập tại ngân hàng SHB. _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 3 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Danh mục ký hiệu chữ viết tắt _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 4 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Danh mục bảng biểu _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 5 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Danh sách hình vẽ _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 6 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Chương 1 – mở đầu 1. Giới thiệu đề tài 1.1. Giới thiệu Ngày nay, với sự phát triển không ngừng của các công ty tập đoàn lớn, hoạt động không chỉ ở một vùng địa lý mà được phát triển trên một vùng địa lý rộng. các ứng dụng cũng phải yêu cầu có sự tương thích nhất định, trong bối cảnh này csdl tập chung xuất hiện một số hạn chế nhất định. Vì vậy em chọn hướng tìm hiểu CSDL phân tán làm đề tài tốt nghiệp của mình. Lĩnh vực hoạt động của ngân hàng có một số yếu tố phân tán, để giới thiệu cho việc tìm hiểu của mình, em chọn ứng dụng quản lý tiền gửi tiết kiệm ngân hàng, cụ thể hơn. “Chương trình quản lý tiền gửi tiết kiệm rút gốc linh hoạt tại ngân hàng SHB” 1.2. Yêu cầu chung + Tìm hiểu, nêu lên được các vấn đề cơ bản của CSDL phân tán. + Ứng dụng thực hiện được các yêu cầu về phân tán. + Ứng dụng đảm bảo các yêu cầu cơ bản về nghiệp vụ ngân hàng. 2. Mục đích của đề tài Tìm hiểu và giới thiệu cơ sở dữ liệu phân tán, áp dụng cơ sở dữ liệu phân tán vào một hệ thống thực như quản lý tiền gửi tiết kiệm ngân hàng để làm nổi bật ưu và nhược điểm của cơ sở dữ liệu phân tán. 3. Phạn vi chức năng của đề tài • Đề tài là sự mô phỏng cơ sở dữ liệu phân tán vào một hệ thống thực là quản lý tiền gửi tiết kiệm ngân hàng. • Việc áp dụng cơ sở dữ liệu phân tán cho các hệ thống lớn • Trong phân hệ quản lý tiền gửi tiết kiệm ngân hàng có nhiều loại hình gửi tiết kiệm khác nhau. Trong phạm vi đề tài này em chỉ đề cập đến một loại hình trong đó là tiết kiệm “Rút gốc linh hoạt”, tuy hẹp nhưng đề tài vẫn phải đảm bảo một số nghiệp vụ cơ bản của ngân hàng. _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 7 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Chương 2 – cơ sở lý thuyết 1. Ngôn ngữ CSharp C# là một trình biên dịch hướng .NET, nghĩa là tất cả các mã của C# luôn luôn chạy trên môi trường .NET Framework. Điều này dẫn đến: Cấu trúc và các lập luận C# được phản ánh các phương pháp luận của .NET ngầm bên dưới. Trong nhiều trường hợp, các đặc trưng của C# được quyết định dựa vào các đặc trưng của .NET, hoặc thư viện lớp cơ sở của .NET C# là một ngôn ngữ lập trình mới và được biết đến: Được thiết kế riêng để dùng cho Microsoft’s.NET Framework (Một nền khá mạnh cho sự phát triển, triển khai, thực hiện và phân phối các ứng dụng) Nó là ngôn ngữ hoàn toàn hướng đối tượng, được thiết kế dựa trên kinh nghiệm của các ngôn ngữ hướng đối tượng khác. Tuy nhiên C# là một ngôn ngữ độc lập. Nó được thiết kế để có thể sinh ra mã đích trong môi trường .NET, nó không phải một phần của .NET bởi vậy có một vài đặc trưng được hỗ trợ bởi .NET nhưng C# không hỗ trợ. Mặc dù vậy vai trò của C# đối với .NET không thể kể đến đó là: C# không những hỗ trợ hoàn toàn cho lập trình hướng đối tượng như C++ mà còn bổ sung thêm hoặc thay thế một số đặc điểm để tính chất hướng đối tượng trong C# trở nên trong sáng hơn. C# yêu cầu phải có .NET runtime, trong một vài năm tới hầu hết các máy khách đặc biệt là các máy để bàn sẽ được cài .NET. Sẽ có nhiều ứng dụng C# được cài đặt trong môi trường thương mại. _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 8 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Khi kết nối ADO.NET, C# có khả năng truy cập các cơ sở dữ liệu tổng quá và nhanh chóng như cơ sở dữ liệu SQL Server và Oracle. Các DataSer trả lại có thể dễ dàng thao tác thông qua các đối tượng của ADO.NET và tự động trả về kiểu XML để truyền thông trên một mạng Intranet văn phòng. Một Database schema được tạo ra cho một đề án, C# đủ thông minh để thực thi các lớp đối tượng truy xuất cơ sở dữ liệu để có thể chèn, cập nhật, xoá truy cập đến một bản dữ liệu khác. C# và .NET sẽ ảnh hưởng đến cách thức đóng gói vật lý cho việc dùng lại các lớp. Trong quá khứ, rất nhiều nhà phát triển có nhồi nhét các lớp vào một thành phần vật lý đơn bởi vì việc làm này giúp cho việc phát triển dễ dàng hơn, nếu xảy ra một lỗi nhận dạng phiên bản, ta sẽ biết được nó xảy ra ở đau. Bởi vì việc phát triển các thành phần .NET thương mại đơn giản là thao tác copy các file vào một số thư mục, bây giờ các nhà phát triển đóng gói các lớp của họ vào nhiều gói logic, các thành phần riêng biệt mà không phải lo lắng về việc xung đột “DLL Hell”. Đặc biệt các trang ASP.NET được viết bằng C# tạo thành các giao diện người dùng thông minh hơn. Bởi vì các trang ASP.NET được biên dịch nên chúng sẽ chạy nhanh hơn. Cũng bởi chúng có thể bẫy lỗi trong VS.NET IDE nên chúng mạnh mẽ hơn. Do chúng hỗ trợ đầy đủ các đặc tính của ngôn ngữ như kết nối sớm, thừa kế, nên các trang ASP.NET được viết trong C# gọn gàng và dễ bảo trì. Từ các đặc tính của C# và .NET ta nhận thấy rằng C# và .NET sẽ giải quyết được một vài đặc tính: Xung đột giữa các Component hiếm khi xảy ra và việc phát triển trở nên dễ dàng hơn, do các phiên bản khác nhau của cùng một thành phần có thể chạy song song nhau trên cùng một máy mà không gây ra xung đột Mã ASP sẽ không còn hỗn độn nữa Được thừa kế rất nhiều chức năng tuyệt vời của các .NET base class _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 9 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Đối với các ứng dụng yêu cầu một giao diện Windows Forms, C# sẽ là cách dễ nhất để tạo các ứng dụng loại này. 2. Môi trường WinForm 2.1 Giới thiệu Windows Forms, hay còn gọi là WinForms, là tên dùng để chỉ giao diện lập trình ứng dụng (API) giao diện người dùng đồ họa (GUI) được xem như là một phần của Microsoft’s .NET Framework, cung cấp các cách truy nhập vào các thành phần giao diện cơ bản của Microsoft Windows bằng việc sử dụng các Windows API có sẵn. WinForms là các khối cơ bản để tạo nên giao diện người dùng. Nó như là một nơi chứa các control khác mà cho phép thể hiện một ứng dụng. WinForms là giao diện được sử dụng phổ biến nhất cho việc phát triển ứng dụng, cho dù các loại ứng dụng khác như ứng dụng console hay services cũng được sử dụng. WinForms cung cấp cách tốt nhất có thể để tương tác với người dùng và cho phép người dùng nhập trong form bằng bàn phím hoặc chuột. 2.2 Các nguyên tắc thiết kế giao diện người dùng Cấu trúc tốt nhất cho việc tương tác với bất kì ứng dụng nào là giao diện người dùng. Do đó, thiết kế giao diện hiệu quả và dễ sử dụng thì rất quan trọng. Khi thiết kế, vấn đề cân nhắc đầu tiên là ai sẽ sử dụng ứng dụng. Việc hiểu rõ người sử dụng sẽ giúp việc thiết kế giao diện mà người dùng dễ dàng học và sử dụng. Thiết kế tồi có thể làm cho người dùng không thèm sử dụng ứng dụng của bạn nữa. Forms là thành phần cơ bản của các ứng dụng Microsoft Windows. Chúng cung cấp nền tảng cho các cấp độ tương tác với người dùng. Các loại controls, menus, khác nhau có thể thêm vào forms đề cung cấp các chức năng nào đó. Hơn nữa, giao diện này có thể thu hút các người dùng. 2.3 Những điều cần biết về việc thiết kế giao diện _______________________________________________________________________ _ Hoàng Công Cương – Lớp 0007B4 10 . – Lớp 0007B4 2 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB kiệm Rút gốc linh hoạt tại ngân hàng SHB, áp dụng có sở dữ liệu. Hoàng Công Cương – Lớp 0007B4 17 Ứng dụng quản lý tiền gửi tiết kiệm Rút gốc linh hoạt tại ngân hàng SHB Quản lý dữ liệu hoạt động kinh doanh Trong thế giới