Báo cáo bài tập lớn môn Kĩ thuật phần mềm và ứng dụng - Đề tài: Quản lý cửa hàng bán sách

B. GIỚI THIỆU MICROSOFT ACCESS Microsoft Access là một Hệ Quản Trị Cơ Sở Dữ Liệu (QTCSDL) tương tác người sử dụng chạy trong môi trường Windows. Microsoft Access cho chúng ta một công cụ hiệu lực và đầy sức mạnh trong công tác tổ chức, tìm kiếm và biểu diễn thông tin. Microsoft Access cho ta các khả năng thao tác dữ liệu, khả năng liên kết và công cụ truy vấn mạnh mẽ giúp quá trình tìm kiếm thông tin nhanh. Người sử dụng có thể chỉ dùng một truy vấn để làm việc với các dạng cơ sở dữ liệu khác nhau. Ngoài ra, có thể thay đổi truy vấn bất kỳ lúc nào và xem nhiều cách hiển thị dữ liệu khác nhau chỉ cần động tác nhấp chuột. Microsoft Access và khả năng kết xuất dữ liệu cho phép người sử dụng thiết kế những biểu mẫu và báo cáo phức tạp đáp ứng đầy đủ các yêu cầu quản lý, có thể vận động dữ liệu và kết hợp các biểu mẫu va báo cáo trong một tài liệu và trình bày kết quả theo dạng thức chuyên nghiệp. Microsoft Access là một công cụ đầy năng lực để nâng cao hiệu suất công việc. Bằng cách dùng các Wizard của MS Access và các lệnh có sẵn (macro) ta có thể dễ dàng tự động hóa công việc mà không cần lập trình. Đối với những nhu cầu quản lý cao, Access đưa ra ngôn ngữ lập trình Access Basic (Visual Basic For application) một ngôn ngữ lập trình mạnh trên CSDL.

docx26 trang | Chia sẻ: thanhle95 | Lượt xem: 609 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Báo cáo bài tập lớn môn Kĩ thuật phần mềm và ứng dụng - Đề tài: Quản lý cửa hàng bán sách, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TRƯỜNG VIỆN ĐẠI HỌC MỞ HÀ NỘI KHOA ĐIỆN TỬ-VIỄN THÔNG ˜&™ BÁO CÁO BÀI TẬP LỚN Kĩ thuật phần mềm và ứng dụng Đề tài: Quản lý cửa hàng bán sách *** Giảng viên hướng dẫn: Thầy PHẠM TIẾN HUY Sinh viên thực hiện Trần Tiến Hùng MSSV: Lời Nói Đầu MỤC LỤC PHẦN 1: GIỚI THIỆU CÁC CÔNG CỤ SỬ DỤNG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU Cơ sở dữ liệu SQL SERVER Cơ sở dữ liệu MICROSOFT OFFICE ACCESS CÔNG CỤ LẬP TRÌNH VISUAL STUDIO C# +Giới thiệu về ngôn ngữ lập trình C# DEV EXPRESS +Giới thiệu về Window Form (Winform) PHẦN 2: KHẢO SÁT-PHÂN TÍCH HỆ THỐNG KHẢO SÁT NGƯỜI DÙNG. A.Các thông tin đầu vào. B. Các thông tin đầu ra. PHÂN TÍCH HỆ THỐNG, CÁC SƠ ĐỒ CHÍNH. Sơ đồ ngữ cảnh (DFD) Sơ đồ phân rã chức năng (BFD) CHUYỂN MÔ HÌNH E-R SANG MÔ HÌNH QUAN HỆ. MÔ HÌNH RELATIONSHIPS. +Microsoft Access 2007 PHẦN 3: THIẾT KẾ CƠ SỞ DỮ LIỆU Chuẩn hóa cơ sở dữ liệu Chuẩn hóa 1NF : Đảm bảo tính nguyên tố và duy nhất. Chuẩn hóa 2NF : Không có phụ thuộc hàm không đầy đủ vào khóa chính. Chuẩn hóa 3NF : Không có phụ thuộc hàm vào thuộc tính không khóa. Sơ đồ quan hệ dữ liệu PHẦN 4: THIẾT KẾ GIAO DIỆN HỆ THỐNG PHẦN 5: ƯU, NHƯỢC ĐIỂM VÀ HƯỚNG PHÁT TRIỂN CỦA HỆ THỐNG LỜI CÁM ƠN Lời Nói Đầu Ngày nay, CNTT đã và đang đóng vai trò quan trọng trong đời sống kinh tế, xã hội của nhiều quốc gia trên thế giới, là một phần không thể thiếu trong xã hội năng động, ngày càng hiện đại hoá. Vì vậy, việc tin học hoá vào một số lĩnh vực là hoàn toàn có thể và phù hợp với xu hướng hiện nay. Xuất phát từ nhu cầu thực tế đó, trong công việc mua và bán sách, việc quản lý sách nhập và bán là một việc không thể thiếu. Nhằm thay thế một số công việc mà trước đó phải thao tác bằng tay trên giấy tờ đạt hiệu quả không cao, mất nhiều thời gian. Vì vậy, chúng em đã thực hiện báo cáo với đề tài “Xây dựng hệ thống quản lý cửa hàng sách” Do trong khuôn khổ thời gian ngắn, trình độ chuyên môn, kinh nghiệm và kiến thức của bản thân còn hạn chế, nên chúng em rất mong được sự góp ý của cô và các bạn trong lớp, để đề tài nghiên cứu của chúng em ngày càng hoàn thiện hơn và được ứng dụng trong thực tế. PHẦN 1: GIỚI THIỆU CÁC CÔNG CỤ SỬ DỤNG HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU CƠ SỞ DỮ LIỆU SQL SERVER SQL Server là một hệ thống quản trị cơ sở dữ liệu quan hệ (Relational Database Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu giữa Client computer và SQL Server computer. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS. SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server có thể kết hợp "ăn ý" với các server khác như Microsoft InternetInformation Server (IIS), E-Commerce Server, Proxy Server.... MS SQL có thể làm những gì? : Thực thi các truy vấn đối với CSDL Lấy dữ liệu từ CSDL Chèn các bản ghi vào CSDL Cập nhật các bản ghi trong CSDL Xoá các bản ghi từ CSDL Tạo ra CSDL mới Tạo ra các bảng mới trong CSDL Tạo ra các thủ tục lưu trữ (stored procedures) trong 1 CSDL Tạo được các View (bảng hiển thị hình thức) Thiết lập quyền truy cập vào các bảng, các thủ tục và các view. GIỚI THIỆU MICROSOFT ACCESS Microsoft Access là một Hệ Quản Trị Cơ Sở Dữ Liệu (QTCSDL) tương tác người sử dụng chạy trong môi trường Windows. Microsoft Access cho chúng ta một công cụ hiệu lực và đầy sức mạnh trong công tác tổ chức, tìm kiếm và biểu diễn thông tin. Microsoft Access cho ta các khả năng thao tác dữ liệu, khả năng liên kết và công cụ truy vấn mạnh mẽ giúp quá trình tìm kiếm thông tin nhanh. Người sử dụng có thể chỉ dùng một truy vấn để làm việc với các dạng cơ sở dữ liệu khác nhau. Ngoài ra, có thể thay đổi truy vấn bất kỳ lúc nào và xem nhiều cách hiển thị dữ liệu khác nhau chỉ cần động tác nhấp chuột. Microsoft Access và khả năng kết xuất dữ liệu cho phép người sử dụng thiết kế những biểu mẫu và báo cáo phức tạp đáp ứng đầy đủ các yêu cầu quản lý, có thể vận động dữ liệu và kết hợp các biểu mẫu va báo cáo trong một tài liệu và trình bày kết quả theo dạng thức chuyên nghiệp. Microsoft Access là một công cụ đầy năng lực để nâng cao hiệu suất công việc. Bằng cách dùng các Wizard của MS Access và các lệnh có sẵn (macro) ta có thể dễ dàng tự động hóa công việc mà không cần lập trình. Đối với những nhu cầu quản lý cao, Access đưa ra ngôn ngữ lập trình Access Basic (Visual Basic For application) một ngôn ngữ lập trình mạnh trên CSDL. 1.2 CÔNG CỤ LẬP TRÌNH VISUAL STUDIO C# Giới thiệu về ngôn ngữ lập trình C# Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng. Phần cốt lõi hay còn gọi là trái tim của bất cứ ngôn ngữ lập trình hướng đối tượng là sự hỗ trợ của nó cho việc định nghĩa và làm việc với những lớp. Những lớp thì định nghĩa những kiểu dữ liệu mới, cho phép người phát triển mở rộng ngôn ngữ để tạo mô hình tốt hơn để giải quyết vấn đề. Ngôn ngữ C# chứa những từ khóa cho việc khai báo những kiểu lớp đối tượng mới và những phương thức hay thuộc tính của lớp, và cho việc thực thi đóng gói, kế thừa, và đa hình, ba thuộc tính cơ bản của bất cứ ngôn ngữ lập trình hướng đối tượng. Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp điều được tìm thấy trong phần khai báo của nó. Định nghĩa một lớp trong ngôn ngữ C# không đoi hỏi phải chia ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++. Hơn thế nữa, ngôn ngữ C# hỗ trợ kiểu XML, cho phép chèn các tag XML để phát sinh tự động các document cho lớp. 1.1 DEV EXPRESS DevExpress là một Framework được viết cho nền tảng .NET Framework. Nó cung cấp các control và công nghệ để phục vụ cho quá trình phát triển phần mềm. Thành phần của DevExpress gồm: WinForms Controls: Cung cấp các control cho WinForms. ASP.NET Controls: Cung cấp các control cho WebForms. WPF Controls: Cung cấp các control cho WPF. Silverlight Controls: Cung cấp các control cho Silverlight. XtraCharts: Control cung cấp các loại biểu đồ. XtraReports: Cung cấp các control tạo báo cáo. XPO: Cung cấp môi trường làm việc với database. XAF: Một công nghệ mới giúp việc phát triển phần mềm một cách nhanh chóng. Trải qua hàng loạt phiên bản, DevExpress đã từng bước được nâng cấp, hoàn thiện và thêm mới rất nhiều chức năng. Với phiên bản DevExpress 11.2 hiện tại, bạn đã được cung cấp những công cụ, môi trường tuyệt vời để biến những ý tưởng của bạn thành hiện thực một cách nhanh chóng, dễ dàng. Trong loạt bài về DevExpress tôi chủ yếu tập trung vào XPO và XAF, đây được xem là xương sống của DevExpress. Giới thiệu về Window Form Windows Forms hay viết tắt là WinForm là thuật ngữ chỉ việc phát triển các ứng dụng giao diện người dùng bằng cách sử dụng các thành phần xây dựng sẵn (buil in component) còn được gọi là các điều khiển. Hay nói cách khác Windows Forms là một API (Application Programming Interface) cho phép tạo GUI (Graphical User Interface) cho các ứng dụng chạy trên desktop. Các điều khiển này dùng để hiển thị thông tin cho người dùng cũng như cho người dùng nhập thông tin vào Windows Forms ra đời đáp ứng nhu cầu tạo ứng dụng nhanh (Rapid Application Development). - Windows Form cho phép người phát triển tạo ra các giao diện người dùng sử dụng các thành phần khác nhau (components). Các thành phần này còn được gọi là các điều khiển (controls). Những điều khiển này cho phép chúng ta thu thập thông tin từ người dùng cũng như trình bày các thông tin để người dùng có thể xem. Một Form được chạy trên một máy tính cục bộ (local machine) và một form có thể truy cập đến các tài nguyên khác nhau như bộ nhớ, các thư mục, các tệp tin, các cơ sở dữ liệu Do đó Windows Form phù hợp cho các ứng dụng desktop như các ứng dụng quản lý thông tin, các ứng dụng tương tác trực tiếp với người dùng. Các Form có thể chứa các điều khiển (các thành phần) khác nhau. Xử lý dữ liệu được nhập bởi người dùng. Hiển thị (trình bày) các thông tin tới người dùng. Kết nối đến các nguồn CSDL khác nhau trên các máy tính cục bộ hoặc máy tính khác Vai trò của Windows Form: PHẦN 2: KHẢO SÁT-PHÂN TÍCH HỆ THỐNG Khảo sát người dùng. Các thông tin đầu vào Người quản trị nhập thông tin về sách, loại sách mà doanh nghiệp đang bán, các tin tức cập nhật thường xuyên. Còn khách hàng cung cấp thông tin cá nhân, gửi bài viết góp ý cho doanh nghiệp giúp doanh nghiệp ngày càng hoàn thiện hơn. Cụ thể gồm các thông tin sau: Các thông tin giới thiệu về hệ thống. Các thông tin về loại sách và từng cuốn sách. Các thông tin về khách hàng Các thông tin về đơn hàng Các bài viết, tin tức, thông tin khuyến mại Các bài góp ý, ý kiến, hỏi đáp của khách hàng; bài trả lời,.. Các thông tin đầu ra Đưa ra các thông tin cần thiết cho khách hàng ở mọi khía cạnh mà khách hàng quan tâm đến sản phẩm của công ty, đồng thời kiểm soát được hoạt động của công ty. Đưa ra sản phẩm, tin tức khách hàng yêu cầu tìm kiếm, đưa ra sản phẩm mới nhất. Cụ thể bao gồm: Cho phép tra cứu, xem thông tin về từng cuốn sách. Cho phép khách hàng lựa chọn hàng, lựa chọn hình thức thanh toán và thanh toán qua đơn hàng. Đưa ra các hóa đơn thanh toán, khi giao hàng cho khách hàng. Cho phép tra cứu, tìm kiếm các thông tin về thành viên. Cho phép khách hàng đóng góp ý kiến, bình luận, đánh giá chất lượng của sản phẩm Cho phép ban quản trị cập nhật các tin tức, bài viết, thông tin khuyến mại, trả lời các ý kiến hỏi đáp của khách hàng Cho phép ban quản trị cập nhật thông tin loại sách và mỗi cuốn sách. Cho phép ban quản trị theo dõi thành viên, Phân tích hệ thống A. SƠ ĐỒ NGỮ CẢNH (DFD) Sơ đồ ngữ cánh Sơ đồ DFD cho quá trình nhập sách C. SƠ ĐỒ PHÂN CẤP CHỨC NĂNG Chuyển mô hình E-R sang mô hình quan hệ: -NhaXuatBan ( MaNXB, TenNXB, DiaChiNXB, DienThoai ) -PhieuNhap ( SoPN, NgayNhap, #MaNXB ) -ChiTietPhieuNhap ( #MaSach, #SoPN, SoLuongNhap, GiaNhap ) -Sach ( MaSach, TenSach, SoLuongTon, #MaTL, #MaTG, #MaNXB ) -ChiTietHoaDon ( #MaSach, #SoHD, SoLuongBan, GiaBan ) -HoaDon ( SoHD, NgayBan ) -TacGia ( MaTG, TenTG, LienLac ) -TheLoai ( MaTL, TenTL ) Mô hình Relationships: Sử dụng Microsoft Acsess 2007 PHẦN 3: THIẾT KẾ CƠ SỞ DỮ LIỆU 3.1 Chuẩn hóa cơ sở dữ liệu I. Chuẩn hóa CSDL là gì? Chuẩn hóa là quá trình phân rã các mối quan hệ có lỗi không bình thường, để thu được các quan hệ có cấu trúc tốt và nhỏ hơn. II. Các dạng chuẩn hóa. Cho bảng dữ liệu chưa chuẩn hóa: 1. Dạng chuẩn 1NF. ĐN: Dạng chuẩn loại 1 là quan hệ không chứa các thuộc tính đa trị. Áp dụng cho bài toán trên, ta có dạng chuẩn 1NF sau: 2. Dạng chuẩn 2NF. ĐN: Dạng chuẩn 2NF là quan hệ đã chuẩn 1NF và các thuộc tính không phải là khóa phụ thuộc hoàn toàn vào khóa chính. Phân tích ví dụ trên ta có các phụ thuộc hàm: Mã SV -> (họ tên, quê quán) Mã trường -> (tên trường, mã khoa, tên khoa) (Mã số SV, môn học) -> điểm Cách làm: Loại bỏ các thuộc tính không khoá phụ thuộc vào một bộ phận khoá chính và tách thành ra một bảng riêng, khoá chính của bảng là bộ phận khoá mà chúng phụ thuộc vào. Các thuộc tính còn lại lập thành một quan hệ, khóa chính của nó(Mã số SV) là khóa chính ban đầu(Mã số SV). Dạng chuẩn 3NF. ĐN: Dạng chuẩn 3NF là quan hệ ở dạng chuẩn 2NF và không tồn tại sự phụ thuộc hàm bắc cầu. Từ ví dụ trên ta có: Sinh viên, Trường học: (Mã số SV, họ tên SV, quê quán, mã trường, tên trường, mã khoa, tên khoa) Với phụ thuộc hàm: Mã SV, mã trường -> (họ tên, quê quán, tên trường, tên khoa, mã khoa) Mã trường -> (tên trường, mã khoa, tên khoa) Nên các thuộc tính tên trường, mã khoa, tên khoa là phụ thuộc bắc cầu vào khóa chính Mã SV. Cách làm: Loại bỏ các thuộc tính phụ thuộc bắc cầu(tên trường, mã khoa, tên khoa) ra khỏi quan hệ và tách chúng thành một quan hệ riêng có khoá chính(mã trường) là thuộc tính bắc cầu. Các thuộc tính còn lại lập thành một quan hệ có khóa chính là quan hệ ban đầu. Nếu chỉ xét đến quan hệ sinh viên, trường học, bỏ qua môn học và điểm, ta có bảng chuẩn hóa 3NF: PHẦN 4: THIẾT KẾ GIAO DIỆN HỆ THỐNG Danh mục chính Danh mục khách hàng Danh mục nơi sản xuất Danh mục nhà cung cấp Danh mục thống kê sách Danh mục thể loại PHẦN 5: ƯU, NHƯỢC ĐIỂM VÀ HƯỚNG PHÁT TRIỂN CỦA HỆ THỐNG ƯU VÀ NHƯỢC ĐIỂM CỦA HỆ THỐNG Ưu điểm: Hệ thống được xây dựng gọn nhẹ, dễ sử dụng. Hệ thống ràng buộc dữ liệu được đảm bảo. Giao diện thân thiện với người sử dụng. Nhược điểm: Cách tổ chức dữ liệu và kỹ thuật lập trình chưa tốt. Bắt lỗi hạn chế, chưa hoàn thiện. Các chức năng của chương trình chưa linh động, có thể gây khó khăn khi sử dụng. Chưa bảo mật được dữ liệu. HƯỚNG PHÁT TRIỂN: - Khả năng xử lý được tất cả các sự kiện, các lỗi ngoài ý muốn tốt hơn của chương trình và dùng thao tác lên chương trình. Hoàn thiện tốt hơn về lập trình C# và ràng buộc dữ liệu. Nâng cao tính linh động của chương trình. Thêm các chức năng mới để đáp ứng điều kiện của người dùng. Nâng cao kỷ thuật lập trình và hoàn chỉnh các thành phần còn thiếu theo hướng chuyên nghiệp, chạy thử, khả năng đưa vào áp dụng thức tế khả quan. Bảo mật dữ liệu tốt hơn. Lời cám ơn Nhóm em xin chân thành gửi lời cám ơn trường Đại Học Bách Khoa Hà Nội đã tạo điều kiện cho chúng em có cơ hội thực hành, tiếp xúc để chúng em có thể tránh được những vướng mắc và bỡ ngỡ trong môi trường học tập-thực hành sắp tới. Nhóm em xin chân thành cảm ơn Thầy VŨ SONG TÙNG đã tận tình hướng dẫn , giải đáp thắc mắc và chỉ bảo nhóm em trong suốt thời gian nhóm em hoàn thành bài tập lớn . Mặc dù đã cố gắng hoàn thành đề tài tốt nhất nhưng do thời gian và kiến thức còn có hạn nên em sẽ không thể tránh khỏi những thiếu sót nhất định, rất mong nhận được sự cảm thông, chia sẻ và tận tình đóng góp chỉ bảo của quý thầy cô cũng như các bạn.
Tài liệu liên quan