Trong thời buổi Kinh tế thị trường, công việc kinh doanh cần phải được chuyên nghiệp hóa thì mới đủ sức cạnh tranh với các đối thủ. Việc sử dụng Phần mềm Quản lý cho công việc kinh doanh nhà hàng, cà phê, karaoke, bia, shop, tạp hóa, siêu thị đà một trong những yếu tố góp phần nên sự thành công của người chủ. Kinh doanh cà phê còn là một trong những loại hình kinh doanh đầy thử thách. Nó đòi hỏi sự tận tâm và khả năng nắm bắt chi tiết. Vì vậy việc ứng dụng phần mềm trong quản lý cà phê là một nhu cầu tất yếu để nâng cao chất lượng phục vụ và hiệu quả quản lý. Kiều kinh doanh truyền thống không sử dụng phần mềm, quản lý hiệu quả thấp, dễ gây thất thoát và gặp một số nhược điểm như quản lý không chặt chẽ, thất thoát tiền của, hóa đơn thiếu tính thẩm mỹ và dễ gây nhầm lẫn, khó hiểu. Muốn biết doanh thu cuối ngày, cuối tháng, cuối năm thì phải tự động cộng lại bằng tay ... dẫn đến tốn thời gian, công sức và thiếu tính chính xác. Kiểu kinh doanh hiện đại có sử dụng phần mềm quản lý chạy trên máy vi tính sẽ khắc phục được các nhược điểm của kiều kinh doanh truyền thống nêu trên quản lý bán hàng chặt chẽ từ việc bán hàng, quản lý bàn, quản lý món ăn, quản lý nhân viên..., hạn chế thất thoát tiên của hóa đơn tính tiền chính xác, thẩm mỹ cao, báo cáo tổng doanh thu vào cuối ngày cuối tuần, cuối tháng, cuối năm hay bất cứ thời điểm nào muốn lấy báo cáo. Cách sử dụng phần mềm quản lý trên máy vi tính cũng rất đơn giản, trực quan, dễ sử dụng. Chỉ cần biết qua máy tính là có thể sử dụng được phần mềm và ứng dụng vào quản lý. Thực tế, Café vẫn đang còn sử dụng kiểu kinh doanh truyền thống nêu trên nên vấn đề thay đổi sang kiểu kinh doanh hiện đại là nhu cầu cấp thiết. Đó cũng là yêu cầu thiết thực cho tất cả các quán cà phê đang hoạt động hiện nay. Chính vì những lý do kể trên, tôi thực hiện đề tài “Xây dựng phần mềm quản lý bán hàng quán Cafe” nhằm giúp đối tượng thuận tiện hơn trong việc quản lý hàng hóa, giảm thiểu chi phí trong các hoạt động kinh doanh bán hàng. Mục tiêu của đề tài là đánh giá được thực trạng hoạt động của quán Café, đi vào phân tích, đánh giá mô hình hoạt động, đưa ra được ưu và nhược điểm từ đó tiến hành phân tích thiết kế hệ thống mới ứng dụng công nghệ thông tin. Giải quyết được các nghiệp vụ như: thanh toán, hỗ trợ nhiều báo cáo theo các tiêu chí khác nhau.
Trang 1TRƯỜNG ĐẠI HỌC SAO ĐỎ KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO ĐỒ ÁN KIẾN THỨC NGÀNH
ĐỀ TÀI: XÂY DỰNG PHÀN MỀM QUẢN LÝ QUÁN CAFE
Sinh viên thực hiện: Phạm Thị Ngọc Ánh
Lớp: DK9 - CNTT
Hải Dương - 2021
Trang 2MỤC LỤC
Trang 3LỜI NÓI ĐẦU
Trong thời buổi Kinh tế thị trường, công việc kinh doanh cần phải được chuyên nghiệphóa thì mới đủ sức cạnh tranh với các đối thủ Việc sử dụng Phần mềm Quản lý cho côngviệc kinh doanh nhà hàng, cà phê, karaoke, bi-a, shop, tạp hóa, siêu thị đà một trongnhững yếu tố góp phần nên sự thành công của người chủ
Kinh doanh cà phê còn là một trong những loại hình kinh doanh đầy thử thách Nó đòihỏi sự tận tâm và khả năng nắm bắt chi tiết Vì vậy việc ứng dụng phần mềm trong quản
lý cà phê là một nhu cầu tất yếu để nâng cao chất lượng phục vụ và hiệu quả quản lý
Kiều kinh doanh truyền thống không sử dụng phần mềm, quản lý hiệu quả thấp, dễ gâythất thoát và gặp một số nhược điểm như quản lý không chặt chẽ, thất thoát tiền của, hóađơn thiếu tính thẩm mỹ và dễ gây nhầm lẫn, khó hiểu Muốn biết doanh thu cuối ngày,cuối tháng, cuối năm thì phải tự động cộng lại bằng tay dẫn đến tốn thời gian, công sức
và thiếu tính chính xác
Kiểu kinh doanh hiện đại có sử dụng phần mềm quản lý chạy trên máy vi tính sẽ khắcphục được các nhược điểm của kiều kinh doanh truyền thống nêu trên quản lý bán hàngchặt chẽ từ việc bán hàng, quản lý bàn, quản lý món ăn, quản lý nhân viên , hạn chế thấtthoát tiên của hóa đơn tính tiền chính xác, thẩm mỹ cao, báo cáo tổng doanh thu vào cuốingày cuối tuần, cuối tháng, cuối năm hay bất cứ thời điểm nào muốn lấy báo cáo
Cách sử dụng phần mềm quản lý trên máy vi tính cũng rất đơn giản, trực quan, dễ sửdụng Chỉ cần biết qua máy tính là có thể sử dụng được phần mềm và ứng dụng vào quảnlý
Thực tế, Café vẫn đang còn sử dụng kiểu kinh doanh truyền thống nêu trên nên vấn đềthay đổi sang kiểu kinh doanh hiện đại là nhu cầu cấp thiết
Đó cũng là yêu cầu thiết thực cho tất cả các quán cà phê đang hoạt động hiện nay
Trang 4Chính vì những lý do kể trên, tôi thực hiện đề tài “Xây dựng phần mềm quản lý bán hàngquán Cafe” nhằm giúp đối tượng thuận tiện hơn trong việc quản lý hàng hóa, giảm thiểuchi phí trong các hoạt động kinh doanh bán hàng.
Mục tiêu của đề tài là đánh giá được thực trạng hoạt động của quán Café, đi vào phântích, đánh giá mô hình hoạt động, đưa ra được ưu và nhược điểm từ đó tiến hành phântích thiết kế hệ thống mới ứng dụng công nghệ thông tin
Giải quyết được các nghiệp vụ như: thanh toán, hỗ trợ nhiều báo cáo theo các tiêu chíkhác nhau
Trang 5MỞ ĐẦU
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àng phát triểnmạnh mẽ và ứng dụng rộng rãi trong mọi lĩnh vực Bên cạnh phát triển về phần cứngthì phần mềm cũng được phát triển khá là vượt bậc Đặc biệt, một trong những côngtá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ôngnghệ thông tin vào quản lý, sản xuất kinh doanh 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ảm thiểu đi việcquả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ản phẩ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ình quả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 Mô tả bài toán
Quán Cà Phê 1985 cần xây dựng hệ thống: Tất cả hoạt động chính của quán đượcchủ quán thực hiện và quản lý trực tiếp, nhân viên chỉ thực hiệ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ập bàn và tính tiền, quản lý số lượng bàn, quản lý doanhthu hằng tháng, quản lý xuất thống kê báo cáo
Trang 6• 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, tong tiền, tiền đã giảm,tiền thực thu trong ngày, tháng, khoảng thời gian
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êmmón, ngoài ra còn giúp nhân viên có thể quản lý tốt bàn nào còn trống và đã có ngườingồi để có thể hướng dẫn khách hàng tìm được chỗ ngồi thuận tiện nhất Dễ dàng tínhtoán và xuất các hóa đơn cho khách hàng khi tính tiền Để dễ dàng quản lý món và chọnmón cho khách hàng một cách nhanh chóng và chính xác
Trang 7Hỗ 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ột cách nhanhnhất và chính xác nhất.
Giúp cho việc tính toán tiền bàn một cách nhanh 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
4 Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu: kỹ thuật phân tích hướng đối tượng, kỹ thuật lập trìnhhướng đối tượng, kỹ thuật lập trình 3 lớp
Phạm vi nghiên cứu: chương trình quản lí quán café
5 Ý nghĩa khoa học và ý nghĩa thực tiễn đề tài
Ý nghĩa khoa học: đề xuất hệ thống quản lý siêu thị thay thế cho phương pháp hiệntại
Ý nghĩa thực tiễn: đề xuất chương trình quản lý siêu thị đơn giản hiệuc
Trang 8CHƯƠNG 1: CỞ SỞ LÝ THUYẾT
1.1 Giới thiệu về ngôn ngữ lập trình C#
1.1.1.Giới thiệu chung về ngôn ngữ lập trình C#
C# (đọc là "C thăng" hay "C sharp" ("xi-sáp")) là một ngôn ngữ lập trình hướng đốitượng được phát triển bởi Microsoft, là phần khởi đầu cho kế hoạch NET của họ Têncủa ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo ECMA là C#, chỉ baogồm dấu số thường Microsoft phát triển C# dựa trên C++ và Java C# được miêu tả làngôn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java
C# được thiết kế chủ yếu bởi Anders Hejlsberg kiến trúc sư phần mềm nổi tiếng vớicác sản phẩm Turbo Pascal, Delphi, J++, WFC Phiên bản gần đây nhất là 8.0, đượcphát hành vào năm 2019 cùng với Visual Studio 2019 phiên bản 16.3
Mục tiêu của việc phát triển C#:
+ Ngôn ngữ được dự định là một ngôn ngữ lập trình đơn giản, hiện đại, hướngđến nhiều mục đích sử dụng, và là một ngôn ngữ lập trình hướng đối tượng
+ Ngôn ngữ và việc triển khai đáp ứng các nguyên tắc của ngành kỹ thuật phầnmềm như kiểm tra chặt chẽ kiểu dữ liệu, kiểm tra giới hạn mảng, phát hiện các trườnghợp sử dụng các biến chưa có dữ liệu, và tự động thu gom rác Tính mạnh mẽ, sự bền
bỉ, và năng suất của việc lập trình là rất quan trọng đối với ngôn ngữ này
+ Ngôn ngữ sẽ được sử dụng để phát triển các thành phần của phần mềm theohướng thích hợp cho việc triển khai trong các môi trường phân tán
+ Khả năng di chuyển (portability) là rất quan trọng, đặc biệt là đối với nhữnglập trình viên đã quen với C và C++
+ Hỗ trợ quốc tế hóa (i18n)
+ Ngôn ngữ sẽ được thiết kế để phù hợp với việc viết các ứng dụng cho cả hai
hệ thống: hosted và nhúng, từ các phần mềm quy mô lớn, đến các phần mềm chỉ cócác chức năng đơn giản
Trang 9+ Mặc dù các ứng dụng C# có tính kinh tế đối với các yêu cầu về bộ nhớ vàchế độ xử lý, ngôn ngữ này không cạnh tranh trực tiếp về hiệu năng và kích thước đốivới ngôn ngữ C hoặc assembly.
So sánh với C và C++, ngôn ngữ này bị giới hạn và được nâng cao ở một vàiđặc điểm nào đó, nhưng không bao gồm các giới hạn sau đây:
+ Các con trỏ chỉ có thể được sử dụng trong chế độ không an toàn Hầu hết cácđối tượng được tham chiếu an toàn, và các phép tính đều được kiểm tra tràn bộ đệm.Các con trỏ chỉ được sử dụng để gọi các loại kiểu giá trị; còn những đối tượng thuộc
bộ gom rác (garbage-collector) thì chỉ được gọi bằng cách tham chiếu
+ Các đối tượng không thể được giải phóng tường minh
+ Chỉ có đơn kế thừa, nhưng có thể cài đặt nhiều interface trừu tượng (abstractinterfaces) Chức năng này làm đơn giản hóa sự thực thi của thời gian thực thi
+ C# thì an-toàn-kiểu (typesafe) hơn C++
+ Cú pháp khai báo mảng khác nhau("int[] a = new int[5]" thay vì "int a[5]").+ Kiểu thứ tự được thay thế bằng tên miền không gian (namespace)
+ C# không có tiêu bản
+ Có thêm Properties, các phương pháp có thể gọi các Properties để truy cập
dữ liệu
Trang 10+ Có reflection.
1.1.2 Lập trình hướng đối tượng
a Giới thiệu về lập trình hướng đối tượng:
Lập trình hướng đối tượng (tiếng Anh: Object-oriented programming, viết tắt:OOP) là một mẫu hình lập trình dựa trên khái niệm "công nghệ đối tượng", mà trong
đó, đối tượng chứa đựng các dữ liệu, trên các trường, thường được gọi là các thuộctính; và mã nguồn, được tổ chức thành các phương thức Phương thức giúp cho đốitượng có thể truy xuất và hiệu chỉnh các trường dữ liệu của đối tượng khác, mà đốitượng hiện tại có tương tác (đối tượng được hỗ trợ các phương thức "this" hoặc
"self") Trong lập trình hướng đối tượng, chương trình máy tính được thiết kế bằngcách tách nó ra khỏi phạm vi các đối tượng tương tác với nhau Ngôn ngữ lập trìnhhướng đối tượng khá đa dạng, phần lớn là các ngôn ngữ lập trình theo lớp, nghĩa làcác đối tượng trong các ngôn ngữ này được xem như thực thể của một lớp, được dùng
để định nghĩa một kiểu dữ liệu
OOP được xem là giúp tăng năng suất, đơn giản hóa độ phức tạp khi bảo trìcũng như mở rộng phần mềm bằng cách cho phép lập trình viên tập trung vào các đốitượng phần mềm ở bậc cao hơn Ngoài ra, nhiều người còn cho rằng OOP dễ tiếp thuhơn cho những người mới học về lập trình hơn là các phương pháp trước đó Mộtcách giản lược, đây là khái niệm và là một nỗ lực nhằm giảm nhẹ các thao tác viết mãcho người lập trình, cho phép họ tạo ra các ứng dụng mà các yếu tố bên ngoài có thểtương tác với các chương trình đó giống như là tương tác với các đối tượng vật lý
Những đối tượng trong một ngôn ngữ OOP là các kết hợp giữa mã và dữ liệu
mà chúng được nhìn nhận như là một đơn vị duy nhất Mỗi đối tượng có một tên riêngbiệt và tất cả các tham chiếu đến đối tượng đó được tiến hành qua tên của nó Nhưvậy, mỗi đối tượng có khả năng nhận vào các thông báo, xử lý dữ liệu (bên trong củanó), và gửi ra hay trả lời đến các đối tượng khác hay đến môi trường
Trang 11Đa phần các ngôn ngữ lập trình thông dụng nhất hiện nay (như C++, Delphi,Java, Python etc.) là các ngôn ngữ lập trình đa mẫu hình và đều hỗ trợ lập trình hướngđối tượng ở nhiều mức độ khác nhau, thường được kết hợp với lập trình mệnh lệnh,lập trình thủ tục Các ngôn ngữ lập trình hướng đối tượng đáng chú ý gồm có Java,C++, C#, Python, PHP, Ruby, Perl, Object Pascal, Objective-C, Dart, Swift, Scala,Common Lisp, và Smalltalk.
b Các tính chất cơ bản của lập trình hướng đối tượng:
Đối tượng (object): Các dữ liệu và chỉ thị được kết hợp vào một đơn vị đầy đủtạo nên một đối tượng Đơn vị này tương đương với một chương trình con và vì thếcác đối tượng sẽ được chia thành hai bộ phận chính: phần các phương thức (method)
và phần các thuộc tính (attribute / Properties) Trong thực tế, các phương thức của đốitượng là các hàm và các thuộc tính của nó là các biến, các tham số hay hằng nội tạicủa một đối tượng (hay nói cách khác tập hợp các dữ liệu nội tại tạo thành thuộc tínhcủa đối tượng) Các phương thức là phương tiện để sử dụng một đối tượng trong khicác thuộc tính sẽ mô tả đối tượng có những tính chất gì
Các phương thức và các thuộc tính thường gắn chặt với thực tế các đặc tính và
sử dụng của một đối tượng
Trong thực tế, các đối tượng thường được trừu tượng hóa qua việc định nghĩacủa các lớp (class)
Tập hợp các giá trị hiện có của các thuộc tính tạo nên trạng thái của một đốitượng
Mỗi phương thức hay mỗi dữ liệu nội tại cùng với các tính chất được địnhnghĩa (bởi người lập trình) được xem là một đặc tính riêng của đối tượng Nếu không
có gì lầm lẫn thì tập hợp các đặc tính này gọi chung là đặc tính của đối tượng
- Lập trình hướng đối tượng có 4 tính chất chính sau:
Trang 12+ Tính trừu tượng (abstraction): Đây là khả năng của chương trình bỏ qua haykhông chú ý đến một số khía cạnh của thông tin mà nó đang trực tiếp làm việc lên,nghĩa là nó có khả năng tập trung vào những cốt lõi cần thiết Mỗi đối tượng phục vụnhư là một "động tử" có thể hoàn tất các công việc một cách nội bộ, báo cáo, thay đổitrạng thái của nó và liên lạc với các đối tượng khác mà không cần cho biết làm cáchnào đối tượng tiến hành được các thao tác Tính chất này thường được gọi là sự trừutượng của dữ liệu.
Tính trừu tượng còn thể hiện qua việc một đối tượng ban đầu có thể có một sốđặc điểm chung cho nhiều đối tượng khác như là sự mở rộng của nó nhưng bản thânđối tượng ban đầu này có thể không có các biện pháp thi hành Tính trừu tượng nàythường được xác định trong khái niệm gọi là lớp trừu tượng hay lớp cơ sở trừu tượng
+ Tính đóng gói (encapsulation) và che giấu thông tin (information hiding):Tính chất này không cho phép người sử dụng các đối tượng thay đổi trạng thái nội tạicủa một đối tượng Chỉ có các phương thức nội tại của đối tượng cho phép thay đổitrạng thái của nó Việc cho phép môi trường bên ngoài tác động lên các dữ liệu nội tạicủa một đối tượng theo cách nào là hoàn toàn tùy thuộc vào người viết mã Đây làtính chất đảm bảo sự toàn vẹn của đối tượng
+ Tính đa hình (polymorphism): Thể hiện thông qua việc gửi các thông điệp(message) Việc gửi các thông điệp này có thể so sánh như việc gọi các hàm bên trongcủa một đối tượng Các phương thức dùng trả lời cho một thông điệp sẽ tùy theo đốitượng mà thông điệp đó được gửi tới sẽ có phản ứng khác nhau Người lập trình cóthể định nghĩa một đặc tính (chẳng hạn thông qua tên của các phương thức) cho mộtloạt các đối tượng gần nhau nhưng khi thi hành thì dùng cùng một tên gọi mà sự thihành của mỗi đối tượng sẽ tự động xảy ra tương ứng theo đặc tính của từng đối tượng
mà không bị nhầm lẫn
Trang 13Ví dụ khi định nghĩa hai đối tượng "hinh_vuong" và "hinh_tron" thì có mộtphương thức chung là "chu_vi" Khi gọi phương thức này thì nếu đối tượng là
"hinh_vuong" nó sẽ tính theo công thức khác với khi đối tượng là "hinh_tron"
+ Tính kế thừa (inheritance): Đặc tính này cho phép một đối tượng có thể cósẵn các đặc tính mà đối tượng khác đã có thông qua kế thừa Điều này cho phép cácđối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành địnhnghĩa lại Tuy nhiên, không phải ngôn ngữ định hướng đối tượng nào cũng có tínhchất này
1.1.3 Giới thiệu về mô hình 3 lớp
Mô hình 3 lớp gồm: Presentation, Business Logic, Data Access Các lớp này sẽgiao tiếp với nhau thông qua các dịch vụ (services) mà mỗi lớp cung cấp để tạo nênứng dụng
Các lớp không cần biết bên trong lớp khác làm gì, chỉ quan tâm đến dịch vụ đượccung cấp và sử dụng nó
Mô hình 3 lớp được cấu thành từ: Presentation Layers, Business Logic Layers,
và Data Access Layers
+ Presentation Layers: Giao diện xử lý của ứng dụng.Nhiệm vụ: nhập liệu,trình bày dữ liệu, kiểm tra dữ liệu đầu vào Người dụng giao tiếp với GUI để gửi đithông tin và yêu cầu Tại lớp này, các thông tin sẽ được kiểm tra, nếu thỏa mãn chúng
sẽ được chuyển xuống BLL
+ Business Logic Layers: Kiểm tra các yêu cầu nghiệp vụ trước khi cập nhật
dữ liệu, quản lý các transaction (giao tác), quản lý các concurrent access… Gọi các xử
lý của lớp Data Access, nếu gặp ngoại lệ sẽ “quăng” lên GUI Tại BLL, các thông tinđược xử lý, tính theo đúng yêu cầu đã gửi, nếu không cần đến csdl thì BLL trả kết quả
về GUI, ngược lại, nó sẽ đẩy dữ liệu (thông tin đã xử lý) xuống DAL
Trang 14+ Data Access Layers: Kết nối CSDL, tìm kiếm, thêm, sửa, xóa,… trênCSDL/XML DAL sẽ thao tác với csdl và trả về kết quả cho BLL, BLL kiểm tra vàgửi nó lên GUI để hiển thị cho người dùng.
Ưu điểm:
- Phân chia thành từng lớp giúp code tường minh hơn, giảm sự kết dính
- Dễ bảo trì khi được phân chia Việc thay đổi có thể được cô lập trong 1 lớphoặc ảnh hưởng đến lớp gần nhất mà không ảnh hưởng đến cả chương trình
- Dễ phát triển, tái sử dụng
- Thêm 1 chức năng
- Thay đổi giữa 2 môi trường (từ Winform sang Webform: thay đổi lớp GUI)
- Dễ bàn giao (khi cùng theo 1 quy chuẩn)
- Dễ phân phối khối lượng công việc
1.2 Giới thiệu về ngôn ngữ UML
1.2.1 Giới thiệu chung về UML
Ngôn ngữ mô hình hóa thống nhất (tiếng Anh: Unified Modeling Language,viết tắt thành UML) là một ngôn ngữ mô hình gồm các ký hiệu đồ họa mà các phươngpháp hướng đối tượng sử dụng để thiết kế các hệ thống thông tin một cách nhanhchóng
Cách xây dựng các mô hình trong UML phù hợp mô tả các hệ thống thông tin
cả về cấu trúc cũng như hoạt động Cách tiếp cận theo mô hình của UML giúp ích rấtnhiều cho những người thiết kế và thực hiện hệ thống thông tin cũng như nhữngngười sử dụng nó; tạo nên một cái nhìn bao quát và đầy đủ về hệ thống thông tin dựđịnh xây dựng Cách nhìn bao quát này giúp nắm bắt trọn vẹn các yêu cầu của ngườidùng; phục vụ từ giai đoạn phân tích đến việc thiết kế, thẩm định và kiểm tra sảnphẩm ứng dụng công nghệ thông tin Các mô hình hướng đối tượng được lập cũng là
Trang 15cơ sở cho việc ứng dụng các chương trình tự động sinh mã trong các ngôn ngữ lậptrình hướng đối tượng, chẳng hạn như ngôn ngữ C++, Java, Phương pháp mô hìnhnày rất hữu dụng trong lập trình hướng đối tượng Các mô hình được sử dụng baogồm Mô hình đối tượng (mô hình tĩnh) và Mô hình động.
UML sử dụng một hệ thống ký hiệu thống nhất biểu diễn các Phần tử mô hình(model elements) Tập hợp các phần tử mô hình tạo thành các Sơ đồ UML (UMLdiagrams) Có các loại sơ đồ UML chủ yếu sau:
UML ra đời do công của James Rumbaugh, Grady Booch và Ivar Jacobson saukhi đã có các cuộc chiến về mô hình bất phân thắng bại
1.2.2 Các loại biểu đồ:
1, Biểu Đồ Lớp (Class Diagram)
Class diagram là xương sống của hầu như tất cả các phương pháp hướng đốitượng, bao gồm cả UML Chúng mô tả các cấu trúc tĩnh của hệ thống
2, Biểu Đồ Gói (Package Diagram)
Package Diagram là tập hợp các class diagram Các package diagram thiết lậpmối quan hệ giữa các pakage, trong đó pakage là những nhóm phần tử của hệ thống
có mối quan hệ liên quan đến nhau
3, Biểu Đồ Chức Năng
Uses case diagram đưa ra cách nhìn bao quát (từ trên xuống) cách sử dụng của
hệ thống cũng như cách nhìn hệ thống từ bên ngoài
Biểu đồ này hiển thị những chức năng của hệ thống hoặc các lớp và tương táccủa hệ thống với thế giới bên ngoài như thế nào
Uses case diagram được dùng trong quá trình phân tích hệ thống để nắm bắtđược yêu cầu của hệ thống và hiểu được sự hoạt động của hệ thống
4, Biểu Đồ Tương Tác
Trang 16Collaboration Diagram cung cấp về cách nhìn sự tương tác hoặc mối quan hệ
có cấu trúc giữa các đối tượng trong mô hình hiện thời Collaboration Diagram baogồm các đối tượng, liên kết và thông báo
Sử dụng mô hình như là một phương tiện chính để mô tả những tương tác vàcách giải quyết của các hành vi trong hệ thống
6, Biểu Đồ Trạng Thái (Statechart Diagram)
Bạn sử dụng Statechart Diagram mô tả những hành động của các lớp và đốitượng riêng lẻ, mô tả trình tự những trạng thái mà các đối tượng sẽ đi qua
7, Biểu Đồ Hoạt Động (Activity Diagram)
Activity Diagram mô tả tiến trình xử lý và trình tự những hành động trong tiếntrình xử lý, Trông nó giống như biểu đồ tiến trình (flowchart) bởi vì nó mô tả dònglàm việc từ hoạt động sang hoạt động và từ hoạt động sang trạng thái
Khi xây dựng activity diagram nó giúp bạn có thể hiểu được toàn bộ tiến trìnhhoạt động Nó rất hữu dụng khi bạn mô tả những tiến trình song song hoặc mô tả mộtvài tương tác trong use case
8, Biểu Đồ Thành Phần (Component Diagram)
Trang 17Component Diagram cho chúng ta cách nhìn vật lý của mô hình thực tế Nó thểhiện rõ cho chúng ta thấy sự cấu tạo và sự phụ thuộc giữa các thành phần của phầnmềm bao gồm mã nguồn, mã nhị phân (binary code) và những thành phần có khảnăng thực thi.
9, Biểu Đồ Triển Khai (Deployment Diagram)
Deployment Diagrams mô tả các tài nguyên vật lý trong hệ thống, bao gồm cácnút (node), thành phần và kết nối Mỗi mô hình chỉ bao gồm một deployment diagramhiển thị ánh xạ giữa những tiến trình xử lý tới thiết bị phần cứng
1.3 Giới thiệu về Microsoft SQL Server
Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởiMicrosoft Là một máy chủ cơ sở dữ liệu, nó là một sản phẩm phần mềm có chức năngchính là lưu trữ và truy xuất dữ liệu theo yêu cầu của các ứng dụng phần mềm khác Cóthể chạy trên cùng một máy tính hoặc trên một máy tính khác trên mạng (bao gồm cảInternet)
+ Phần mềm được Microsoft phát triển dựa trên RDBMS
+ Cũng là một ORDBMS (Hệ quản trị cơ sở dữ liệu quan hệ đối tượng)
+ Một nền tảng độc lập
+ Phần mềm sử dụng cả giao diện dòng lệnh và giao diện GUI
+ Hỗ trợ ngôn ngữ SQL (trước đây là SEQUEL - ngôn ngữ truy vấn tiếng Anh có cấutrúc) - vốn là sản phẩm của IBM
Microsoft tiếp thị ít nhất một chục phiên bản Microsoft SQL Server khác nhau,nhắm vào các đối tượng khác nhau và cho khối lượng công việc khác nhau, từ các ứngdụng máy đơn nhỏ đến các ứng dụng Internet lớn có nhiều người dùng đồng thời Trong
đồ án này, em sử dụng phiên bản MS SQL Server Express 2019
Trang 181.3.1 Một số câu lệnh thông dụng trong Microsoft SQL Server
1 UPDATE
Truy vấn UPDATE trong SQL được sử dụng để sửa đổi các bản ghi đang tồn tạitrong một bảng Bạn có thể sử dụng mệnh đề WHERE với truy vấn UPDATE sửa đổi cáchàng đã lựa chọn, nếu không, hệ thống sẽ mặc định là tất cả các hàng đều bị tác động.Cúpháp:
INSERT INTO TABLE_TEN (cot1, cot2, cot3, cotN)]
VALUES (giatri1, giatri2, giatri3, giatriN);
+ Thao tác trên tất cả các cột trong bảng
INSERT INTO TABLE_TEN VALUES
(giatri1,giatri2,giatri3, giatriN);
3.SELECT
Lệnh SELECT trong SQL được sử dụng để lấy dữ liệu từ một bảng trong Database
mà trả về dữ liệu ở dạng bảng dữ liệu kết quả.Cú pháp: