XÂY DỰNG PHẦN MỀM QUẢN LÝ QUÁN CÀ PHÊ Cần visual studio 2012 + sql server 2012 + DevExpress Universal Complete + DevComponents DotNetBar cài đặt hết 4 phần mềm trên, bên trong file đề tài.rar có cả csdl để thêm vào sql
Trang 1LỜI MỞ ĐẦU -0O0 -
Trong giai đoạn đất nước đang quá trình hội nhập, cùng với sự pháttriển mạnh mẽ của công nghệ thông tin, tin học hoá là điều mà mỗi công ty,
cơ quan, xí nghiệp và các tổ chức cần phải nghỉ đến Tin học được ứng dụngtrong mọi lĩnh vực cuộc sống, nó đem lại nhiều lợi ích to lớn, đã dần thay thếnhững công việc thủ công và mất nhiều thời gian
Hiện nay rất nhiều lĩnh vực đã và đang thực hiện việc tin học hoá, tronglĩnh vực sản xuất và cả trong những lĩnh vực xã hội Nhằm đáp ứng cho nhucầu phát triển của xã hội nói chung và thực hiện tin học hoá trong công tácquản lý các quán Cà Phê nói riêng, em đã nghiên cứu và phát triển phần mềm
“Quản Lý Quán Cà Phê” nhằm giúp cho việc quản lý, kiểm tra, kiểm soát dễdàng và thuận tiện trong quán Cà Phê Nhiều phần mềm phục vụ cho yêu cầunày đã ra đời và đã thật sự thay thế hiệu quả cho những cách quản lý thủcông Với phần mềm “Quản Lý Quán Cà Phê” hy vọng sẽ giúp ích đượcnhiều cho công việc quản lý khách sử dụng dịch vụ và thống kê doanh thutrong quán Cà Phê một cách nhanh chóng, với những công cụ xử lý chuyênnghiệp sẽ giúp cho việc thao tác nhanh chóng, tiện lợi Màn hình với giaodiện đơn giản tạo sự thoải mái cho người sử dụng khi tiếp xúc với máy tính.Với việc áp dụng phần mềm Quản Lý Quán Cà Phê sẽ giảm bớt thời gian tìmkiếm, kiểm soát số bàn, thực đơn và doanh thu Phục vụ một cách nhanhchóng và hiệu quả hơn, khối lượng lưu trữ nhiều và ít tốn kém không gian lưutrữ
Bằng nhiều tư liệu khác nhau, được sưu tầm từ nhiều nguồn khác nhau
Em viết chương trình “Quản Lý Quán Cà Phê” này được phát triển dựa theo
Trang 2những yêu cầu thực tế và nhằm giúp cho việc quản lý dễ dàng Em hy vọngchương trình “Quản Lý Quán Cà Phê”, giống như tên gọi của nó, sẽ trở thànhmột cẩm nang quản lý trong công việc Dù đã rất cố gắng, em cũng khó có thểtránh khỏi những thiếu sót nhất định Rất mong nhận được sự đóng góp ý kiếncủa các Thầy Cô, để chương trình ngày càng hoàn thiện hơn
Xin Chân Thành Cảm Ơn!
Trang 3MỤC LỤC
LỜI MỞ ĐẦU 1
CHƯƠNG 1: GIỚI THIỆU 5
1.1 Giới thiệu về Microsoft Visual Studio 5
1.1.1 Microsoft Visual Studio: 5
1.1.2 Giao diện làm việc 7
1.2 Giới thiệu về Windows Presentation Foundation 10
1.2.1 Windows Presentation Foundation: 10
1.2.2 Thành phần 11
1.3 Cơ bản về MVVM (Model – View – ViewModel) pattern 13
1.3.1 Data Binding 14
1.3.2 MVVM được hiểu như thế nào? 14
1.4 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server: 16
1.4.1 Giới Thiệu SQL Server 16
1.4.2 Cài Ðặt SQL Server (Installation) 18
1.4.3 Lịch sử ra đời SQL Server và các phiên bản 19
1.4.4 Các thành cơ bản trong SQL Server 20
CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 24
2.1 Đặc tả vấn đề: 24
2.1 1 Mô tả bài toán 24
2.1.2 Phần mềm gồm các chức năng: 24
2.1.3 Yêu cầu hệ thống 25
2.1.4 Sơ đồ use case: 26
2.1.5 Danh sách chi tiết các use case: 26
2.1.6 Sơ đồ use case: 28
2.2 Đặc tả use case: 33
2.2.1 Đăng nhập: 33
Trang 42.2.2 Quản lý quán: 33
2.2.3 Báo cáo thống kê: 35
2.2.4 Quản lý bàn: 35
2.2.5 Quản lý Món: 36
2.2.6 Xem giảm giá: 37
2.3 Sơ đồ tuần tự 38
2.3.1 Đăng nhập 38
2.3.2 Quản lý quán 39
2.4.Mô hình giải pháp: 40
2.4.1.Mô hình dữ liệu quan hệ SQL: 40
CHƯƠNG 3: THIẾT KẾ 44
3.0 From đăng nhập: 44
3.1.From thay đổi thông tin đăng nhập: 45
3.2.From menu chính cuả chương trình: 46
3.3 From quản lý món: 47
3.4 From danh sách bàn: 48
3.5 From danh sách nhân viên: 49
3.6 From thêm món: 50
3.7.From trả món: 51
3.8.From thanh toán: 52
3.9 From Report 53
TÀI LIỆU THAM KHẢO 54
Trang 5CHƯƠNG 1: GIỚI THIỆU
1.1 Giới thiệu về Microsoft Visual Studio
1.1.1 Microsoft Visual Studio:
Là một môi trường phát triển tích hợp (IDE) từ Microsoft Nó được sửdụng để phát triển chương trình máy tính cho Microsoft Windows, cũng nhưcác trang web, các ứng dụng web và các dịch vụ web Visual Studio sử dụngnền tảng phát triển phần mềm của Microsoft như Windows API, WindowsForms, Windows Presentation Foundation, Windows Store và MicrosoftSilverlight Nó có thể sản xuất cả hai ngôn ngữ máy và mã số quản lý
Visual Studio bao gồm một trình soạn thảo mã hỗ trợ IntelliSense cũngnhư cải tiến mã nguồn Trình gỡ lỗi tích hợp hoạt động cả về trình gỡ lỗi mức
độ mã nguồn và gỡ lỗi mức độ máy Công cụ tích hợp khác bao gồm một mẫuthiết kế các hình thức xây dựng giao diện ứng dụng, thiết kế web, thiết
kế lớp và thiết kế giản đồ cơ sở dữ liệu Nó chấp nhận các plug-in nâng caocác chức năng ở hầu hết các cấp bao gồm thêm hỗ trợ cho các hệ thống quản
lý phiên bản (như Subversion) và bổ sung thêm bộ công cụ mới như biên tập
và thiết kế trực quan cho các miền ngôn ngữ cụ thể hoặc bộ công cụ dành chocác khía cạnh khác trong quy trình phát triển phần mềm
Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phéptrình biên tập mã và gỡ lỗi để hỗ trợ (mức độ khác nhau) hầu như mọi ngônngữ lập trình Các ngôn ngữ tích hợp gồm có C,C++ và C++/CLI (thông quaVisual C++), VB.NET (thông qua Visual Basic.NET), C# (thông qua VisualC#) và F# (như của Visual Studio 2010) Hỗ trợ cho các ngôn ngữ khácnhư J++/J#, Python và Ruby thông qua dịch vụ cài đặt riêng rẽ Nó cũng hỗtrợ XML/XSLT, HTML/XHTML, JavaScript và CSS
Trang 6Microsoft cung cấp phiên bản "Express" (đối với phiên bản VisualStudio 2013 trở về trước) và "Community" (đối với bản Visual Studio 2015trở về sau) là phiên bản miễn phí của Visual Studio
Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phép trình
biên tập mã và gỡ lỗi để hỗ trợ (mức độ khác nhau) hầu như mọi ngôn ngữ lậptrình Các ngôn ngữ tích hợp gồm có C,[1] C++ và C++/CLI (thông qua VisualC++), VB.NET (thông qua Visual Basic.NET), C thăng (thông qua Visual C#)
và F thăng (như của Visual Studio 2010) Hỗ trợ cho các ngôn ngữ khác nhưJ++/J thăng, Python và Ruby thông qua dịch vụ cài đặt riêng rẽ Nó cũng hỗ
Trang 71.1.2 Giao diện làm việc
Màu cam:(Solution Explorer)là cửa sổ hiển thị Solution, các Project và
các tập tin trong project
Trang 8Màu đỏ:đây là khu vực để lập trình viên viết mã nguồn cho chương
trình Cửa sổ lập trình cho một tập tin trong Project sẽ hiển thị khi người dùngnháy đúp chuột lên tập tin đó trong cửa sổ Solution Explorer
Màu vàng:(Output)đây là cửa sổ hiển thị các thông tin, trạng thái của
Solution khi build hoặc của chương trình khi debug
Màu đen(Toolbar) với các công cụ hỗ trợ người dùng trong việc viết
mã và debug (các công cụ trên thanh có thể thay đổi khi bắt đầu debug)
Màu xanh lá cây(Thanh menu) với đầy đủ các danh mục chứa các
chức năng của VS Khi người dùng cài thêm những trình cắm hỗ trợ VS (ví
dụ như Visual Assist), thanh menu này sẽ cập nhật thêm menu của các trìnhcắm (nếu có)
Trang 9Một số cửa sổ bị ẩn bạn có thể tìm ở trong :View -> Other Windows, các thanh công cụ được đặt trong View -> Toolbars.
Trang 101.2 Giới thiệu về Windows Presentation Foundation
1.2.1 Windows Presentation Foundation:
(viết tắt là WPF) do Microsoft phát triển, là công nghệ kế tiếp WindowsForm dùng để xây dựng các ứng dụng dành cho máy trạm chạy hệ điều hànhWindows WPF được giới thiệu từ năm 2006 trong.NET Framework 3.0 (dướitên gọi Avalon), công nghệ này nhận được sự quan tâm của cộng đồng lậptrình viên bởi nhiều điểm đổi mới trong lập trình ứng dụng và khả năng xâydựng giao diện thân thiện, sinh động Tại Việt Nam, WPF thực sự chưa pháttriển so với nhánh khác là Silverlight (WPF/E)
WPF sử dụng 2 thư viện lõi là PresentationCore vàPresentationFramework để xử lý các điều hướng, ràng buộc dữ liệu, sự kiện
và quản lý giao diện WPF dựa trên nền tảng đồ họa là DirectX, xử lý vector,
hỗ trợ gam màu rộng, cho phép tùy biến giá trị opacity hay tạo gradient mộtcách dễ dàng, cho phép tạo ảnh không gian 2 chiều hoặc 3 chiều Thư việnthực thi của WPF tự động tính toán và tận dụng tài nguyên của hệ thống mộtcách tối ưu để giảm tải cho CPU
Ngoài ra, WPF hỗ trợ tốt hơn Winform trong việc xử lý hình ảnh, âmthanh, video, quản lý phông chữ, quản lý hiển thị và chỉnh sửa văn bản Cáccontrol trong WPF có thể được lồng ghép linh động để tạo ra giao diện dođược viết bằng XAML Một ứng dụng WPF có thể được xây dựng để chạyđộc lập dưới dạng mở rộng EXE hoặc đóng gói với phần mở rộng là XBAP
để có thể tích hợp lên website
Thư viện thực thi WPF được tích hợp trong tất cả các hệ điều hành kể
từ Windows Vista và Windows Server 2008
Trang 11Cho đến thời điểm hiện tại, WPF có 5 phiên bản: WPF 3.0 (11-2006),WPF 3.5 (11-2007), WPF 3.5sp1 (8-2008), WPF 4 (4-2010), và WPF 4.5 (8-2012).
1.2.2 Thành phần
➢ Direct3D
Đồ họa và giao diện dựa trên Direct3D cho phép hiển thị các xử lýđiểm - ảnh phức tạp hơn GDI's Công nghệ này cho phép chia sẻ tác vụ xử lýcho GPU và giảm tải CPU
➢ Data Binding
Là điểm nổi bật của WPF trong việc liên kết dữ liệu của ứng dụng Tùytheo mục đích của chương trình, lập trình viên có thể xử lý liên kết theo baloại:
one time: Chỉ tải dữ liệu 1 lần khi ứng dụng được thực thi
one way: Ứng dụng chỉ có nhiệm vụ hiển thị dữ liệu, mọi cập nhật từphía người dùng sẽ không được lưu trữ
two way: Dữ liệu có thể được lấy và cập nhật từ phía người dùng
one way to source: Trái ngược với OneTime, dữ liệu sẽ chỉ được nhận
từ Interface
➢ Đa phương tiện
WPF cho phép xây dựng chương trình với sự hỗ trợ vector, xử lý hìnhảnh, âm thanh, video, đồ họa 2D, 3D
Đồ họa 2D: brushes, pens, geometries, và transforms
Trang 12Hình ảnh: hỗ trợ các định dạng: BMP, JPEG, PNG, TIFF, WindowsMedia Photo, GIF và ICON.
Video: hỗ trợ WMV, MPEG và AVI Xử lý tốt hơn nếu Windows MediaPlayer đã được cài và tích hợp codec
➢ Templates
Dữ liệu trong WPF có thể được định nghĩa để hiển thị theo yêu cầuthông qua các thuộc tính (properties) và việc định nghĩa template, style chocác control
WPF hỗ trợ hiệu ứng dựa trên thời gian thực thi của chương trình, thay
vì frame-based Các hiệu ứng đơn giản có thể xử lý bằng việc quản lý thờigian chạy, còn các xử lý phức tạp hơn cần đến sự hỗ trợ của lớp Animation
Tất cả các thuộc tính của đối tượng trong WPF đều có thể được xử lý
để trở nên sinh động hơn, miễn là nó thuộc loại Dependency Property
Các lớp quản lý hiệu ứng tùy theo loại của thuộc tính được xử lý Ví
dụ, việc thay đổi màu sắc của control sẽ do lớp ColorAnimation hay thay đổichiều dài hoặc chiều rộng do lớp DoubleAnimation đảm nhiệm
Trang 13Các hiệu ứng có thể được gom nhóm vào Storyboards và gán cho đốitượng và lớp này điều khiển việc bắt đầu hoặc dừng các hiệu ứng thông quacác phương thức tương ứng (Start, Stop, Pause ) Hiệu ứng cho ứng dụng cóthể được viết trên giao diện bằng XAML hoặc định nghĩa bằng C#.
1.3 Cơ bản về MVVM (Model – View – ViewModel) pattern
Kể từ khi Microsoft giới thiệu hai nền tảng phát triển ứng dụng mới làWPF và Silverlight, đã có nhiều thay đổi trong việc xử lý sự kiện và binding
dữ liệu, giữa các tầng của ứng dụng với nhau Qua đó, hầu hết các công việccủa tầng kết hợp với lớp presentation Điều này làm nảy sinh ra nhu cầu phải
có một mô hình phát triển ứng dụng mới phù hợp hơn Và do đó, Model –View – ViewModel (MVVM) pattern ra đời và ngày càng trở nên phổ biến
Trang 14Đa số các ứng dụng thuộc bất kì nền tảng nào cũng có thể chia thành haiphần: giao diện (View) và dữ liệu (Model) Vì việc tách riêng các phần này,cần phải có một phần trung gian nào đó nối kết hai phần này lại, và chúng tạonên một mô hình (pattern).
Quen thuộc và phổ biến nhất với chúng ta là mô hình MVC (Model –View – Controller) Có thể nói MVC là một mô hình tiêu chuẩn bởi sự logic
và hợp lý của nó Điều này làm cho việc xuất hiện một mô hình phát triển ứngdụng mới có thể khiến bạn bỡ ngỡ
Trước khi tìm hiểu về mô hình MVVM này, ta cùng điểm qua một sốtính năng mới trong xu hướng phát triển ứng dụng hiện nay
1.3.1 Data Binding
Binding Data trong MVVM là điều không bắt buộc, một số implementchỉ đơn giản làm ViewModel như một lớp trung gian giữa Model-View, lớpnày giữ nhiệm vụ format data hoặc mapping trạng thái của View Tuy nhiêncách này theo mình khiến cho ViewModel trở thành Presenter và đưa kiến trúcnày về MVP
1.3.2 MVVM được hiểu như thế nào?
View: Tương tự như trong mô hình MVC, View là phần giao diện của
ứng dụng để hiển thị dữ liệu và nhận tương tác của người dùng Một điểmkhác biệt so với các ứng dụng truyền thống là View trong mô hình này tích cựchơn Nó có khả năng thực hiện các hành vi và phản hồi lại người dùng thôngqua tính năng binding, command
Trang 15Model: Cũng tương tự như trong mô hình MVC Model là các đối
tượng giúp truy xuất và thao tác trên dữ liệu thực sự
ViewModel: Lớp trung gian giữa View và Model ViewModel có thể
được xem là thành phần thay thế cho Controller trong mô hình MVC Nó chứacác mã lệnh cần thiết để thực hiện data binding, command
Một điểm cần lưu ý là trong mô hình MVVM, các tầng bên dưới sẽkhông biết được các thông tin gì về tầng bên trên nó Như hình minh họa dướiđây:
MVVM có thể nói là mô hình kiến trúc được rất nhiều các cư dân trongcộng đồng ưa chuộng Điểm tinh hoa của kiến trúc này là ở ViewModel, mặc
Trang 16dù rất giống với Presenter trong MVP tuy nhiên có 2 điều làm nên tên tuổi củakiến trúc này đó là:
ViewModel không hề biết gì về View, một ViewModel có thể được sửdụng cho nhiều View (one-to-many) ViewModel sử dụng Observer designpattern để liên lạc với View (thường được gọi là binding data, có thể là 1 chiềuhoặc 2 chiều tùy nhu cầu ứng dụng) Chính đặc điểm này MVVM thườngđược phối hợp với các thư viện hỗ trợ Reactive Programming hay Event/DataStream, đây là triết lý lập trình hiện đại và hiệu quả phát triển rất mạnh trongnhững năm gần đây
1.4 Tổng quan về hệ quản trị cơ sở dữ liệu SQL Server:
1.4.1 Giới Thiệu SQL Server
SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational
Database Management System (RDBMS) ) sử dụng câu lệnh SQL SQL) để trao đổi dữ liệu giữa máy Client và máy cài SQL Server Một
(Transact-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
Trang 17SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệurấ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ácserver khác như Microsoft Internet Information Server (IIS), E-CommerceServer, Proxy Server…
Một vài ấn bản SQL Server:
Enterprise : chứa tất cả cá đặc điểm nổi bật của SQL Server, bao gồm
nhân bộ máy cơ sở dữ liệu và các dịch vụ đi kèm cùng với các công cụcho tạo và quản lý phân cụm SQL Server Nó có thể quản lý các CSDLlớn tới 524 petabytes và đánh địa chỉ 12 terabytes bộ nhớ và hỗ trợ tới
640 bộ vi xử lý(các core của cpu)
Standard : Rất thích hợp cho các công ty vừa và nhỏ vì giá thành rẻ
hơn nhiều so với Enterprise Edition, nhưng lại bị giới hạn một số chứcnăng cao cấp (advanced features) khác, edition này có thể chạy tốt trên
hệ thống lên đến 4 CPU và 2 GB RAM
Developer : Có đầy đủ các tính năng của Enterprise Edition nhưng
được chế tạo đặc biệt như giới hạn số lượng người kết nối vào Servercùng một lúc… Ðây là phiên bản sử dụng cho phát triển và kiểm tra ứngdụng Phiên bản này phù hợp cho các cá nhân, tổ chức xây dựng và kiểmtra ứng dụng
Workgroup: ấn bản SQL Server Workgroup bao gồm chức năng lõi cơ
sở dữ liệu nhưng không có các dịch vụ đi kèm Chú ý phiên bản nàykhông còn tồn tại ở SQL Server 2012
Express : SQL Server Express dễ sử dụng và quản trị cơ sở dữ liệu đơn
giản Được tích hợp với Microsoft Visual Studio, nên dễ dàng để pháttriển các ứng dụng dữ liệu, an toàn trong lưu trữ, và nhanh chóng triển
Trang 18khai SQL Server Express là phiên bản miễn phí, không giới hạn về số
cơ ở dữ liệu hoặc người sử dụng, nhưng nó chỉ dùng cho 1 bộ vi xử lývới 1 GB bộ nhớ và 10 GB file cơ sở dữ liệu SQL Server Express là lựachọn tốt cho những người dùng chỉ cần một phiên bản SQL Server 2005nhỏ gọn, dùng trên máy chủ có cấu hình thấp, những nhà phát triển ứngdụng không chuyên hay những người yêu thích xây dựng các ứng dụngnhỏ
1.4.2 Cài Ðặt SQL Server (Installation)
Các bạn cần có phiên bản Developer Edition và ít nhất là 64 MB RAM,
500 MB hard disk để có thể cài SQL Server Bạn có thể cài trên WindowsServer hay Windows 10, Windows 8, Windows 7, Windows XP …
Các bước cài đặt không quá khó khăn với các phiên bản SQL Server khácnhau Khi cài đặt bạn cần lưu ý các điểm sau:
Ở màn hình thứ hai bạn chọn Install Database Server Sau khi install
xong SQL Server bạn có thể install thêm Analysis Service nếu bạn thích
Ở màn hình Installation Definition bạn chọn Server and Client Tools.
Sau đó bạn nên chọn kiểu Custom và chọn tất cả các bộ phận của SQL Server Ngoài ra nên chọn các giá trị mặc định (default)
Ở màn hình Authentication Mode nhớ chọn Mixed Mode Lưu ý vì
SQL Server có thể dùng chung chế độ bảo mật (security) với hệ điều hànhWindows và cũng có thể dùng chế độ bảo mật riêng của nó TrongProduction Server người ta thường dùng Windows Authetication vì độ an toàncao hơn và dễ dàng cho người quản lý mạng và cả cho người sử dụng
Nghĩa là một khi bạn được chấp nhận (authenticated) kết nối vàodomain thì bạn có quyền truy cập dữ liệu (access data) trong SQL Server Tuynhiên ta nên chọn Mixed Mode để dễ dàng cho việc học tập
Trang 19Sau khi install bạn sẽ thấy một icon nằm ở góc phải bên dưới màn hình,đây chính là Service Manager Bạn có thể Start, Stop các SQL Server services
dễ dàng bằng cách double-click vào icon này
1.4.3 Lịch sử ra đời SQL Server và các phiên bản
Phiên bản đầu tiên của Microsoft SQL Server ra đời đầu tiên vào năm
1989 cho các hệ điều hành chạy 16 bít với SQL Server phiên bản 1.0 và tiếptục phát triển cho tới ngày nay
SQL Server của Microsoft được thị trường chấp nhận rộng rãi kể từversion 6.5 Sau đó Microsoft đã cải tiến và hầu như viết lại một engine mớicho SQL Server 7.0 Cho nên có thể nói từ version 6.5 lên version 7.0 là một bước nhảy vọt Có một số đặc tính của SQL Server 7.0 không tương thích vớiversion 6.5 Trong khi đó từ Version 7.0 lên version 8.0 (SQL Server 2000) thìnhững cải tiến chủ yếu là mở rộng các tính năng về web và làm cho SQLServer 2000 đáng tin cậy hơn
Một điểm đặc biệt đáng lưu ý ở phiên bản 2000 là Multiple-Instance.
Tức là bạn có thể cài dặt phiên bản 2000 chung với các phiên bản trước màkhông cần phải gỡ chúng Nghĩa là bạn có thể chạy song song version 6.5hoặc 7.0 với phiên bản 2000 trên cùng một máy (điều này không thể xảy ra
với các phiên bản trước đây) Khi đó phiên bản cũ trên máy bạn là Default Instance còn phiên bản 2000 mới vừa cài sẽ là Named Instance.
Từ tháng 11 năm 2011, các phiên bản sau được Microsoft hỗ trợ:
SQL Server 2012
SQL Server 2014
SQL Server 2016
Trang 201.4.4 Các thành cơ bản trong SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như DatabaseEngine, Reporting Services, Notification Services, Integration Services, FullText Search Service… Các thành phần này khi phối hợp với nhau tạo thànhmột giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách
dễ dàng
Các thành phần chính SQL Server
Database Engine
Trang 21Ðây là một engine có khả năng chứa data ở các quy mô khác nhau dướidạng table và support tất cả các kiểu kết nối (data connection) thông dụng củaMicrosoft như
ActiveX Data Objects (ADO), OLE DB, and Open DatabaseConnectivity (ODBC)
Ngoài ra nó còn có khả năng tự điều chỉnh (tune up) ví dụ như sử dụngthêm các tài nguyên (resource) của máy khi cần và trả lại tài nguyên cho hệđiều hành khi một user log off
Replication
– Cơ chế tạo bản sao (Replica):
Giả sử bạn có một database dùng để chứa dữ liệu được các ứng dụngthường xuyên cập nhật Một ngày đẹp trời bạn muốn có một cái databasegiống y hệt như thế trên một server khác để chạy báo cáo (report database)(cách làm này thường dùng để tránh ảnh hưởng đến performance của serverchính) Vấn đề là report server của bạn cũng cần phải được cập nhật thườngxuyên để đảm bảo tính chính xác của các báo cáo Bạn không thể dùng cơ chếback up and restore trong trường hợp này Thế thì bạn phải làm sao? Lúc đó
cơ chế replication của SQL Server sẽ được sử dụng để bảo đảm cho dữ liệu ở
2 database được đồng bộ (synchronized) Replication sẽ được bàn kỹ trongbài 12
Integration Services (DTS)
– Integration Services là một tập hợp các công cụ đồ họa và các đốitượng lập trình cho việc di chuyển, sao chép và chuyển đổi dữ liệu
Trang 22Nếu bạn làm việc trong một công ty lớn trong đó data được chứa trongnhiều nơi khác nhau và ở các dạng khác nhau cụ thể như chứa trong Oracle,DB2 (của IBM), SQL Server, Microsoft Access….Bạn chắc chắn sẽ có nhucầu di chuyển data giữa các server này (migrate hay transfer) và không chỉ dichuyển bạn còn muốn định dạng (format) nó trước khi lưu vào database khác,khi đó bạn sẽ thấy DTS giúp bạn giải quyết công việc trên dễ dàng.
Analysis Services
– Một dịch vụ phân tích dữ liệu rất hay của Microsoft
Dữ liệu (Data) chứa trong database sẽ chẳng có ý nghĩa gì nhiều nếunhư bạn không thể lấy được những thông tin (Information) bổ ích từ đó Do
đó Microsoft cung cấp cho bạn một công cụ rất mạnh giúp cho việc phân tích
dữ liệu trở nên dễ dàng và hiệu quả bằng cách dùng khái niệm hình khốinhiều chiều (multi-dimension cubes) và kỹ thuật “khai phá dữ liệu” (datamining)
Notification Services
Dịch vụ thông báo Notification Services là nền tảng cho sự phát triển
và triển khai các ứng dụng tạo và gửi thông báo Notification Services có thểgửi thông báo theo địch thời đến hàng ngàn người đăng ký sử dụng nhiều loạithiết bị khác nhau
Reporting Services
Reporting Services bao gồm các thành phần server và client cho việctạo, quản lý và triển khai các báo cáo Reporting Services cũng là nền tảngcho việc phát triển và xây dựng các ứng dụng báo cáo
Full Text Search Service
Trang 23Dịch vụ SQL Server Full Text Search là một dịch vụ đặc biệt cho đánhchỉ mục và truy vấn cho dữ liệu văn bản không cấu trúc được lưu trữ trongcác CSDL SQL Server Đánh chỉ mục với Full Text Search có thể dduwowcjtạo trên bất kỳ cột dựa trên dữ liệu văn bản Nó sẽ rất hiệu quả cho việc tìmcác sử dụng toán tử LIKE trong SQL với trường hợp tìm văn bản.
Service Broker
Được sử dụng bên trong mỗi Instance, là môi trường lập trình cho việccác ứng dụng nhảy qua các Instance Service Broker giao tiếp qua giao thứcTCP/IP và cho phép các component khác nhau có thể được đồng bộ cùngnhau theo hướng trao đổi các message Service Broker chạy như một phần của
bộ máy cơ sở dữ liệu, cung cấp một nền tảng truyền message tin cậy và theohàng đợi cho các ứng dụng SQL Server
Trang 24CHƯƠNG 2: PHÂN TÍCH HỆ THỐNG 2.1 Đặc tả vấn đề:
Công nghệ thông tin là một trong những ngành khoa học ngày càngphát triển mạnh mẽ và ứng dụng rộng rãi trong mọi lĩnh vực Bên cạnh pháttriển về phần cứng thì phần mềm cũng được phát triển khá là vượt bậc Đặcbiệt, một trong những công tác được ấp dụng vào công nghệ thông tin đó làcông tác quản lý Việc áp dụng công nghệ thông tin vào quản lý, sản xuất kinhdoanh là một xu hướng tất yếu
Ứng dụng công nghệ thông tin vào quản lý sẽ giúp người dùng giảmthiểu đi việc quản lý thủ công làm mất nhiều thời gian, tiết kiệm được chi phí
và nguồn nhân lực, từ đó sẽ nâng cao hiệu quả công việc và chất lượng sảnphẩm cũng được nâng cao
Nắm bắt được xu thế đó, em đã nghiên cứu và xây dựng chương trìnhquản lý quán Cà Phê để hỗ trợ quản lý quán Cà Phê một cách hiện đại vàchuyên nghiệp
2.1.1 Mô tả bài toán
Quán Cà Phê Đức Anh cần xây dựng hệ thống: Tất cả hoạt động chínhcủa quán được chủ quán thực hiện và quản lý trực tiếp, nhân viên chỉ thựchiện được các công gọi món, chuyển bàn, thanh toán và in hóa đơn Hoạtđộng quản lý được thực hiện bởi các hoạt động chính như sau: Quản lý nhậpbàn và tính tiền, quản lý số lượng bàn, quản lý doanh thu hằng tháng, quản lýxuất thống kê báo cáo
2.1.2 Phần mềm gồm các chức năng:
Trang 25Quản lý thông tin như: Tên bàn, hóa đơn, món ăn, danh mục món ăn.
➢ Quản lý danh sách bàn:
Quản lý các thông tin như: mã bàn, khu vực, tình trạng bàn,
➢ Quản lý danh sách món:
Quản lý các thông tin như: mã món, danh mục, tình trạng bàn,
➢ Quản lý nhân viên:
Quản lý các thông tin như: tài khoản, mật khẩu, tên hiển thị, loại tàikhoản
➢ Thống kê báo báo:
Thống kê số hóa đơn bán ra, số món đã bán, tổng tiền, tiền đã giảm,tiền thực thu trong ngày, tháng, khoảng thời gian
2.1.3 Yêu cầu hệ thống
Giúp nhân viên có thể dễ dàng chọn bàn phù hợp với khách đang ngồi
và thêm món, ngoài ra còn giúp nhân viên có thể quản lý tốt bàn nào còntrống và đã có người ngồi để có thể hướng dẫn khách hàng tìm được chỗ ngồithuận tiện nhất Dễ dàng tính toán và xuất các hóa đơn cho khách hàng khi
Trang 26tính tiền Để dễ dàng quản lý món và chọn món cho khách hàng một cáchnhanh chóng và chính xác
Hỗ trợ cho việc cập nhật thông tin bàn, các món và tình trạng bàn mộtcách nhanh nhất và chính xác nhất Giúp cho việc tính toán tiền bàn một cáchnhanh chóng Hệ thống với giao diện gần gũi giúp cho nhân viên có thể sửdụng thành thạo và tối ưu được các chức năng có trong phần mềm
2.1.4 Sơ đồ use case:
1 Admin Người có quyền cao nhất trong phần mềm
2 Nhân viên Nhân viên hạn chế 1 số chức năng
3 Thống Kê Xem và xuất thống kê doanh thu
5 Quản lý khu vực Quản lý danh sách khu vực
6 Quản lý danh mục Quản lý danh sách danh mục
9 Quản lý giảm giá Quản lý giảm giá cho các món
Trang 2710 Quản lý tài khoản Quản lý các tài khoản sử dụng phần mềm
Bảng 2 Danh sách chi tiết các use case
Trang 282.1.6 Sơ đồ use case: