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
Trang 1i
CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG QUẢN LÝ BÁN HÀNG TẠI LIKE
CAFE 9
1.1 Tổng quan Quán Like Cafe 9
1.1.1 Sự hình thành và phát triển 9
1.1.2 Hoạt động của Like Café trong thời gian qua 9
1.2 Cơ cấu tổ chức nhân sự Like Café 11
1.3 Thực trạng chung về hệ thống quản lý bán hàng cafe hiện nay và yêu cầu đổi mới 14
1.3.1 Thực trạng quản lý bán hàng ở các quán cafe hiện nay 14
1.3.2 Yêu cầu đổi mới 15
CHƯƠNG 2 PHƯƠNG PHÁP LUẬN 16
2.1 Phương pháp luận trong phân tích hệ thống 16
2.1.1 Phương pháp tiếp cận hệ thống 16
2.1.2 Từ phân tích chức năng đến mô hình hóa 16
2.1.3 Phân tích hệ thống có cấu trúc 16
2.2 Quy trình thiết kế phần mềm 17
2.3 Ngôn ngữ lập trình Java 26
2.3.1 Giới thiệu 26
2.3.2 Một số tính chất của ngôn ngữ lập trình Java 26
2.4 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server 2012 28
2.5 Netbean IDE 30
CHƯƠNG 3 XÂY DỰNG PHẦN MỀM QUẢN LÝ BÁN HÀNG QUÁN LIKE CAFÉ 32
3.1 Mô tả bài toán 32
Trang 2ii
3.2.2 Sơ đồ ngữ cảnh hệ thống 34
3.2.3 Sơ đồ luồng dữ liệu mức đỉnh 35
3.2.4 Sơ đồ luồng dữ liệu các mức phân rã 36
3.3 Phân tích hệ thống về dữ liệu 40
3.3.1 Xác định các thực thể và thuộc tính tương ứng 40
3.3.2 Xác định các liên kết và mối quan hệ 40
3.3.3 Mô hình thực thể mối quan hệ (ERD) 42
3.3.4 Chuẩn hóa các quan hệ 43
3.3.5 Thiết lập mô hình CSDL quan hệ 45
3.3.6 Mô hình thực thể quan hệ 49
3.4 Cài đặt giao diện người dùng 50
3.4.1 Giao diện chính của chương trình 50
3.4.2 Giao diện đăng nhập hệ thống 50
3.4.3 Giao diện quản lý tài khoản người dùng 50
3.4.4 Giao diện quản lý Nhân viên 51
3.4.5 Giao diện quản lý Bàn – Khu vực 51
3.4.6 Giao diện quản lý Thực đơn 52
3.4.7 Giao diện tìm kiếm 52
KẾT LUẬN 54
TÀI LIỆU THAM KHẢO 55
Trang 3iii
Hình 1.1: Cơ cấu tổ chức nhân sự 11
Hình 1.2: Sơ đồ giao dịch bán hàng cafe 12
Hình 2.1: Quy trình thiết kế phần mềm 18
Hình 2.2: Khảo sát hiện trạng và đặc tả yêu cầu 19
Hình 2.3 Chuyển đổi từ vấn đề sang phần mềm 20
Hình 2.4: Tiến trình thiết kế kiến trúc hệ thống 20
Hình 2.5: Quy trình thiết kế phần mềm 24
Hình 2.6: Các biên dịch chương trình hệ thống 27
Hình 2.7: Biên dịch hệ thống Java 28
Hình 2.8: Màn hình chính của chương trình 31
Hình 3.1: Sơ đồ chức năng BFD 33
Hình 3.2: Sơ đồ ngữ cảnh hệ thống 34
Hình 3.3: Sơ đồ luồng dữ liệu mức đỉnh (DFD 0) 35
Hình 3.4: Sơ đồ phân rã mức 1 36
Hình 3.5: Sơ đồ phân rã mức 1.1 37
Hình 3.6: Sơ đồ phân rã mức 2 38
Hình 3.7: Sơ đồ phân rã mức 3 39
Hình 3.8: Sơ đồ phân rã mức 3.1 39
Hình 3.9: Sơ đồ phần rã mức 3.2 40
Hình 3.10: Sơ đồ thực thể mối quan hệ 43
Hình 3.11: Mô hình cơ sở dữ liệu quan hệ 49
Hình 3.12: Giao diện chính của chương trình 50
Hình 3.13: Giao diện đăng nhập hệ thống 50
Trang 4iv
Hình 3.16: Giao diện quản lý Bàn – Khu vực 52 Hình 3.17: Giao diện quản lý Thực đơn 52 Hình 3.18: Giao diện tìm kiếm 53
Trang 5v
Bảng 1: Chi tiết LUONG (Lương) 45
Bảng 2: Chi tiết PHIEUCHI (Phiếu chi) 45
Bảng 3: Chi tiết MON (Món) 46
Bảng 4: Chi tiết BAN (Bàn) 46
Bảng 5: HOADON (Hóa đơn) 46
Bảng 6: CHITIETHOADON (Chi tiết Hóa đơn) 46
Bảng 7: NHANVIEN (Nhân viên) 47
Bảng 8: DONGIACONG (Đơn giá công) 47
Bảng 9: THONGTINQUAN (Thông tin quán) 47
Bảng 10: Chi tiết PHIEUTHU (Phiếu thu) 48
Trang 6SQL : Structured Query Language (Ngôn ngữ truy vấn có cấu trúc)
NF : Normal Form (Chuẩn hóa)
NV_TK: :Nhân viên – Tài khoản
DB : Database (Cơ sở dữ liệu)
Trang 7SVTH: Phan Trọng Phú 7 GVHD: Th.S Lê Viết Mẫn
LỜI MỞ ĐẦ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ệ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, bi-a, shop, tạp hóa, siêu thị là một trong những yếu tố góp phần nên sự thành công của nguờ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ế, Like 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 thực cho tất cả các quán cà phê đang hoạt động hiện nay
Trang 8SVTH: Phan Trọng Phú 8 GVHD: Th.S Lê Viết Mẫn
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 Like 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ư: gộp bàn, tách bàn, chuyển bàn, in hóa đơn thanh toán, hỗ trợ nhiều báo cáo theo các tiêu chí khác nhau
Ngoài hai phần, LỜI MỞ ĐẦU và KẾT LUẬN, nội dung khóa luận này gồm ba
chương:
Chương I Tổng quan về hệ thống thông tin quản lý bán hàng ở quán Like Cafe
Giới thiệu tổng quan về quán Like Cafe và một số đặc điểm hoạt động giao dịch bán hàng ở Like Cafe
Chương II Một số phương pháp luận của quy trình xây dựng phần mềm quản lý
và công nghệ sử dụng
Trình bày các vấn đề liên quan đến phương pháp luận dùng để nghiên cứu và các công cụ sử dụng để hoàn thiện đề tài
Chương III Xây dựng phần mềm quản lý bán hàng quán Like Cafe
Chương này sẽ tiến hành phân tích và trình bày các kết quả quan trọng nhất của việc nghiên cứu đề tài
Trang 9SVTH: Phan Trọng Phú 9 GVHD: Th.S Lê Viết Mẫn
CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG QUẢN LÝ BÁN HÀNG TẠI LIKE CAFE
1.1 Tổng quan Quán Like Cafe
1.1.1 Sự hình thành và phát triển
Tên quán: Like Cafe
Địa chỉ: số 40 Hồ Đắc Di, phường An cựu, Tp Huế
Số điện thoại: 0543 627 999
Được thành lập vào ngày 06 tháng 10 năm 2012
Like Cafe nằm trên tuyến đường Hồ Đắc Di năng động phát triển, quán sở hữu
được một không gian vừa đủ, được thiết kế theo phong cách gần gũi với thiên nhiên, cây cảnh chậu hoa, không gian đan lồng vào nhau Khi bước vào quán, ta bắt gặp một khoảng không gian nghệ thuật, đầu tiên là các bức tranh sơn màu, kế đến là những lồng chim, chậu cá trông rất thiên nhiên và mát mẽ Hơn nữa, một góc của quán là sân khấu với dàn nhạc công sôi động tạo ra một không gian mang tính hiện đại Là một trong những địa điểm dành cho những ai đam mê cafe ca nhạc vào các tối thứ ba, thứ năm và thứ bảy hàng tuần được tổ chức ở Like Cafe Và đó cũng chính là điểm đặc biệt của quán, tạo nên sự khác biệt đối với các quán café khác đóng trên địa bàn
Thức uống ở đây cũng rất phong phú và đa dạng, ngoài ra quán còn có thêm các
bộ bài, bàn cờ để nhóm bạn hoặc các “đối thủ” có thể ngồi chơi vui vẻ hàng giờ liền Giá thức uống ở đây cũng rất hợp lý, trung bình từ 8.000 – 25.000 đồng cho các món ăn nhẹ, thức uống ban ngày và đêm thường, từ 20.000 – 35.000 đồng vào các đêm nhạc Ngoài ra, bạn còn có thể lướt web miễn phí hàng giờ và nghe những bản nhạc trẻ trung năng động do chính ca sĩ và ban nhạc của quán thể hiện Và tất nhiên là bạn cũng có thể đăng ký ngay các bài hát, bản nhạc để chính bạn tự thể hiện trên sân khấu quán Like Đây cũng chính là hoạt động chủ đạo trong các đêm nhạc ở Like Café
1.1.2 Hoạt động của Like Café trong thời gian qua
Với khoảng thời gian thành lập chưa lâu (từ ngày 06/10/2012 tới nay) chưa có bề dày về lịch sử thành lập cũng như hoạt động nhưng Like Cafe đã nỗ lực hết mình thực
Trang 10SVTH: Phan Trọng Phú 10 GVHD: Th.S Lê Viết Mẫn
hiện các hoạt động thiết thực nhằm mang lại giá trị thưởng thức và cảm nhận tốt nhất đối với khách hàng trong suốt thời gian qua
Dưới đây là những hoạt động cụ thể mà Like Cafe đã thực hiện:
- Đêm nhạc Acoustic sâu lắng, nhẹ nhàng chất lượng
Chương trình có sự góp mặt của các ca sĩ trẻ đến từ Thành phố Huế: Nguyễn Thiện Thông (Ken Possible), Thế Ân, Thế Anh, Lê Khánh, Nguyễn Hữu Thanh Tùng, Lạc Thư, Khánh Hòa, Tuyết Trinh
- Tiệc Buffet “VUI GIÁNG SINH - ĐÓN CHÀO NĂM MỚI”
GIÁNG SINH là mùa của yêu thương, mùa của ấm áp ngọt ngào Hòa cùng không khí rộn ràng mừng đón Giáng sinh và thời khắc thiêng liêng đón mừng năm mới
2013 Lúc 19g30 ngày 22/12 /2012, Like Cafe tổ chức chương trình Buffet đặc biệt
“VUI GIÁNG SINH - ĐÓN CHÀO NĂM MỚI” với hơn 20 món ngon dành riêng cho đêm tiệc
Chương trình ca nhạc đặc biệt, hoành tráng với sự góp mặt của nhiều ca sĩ trẻ, nhóm nhạc công Like Cafe, cùng sự thể hiện của các vị khách mời yêu ca nhạc Đặc biệt, mỗi một quý khách sẽ có một Phiếu bốc thăm để nhận được những món quà thú vị và lời chúc an lành từ ông già Noel vui tính…
- Chương trình gây qũy từ thiện - Đêm nhạc Trịnh Công Sơn
Để tưởng nhớ đến cố nhạc sĩ Trịnh Công Sơn, Like Cafe tổ chức đêm nhạc Trịnh với chủ đề "Dấu chân địa đàng" vào lúc 19g30 ngày 01/04/2013 Toàn bộ kinh phí thu được của đêm nhạc sẽ gây quỹ từ thiện dành cho trẻ em nghèo tỉnh Thừa Thiên Huế
- Đồng hành cùng Giờ trái đất 03/2013
- Hoạt động ca nhạc thường đêm vào các tối thứ 3, thứ 5 và thứ 7 hàng tuần
Trang 11SVTH: Phan Trọng Phú 11 GVHD: Th.S Lê Viết Mẫn
1.2 Cơ cấu tổ chức nhân sự Like Café
Hình 1.1: Cơ cấu tổ chức nhân sự
Cách thức hoạt động:
Người thu và chi tiền, nhận các báo cáo quản lý là chủ quán
Quản lý mọi hoạt động của quán như nhân viên vắng mặt, nghĩ làm, xuất nhập hàng hóa, quản lý cơ sở vật chất… là người quản lý quán
Nhân viên bao gồm nhân viên chạy bàn, nhân viên đứng quầy, nhân viên pha chế, nhân viên giữ xe, nhiệm vụ chi tiết của từng nhân viên được mô tả như dưới đây:
Trong một ca làm việc, các nhân viên được phân bổ như sau: một quản lý, một nhân viên pha chế (có bằng pha chế), một nhân viên đứng quầy kiêm phục vụ khu vực trong quán, một nhân viên giữ xe, các nhân viên còn lại có nhiệm vụ chạy bàn
Có tất cả ba ca làm việc Ca 1 từ 6g30 tới 11g, ca 2 từ 11g tới 17g và ca 3 từ 17g tới 22g30, số lượng nhân viên tùy thuộc theo ca, đầu ca sáng và ca tối sẽ đông hơn, lúc ít khách nhất thường là vào buổi trưa lúc đó quán có thể chỉ sử dụng tối đa ba nhân viên bao gồm một nhân viên pha chế, một nhân viên phục vụ bàn và một nhân viên thu ngân Buổi tối thường là lúc đông khách nhất, quán sẽ sử dụng tối đa số nhân viên làm việc, khoảng sáu nhân viên
Do đặc thù của quán, việc thuê mướn nhân viên thường là sinh viên và làm theo part-time 3 ca nên việc quản lý dựa vào một sổ chấm công đơn giản, sổ này dùng để ghi tên những nhân viên làm ca nào và tên gì
• Là người thu và chi tiền, nhận các báo cáo thông
qua quản lý
Chủ
• Anh Khánh: quản lý mọi hoạt động của quán,
có khi đảm nhiệm chức năng của nhân viên
Trang 12SVTH: Phan Trọng Phú 12 GVHD: Th.S Lê Viết Mẫn
Đơn giá công, tại thời điểm khảo sát thì một công có đơn giá là 20.000 đồng, áp dụng cho toàn thể nhân viên, riêng quản lý được trả lương cố định tùy vào chủ quán, lương tính theo công và không xét tới thưởng, phạt hay ứng trước
Ngoài sổ chấm công còn một sổ có tên gọi là sổ quản lý nhân viên dùng để lưu các thông tin cần thiết của nhân viên như: họ tên, địa chỉ, tuổi, giới tính, số điện thoại liên lạc…
Cuối mỗi ca, nhân viên sẽ tính tiền tất cả các bàn, chuyển giao cho nhân viên khác, thường là thu ngân của ca làm việc tiếp theo nếu là ca tối thì chuyển cho quản lý hoặc chủ quán
Việc quản lý bán cà phê có thể hình dung khái quát thông qua sơ đồ sau:
Hình 1.2: Sơ đồ giao dịch bán hàng cafe
Mô tả sơ đồ:
Khi khách vào quán và có yêu cầu thức uống hay hàng ngoài danh mục (bài tây, cờ tướng, cờ vua ), nhân viên chạy bàn (nhân viên phục vụ) trực tiếp nhận thông
Trang 13SVTH: Phan Trọng Phú 13 GVHD: Th.S Lê Viết Mẫn
tin order từ khách và ghi 2 phiếu: một gửi tới bếp để pha chế thức uống và một gửi tới quầy để nhập vào máy bán hàng
Sau đó, nhân viên phục vụ nhận đồ uống từ bếp và hàng ngoài danh mục từ quầy giao cho khách hàng
Khi khách yêu cầu thanh toán, nhân viên phục vụ nhận tiền trả từ khách giao cho quầy và nhận tiền thối từ quầy giao cho khách
Quản lý có thể yêu cầu máy xuất các báo cáo (khi quản lý nghỉ việc nhân viên đứng quầy cũng có quyền này)
Cách tính tiền: Hệ thống sẽ quản lý thức uống bán ra trong ngày, trong tháng,
trong năm, đầu vào của máy là một danh sách các order của một bàn, khi có lệnh thanh toán, sẽ truy vấn đến bàn đó, trích xuất là một hóa đơn tính tiền, xóa dữ liệu về bàn này Một điều đáng lưu ý là các item được order không bị xóa khi hủy bàn, việc này tiện cho việc xuất ra report để cho người quản lý tính toán được lượng hàng bán ra trong ngày Việc trích xuất report của máy đa dạng, với các loại report theo bàn (tính tiền), report theo ngày, report đột xuất, report theo tháng Hết ca báo cáo chi tiết, trích
ra phiếu từ máy tính tiền, so khớp với phiếu pha chế
Quản lý hàng xuất nhập: Hàng nhập xuất đều xuất đều ở khu vực pha chế và
quầy Việc nhập hàng vào được thực hiện liên tục, hàng nhập vào được quy theo sản phẩm (vd: 1kg café đen có thể chia thành 45 ly café đen, 50 ly café sữa…) Ngoài ra, việc nhập hàng và cất giữ cũng được thực hiện ở quầy Hàng ở quầy được ghi sổ lại lượng tồn sau mỗi ca
Doanh thu, chi phí, lợi nhuận: Được tính theo cách sau: doanh thu được xác
định chính xác do việc order được lưu trữ trong máy tính tiền, chi phí được tính toán bằng cách ước lượng theo tháng (vì việc nhập hàng liên tục nên việc ghi nhận lượng hàng nhập của quán khó tính toán được với việc ghi sổ thủ công) Từ doanh thu, chi phí có thể xác định được lợi nhuận tháng của quán
Như vậy, việc ghi nhận doanh thu rõ ràng, chi tiết và được tiến hành trong một quy trình khá khép kín Việc xuất các báo cáo, doanh thu tháng, năm được tiến hành trong một hệ thống có sẵn
Trang 14SVTH: Phan Trọng Phú 14 GVHD: Th.S Lê Viết Mẫn
Tuy nhiên, thất thoát là điều khó tránh khỏi và thật khó trong việc quy trách nhiệm Việc xác định chi phí bao gồm, chi phí nhân công, chi phí nguyên vật liệu, trong đó chi phí nguyên vật liệu chỉ được ước chừng theo kinh nghiệm và theo tiền sử bán hàng Nên việc xác định chính xác lợi nhuận là điều khó có thể Vậy, phải làm sao
để tính toán được một cách chính xác chi phí bỏ ra ?
Do đó bộ phận quản lý quán Like Café mong muốn có một phần mềm chuyên dụng để thay thế công việc thủ công nhàm chán hàng ngày mà nhân viên cũng như quản lý Like Café đang đối mặt, phần mềm này phải giải quyết được một số đặc điểm tiêu biểu sau:
Có đầy đủ các thao tác nghiệp vụ
1.3.1 Thực trạng quản lý bán hàng ở các quán cafe hiện nay
Ở địa bàn thành phố Huế hiện nay có rất nhiều quán cà phê với quy mô đa dạng nhưng quy mô vừa và nhỏ là chiếm đa số, đề tài nghiên cứu xây dựng phần mềm ở quán Like Cafe cũng thuộc quy mô vừa và nhỏ với số lượng bàn có không quá 50 Theo quan sát, đa số quản lý theo phương pháp truyền thống hay khác hơn là bán thủ công: nhập hàng, xuất hàng, tính doanh thu, lợi nhuận, tính tiền bàn, quản lý nhân viên… đều thực hiện hoàn toàn trên giấy tờ hoặc là kết hợp với các máy bán hàng chuyên dụng đắt tiền nhưng tính năng lại hạn chế
Những nhược điểm của việc quản lý bán hàng theo phương thức truyền thống:
Rất mất thời gian cho cả nhân viên, chủ quán và khách hàng
Dễ xảy ra nhầm lẫn khi nhập số liệu và thực hiện thống kê kinh doanh
Dữ liệu không được lưu trữ lâu dài, dẫn đến khó giải quyết khi khách hàng có khiếu nại, việc thực hiện các nghiệp vụ bán hàng của nhân viên và báo cáo các khoản tiền đối với chủ quán
Trang 15SVTH: Phan Trọng Phú 15 GVHD: Th.S Lê Viết Mẫn
Vẫn có một số quán có quy mô lớn dùng các phần mềm chuyên dụng nhưng phải đầu tư một khoản tiền khá lớn cho việc mua và bảo trì, hơn nữa các phần mềm này không được thiết kế riêng cho việc quản lý bán cà phê Ví dụ: quán Valley bỏ ra tầm 5 triệu đồng để mua phần mềm Smile chuyên dùng cho khách sạn để về quản lý công việc bán café
Có những quán sử dụng các phần mềm miễn phí có ở trên mạng nhưng vấp phải một số khó khăn khi sử dụng với lý do:
Phần mềm không được viết theo yêu cầu của khách hàng
Giới hạn nhiều tính năng, ví như chỉ có chức năng quản lý bán hàng
Gặp nhiều lỗi, không được nâng cấp, bảo trì
1.3.2 Yêu cầu đổi mới
Từ những quan sát và phân tích ở trên, thiết nghĩ đã đến lúc cần phải có một phần mềm được thiết kế riêng biệt để quản lý hoạt động của một quán cà phê để thay thế việc quản lý thủ công truyền thống trên giấy tờ
Ưu điểm nổi bật của việc ứng dụng công nghệ thông tin vào việc quản lý quán
cà phê:
Tiết kiệm được rất nhiều thời gian, khả năng lưu trữ một khối lượng cực lớn các dữ liệu
Thời gian lưu trữ dữ liệu lâu dài và an toàn, tốc độ truy xuất nhanh
Nhân viên dễ dàng thực hiện các thao tác nghiệp vụ và có thể hoàn tác (undo) một cách nhanh gọn
Độ chính xác và tin cậy cao trong việc thống kê kinh doanh
Trang 16SVTH: Phan Trọng Phú 16 GVHD: Th.S Lê Viết Mẫn
CHƯƠNG 2 PHƯƠNG PHÁP LUẬN
2.1 Phương pháp luận trong phân tích hệ thống
Trong quá trình phân tích hệ thống, người viết đã vận dụng một số vấn đề phương pháp luận cơ bản nhằm đảm bảo cho hệ thống tương lai hoạt động ổn định và mang lại hiệu quả kinh tế thiết thực
2.1.1 Phương pháp tiếp cận hệ thống
Tiếp cận hệ thống là một phương pháp khoa học và biện chứng trong nghiên cứu và giải quyết các vấn đề kinh tế xã hội Yêu cầu chủ yếu nhất của phương pháp này là phải xem xét hệ thống trong tổng thể vốn có của nó cùng với các mối liên hệ của các phân hệ nội tại cũng như mối liên hệ với các hệ thống bên ngoài
Ứng dụng phương pháp này đòi hỏi khi xây dựng phần mềm quản lý cho một
tổ chức, doanh nghiệp thì trước hết người phân tích phải xem xét tổ chức, doanh nghiệp đó như là một hệ thống thống nhất về mặt kinh tế, tổ chức, kỹ thuật; sau đó mới đi vào các vấn đề cụ thể trong từng lĩnh vực Trong mỗi lĩnh vực lại phân chia thành các vấn đề cụ thể, ngày càng chi tiết hơn Đây chính là phương pháp tiếp cận đi
từ tổng quát đến cụ thể theo sơ đồ cầu trúc hình cây
2.1.2 Từ phân tích chức năng đến mô hình hóa
Nguyên tắc này đòi hỏi trong quá trình phân tích hệ thống khi thiết kế phần mềm người ta phải tiến hành theo một trình tự khoa học Trước hết phải có một kế hoạch phân tích tỉ mỉ, chu đáo đến từng khâu công việc Sau đó tiến hành từ bước phân tích chức năng của hệ thống thông tin, phân tích dòng thông tin kinh doanh và sau đó tiến hành mô hình hóa hệ thống thông tin kinh tế bằng các mô hình như: sơ đồ ngữ cảnh, sơ đồ chức năng (BFD), sơ đồ luồng dữ liệu (DFD) Cuối cùng là lập bản báo cáo chi tiết toàn bộ những kết quả của quá trình phân tích hệ thống Đây là cơ sở quan trọng cho bước thiết kế phần mềm tiếp theo sau
2.1.3 Phân tích hệ thống có cấu trúc
Phương pháp này bắt nguồn vững chắc từ cách tiếp cận hệ thống Phân tích hệ thống có cấu trúc không chỉ là “một ý tưởng tốt” hay một cái gì đó mà nhà thực hành
Trang 17SVTH: Phan Trọng Phú 17 GVHD: Th.S Lê Viết Mẫn
tìm ra để làm việc, nó còn là ứng dụng thực tế của một khái niệm lý thuyết đầy hiệu lực
Một khái niệm được sử dụng rất rộng rãi trong xử lý dữ liệu là quá trình phát triển các hệ thống mới có sử dụng máy tính bao gồm một số giai đoạn nhất định Tất
cả những giai đoạn này tạo thành vòng đời phát triển của hệ thống bao gồm 5 công đoạn sau đây:
Một số đặc trưng quan trọng của vòng đời phát triển hệ thống:
Tạo điều kiện thuận lợi cho việc kiểm soát và quản lý hệ thống một cách tốt nhất
Làm giảm bớt các nguy cơ sai lầm về chi phí không dự kiến trước được
Nhường quyền kiểm soát tối hậu dự án cho người sử dụng
Mọi chi tiết về hệ thống mới, mọi nhân tố và giả thuyết về những quyết định nào đã được chọn đều được ghi lại một cách có hệ thống trong tài liệu đưa ra ở từng giai đoạn
2.2 Quy trình thiết kế phần mềm
Quy trình thiết kế phần mềm bao gồm 8 bước sau đây:
Trang 18SVTH: Phan Trọng Phú 18 GVHD: Th.S Lê Viết Mẫn
Hình 2.1: Quy trình thiết kế phần mềm
Bước 1: Khảo sát hiện trạng và đặc tả yêu cầu
Giai đoạn này tập trung nghiên cứu hoạt động nghiệp vụ của bộ phận tổ chức có yêu cầu tin học hóa, thu thập tài liệu, thông tin từ những người làm việc trực tiếp, xác định các yêu cầu mà khách hàng đặt ra Từ đó xác định thông tin nào cần được xử lý, chức năng và tiêu chuẩn hợp lệ nào cần có để xác định ra một hệ thống Yêu cầu chủ chốt của hệ thống và phần mềm cũng được xác định Giai đoạn khảo sát thực tế được thực hiện theo sơ đồ dưới đây:
Trang 19SVTH: Phan Trọng Phú 19 GVHD: Th.S Lê Viết Mẫn
Hình 2.2: Khảo sát hiện trạng và đặc tả yêu cầu
Sau khi khảo sát và lập ra được tài liệu đặc tả yêu cầu phần mềm, người thiết kế phần mềm sẽ làm bản mẫu cho phần mềm
Tóm lại ở giai đoạn này chúng ta cần xác địng rõ những gì ta quan tâm về bản thân chúng ta và mọi người
Khi các chức năng của một hệ thống dựa trên máy tính đã được xác định thì kỹ
sư phần mềm có thể tạo ra một mô hình biểu thị cho mối quan hệ giữa các phần tử của
hệ thống và đặt ra nền tảng cho các bước phân tích và thiết kế sau này Kiến trúc hệ thống mô tả hai đặc trưng quan trọng của chương trình máy tính
Chức năng
phần mềm
Lập kế hoạch dự
án phần mềm
Xét duyệt
Phân tích yêu cầu hay bản mẫu
Xét duyệ
1
Kế hoạc
h dự
án
Đặc
tả yêu cầu Bản
mẫu
Trang 20SVTH: Phan Trọng Phú 20 GVHD: Th.S Lê Viết Mẫn
Kiến trúc hệ thống được suy dần ra qua quá trình phân hoạch đặt mối quan hệ giữa các phần tử của giải pháp phần mềm với các bộ phận của vấn đề được xác định qua phân tích yêu cầu Tiến trình này được biểu diễn tượng trưng qua 2 hình vẽ sau đây:
Hình 2.3 Chuyển đổi từ vấn đề sang giải pháp phần mềm
Hình 2.4: Tiến trình thiết kế kiến trúc hệ thống
P1
P2
P3
P4 P5
Trang 21SVTH: Phan Trọng Phú 21 GVHD: Th.S Lê Viết Mẫn
Qua sơ đồ trên ta có thể thấy, một vấn đề có thể được thõa mãn bởi nhiều cấu trúc khác nhau Trong thực tiễn thiết kế phần mềm, tùy từng bài toán cụ thể mà người thiết kế lựa chọn một kiểu cấu trúc thích hợp nhất
Thiết kế phần mềm là một công đoạn trung tâm trong quy trình xây dựng phần mềm, có ý nghĩa đặc biệt quan trọng có tính quyết định đến chất lượng của các sản phẩm phần mềm
Bước 3: Thiết kế dữ liệu
Cơ sở dữ liệu là một tập hợp dữ liệu được tổ chức đặc biệt và được lưu trữ trên các thiết bị nhớ của máy tính nhằm cung cấp thông tin cho những người sử dụng khác nhau hay cho những ứng dụng khác nhau
Một cơ sở dữ liệu có các chức năng sau:
- Có khả năng lưu trữ và nhập thêm thông tin
- Có thể cập nhật được dữ liệu
- Có khả năng cung cấp thông tin cho người sử dụng
Một cơ sở dữ liệu được thiết kế thì phải đảm bảo được các tiêu chuẩn sau:
- Giảm dư thừa thông tin trong lưu trữ
- Có thể dùng chung một CSDL cho nhiều bộ phận trong hệ thống và sử dụng với nhiều mục đích khác nhau
- Đảm bảo tính nhất quán của dữ liệu trong hệ thống Dễ dàng bảo trì dữ liệu và trao đổi dữ liệu với các HTTT khác
- Đảm bảo an toàn và toàn vẹn dữ liệu
Thiết kế CSDL trải qua các bước sau:
i, Phân tích toàn bộ yêu cầu:
Bước này khó khăn nhất là việc phân tích trọn vẹn những yêu cầu trong việc hình thành CSDL cho một đơn vị Trong thời gian này người thiết kế phải tìm hiểu xem việc xử lý dữ liệu ở đơn vị để từ đó có cái nhìn tổng quát trước khi bắt tay vào thiết kế CSDL
ii, Nhận dạng những thực thể:
Sau khi đã tìm hiểu kỹ tiến trình xử lý, nhà thiết kế phải nhận diện được các thực thể tham gia để thêm vào bảng dữ liệu trong CSDL
Trang 22SVTH: Phan Trọng Phú 22 GVHD: Th.S Lê Viết Mẫn
iii, Nhận diện các mối tương quan giữa các thực thể:
Sau khi đã nhận diện xong các thực thể, công việc tiếp theo là phải tìm ra mối tương quan giữa các thực thể và mối tương quan đó có quan hệ như thế nào: 1-1, 1- n, n-n
iv, Xác định các mục khóa chính:
Trên mỗi bảng dữ liệu, cần phải nhận diện một trường hợp cho phép phân biệt không nhập nhằng trong bản ghi Vì nguyên tắc cơ bản trong thiết kế là không cho phép những bản ghi trùng nhau Trong trường hợp nếu có nhiều sự lựa chọn thì phải chọn trường hợp có ý nghĩa đối với ứng dụng để làm khóa chính
v, Thêm vào các trường không phải là các mục khóa vào bảng:
Sau khi đã khai báo định nghĩa các thực thể, các mục khóa chính và khóa ngoại lai, công việc tiếp theo là phải xác định được các trường còn lại trên bảng dữ liệu thuộc CSDL Đây là bước khá quan trọng trong việc hình thành cấu trúc của bảng dữ liệu Trong bước này phải quyết định việc đặt tên các trường sao cho thuận tiện khi xử
lý dữ liệu trên bảng
vi, Chuẩn hóa các bảng dữ liệu:
Công việc này sẽ loại bỏ những dữ kiện trùng lặp và giữ cho các dữ kiện có quan
hệ với nhau nhằm đảm bảo không bị mất thông tin
vii, Khai báo phạm vi của mỗi trường:
Đây là bước cuối cùng của quá trình thiết kế CSDL Trong bước này phải xác định kiểu dữ liệu thích hợp cho mỗi trường và phạm vi dao động của các trường nhằm xác định độ rộng của trường
Bước 4: Thiết kế giao diện
Tiến trình thiết kế giao diện bắt đầu với việc tạo ra các mô hình khác nhau về chức năng hệ thống (như được cảm nhận từ bên ngoài) Trước hết phải phát họa ra các nhiệm vụ hướng con người và máy tính cần để đạt tới chức năng của hệ thống, xem xét vấn đề thiết kế áp dụng cho mọi thiết kế giao diện, rồi sử dụng các công cụ làm bảng mẫu và cuối cùng là cài đặt cho mô hình thiết kế và đánh giá kết quả, chất lượng Các mô hình khi thiết kế giao diện:
a, Mô hình thiết kế
Trang 23SVTH: Phan Trọng Phú 23 GVHD: Th.S Lê Viết Mẫn
Mô hình thiết kế của toàn bộ hệ thống tổ hợp các biểu diễn dữ liệu, kiến trúc và thủ tục của phần mềm Đặc tả các yêu cầu có thể thiết lập nên một số ràng buộc giúp cho việc định nghĩa người dùng của hệ thống, nhưng thiết kế giao diện thường chỉ ngẫu nhiên là mô hình thiết kế
b, Mô hình người dùng
Mô hình người dùng mô tả sơ lược cho người dùng cuối cùng của hệ thống Để xây dựng một giao diện người dùng có hiệu quả mọi thiết kế nên bắt đầu với một hiểu biết về người dùng được dự định Nghĩa là nên xác định rằng: phần mềm được thiết cho đối tượng nào sử dụng? (kể các thông tin: tuổi tác, giới tính, khả năng về thể chất, trình độ văn hóa, tôn giáo )
c, Mô hình cảm nhận hệ thống
Cảm nhận hệ thống là hình ảnh của hệ thống mà người dùng mang trong đầu Mô hình này sẽ rất có lợi cho những người đã hiểu biết về hệ thống đó khi sử dụng phần mềm nhưng lại gây sự khó tiếp cận đối với những người mới học
d, Mô hình hình ảnh hệ thống
Hình ảnh hệ thổng tổ hợp cách biểu lộ bên ngoài của hệ thống dựa trên máy tính (nhìn và cảm thấy giao diện) với mọi thông tin hỗ trợ (sách, tài liệu, băng đĩa ) mô tả cho cú pháp và ngữ nghĩa của hệ thống
Bước 5: Lập trình
Bước lập trình của quy trình thiết kế một phần mềm ứng dụng là một tiến trình dịch Thiết kế chi tiết được lập sang một ngôn ngữ lập trình mà cuối cùng được biến đổi thành các lệnh mã máy thực hiện được Lập trình là cốt lõi của tiến trình xây dựng phần mềm
Chương trình được lập phải dễ hiểu, nhấn mạnh vào các tính toán đơn giản và rõ ràng
Trang 24SVTH: Phan Trọng Phú 24 GVHD: Th.S Lê Viết Mẫn
Thiết
kế giao diện
Bản mẫu
Thiết
kế giao diện
Xét duyệt
Mã gốc chươ Hình 2.5: Quy trình thiết kế phần mềm
Thực hiện các bước lập trình bao gồm các bước sau:
- Xác định tài liệu chương trình gốc: tài liệu bên trong của chương trình gốc bắt đầu với việc chọn lựa các tên gọi định danh (biến và nhãn), tiếp tục với vị trí và thành phần của việc chú thích và kết luận với cách tổ chức trực quan của chương trình Việc lựa chọn các tên gọi định danh có nghĩa chính là điều chủ chốt cho việc hiểu chương trình sang cấu trúc ngữ nghĩa bên trong
Trang 25SVTH: Phan Trọng Phú 25 GVHD: Th.S Lê Viết Mẫn
qua tất cả các yêu cầu chức năng đối với một chương trình Việc kiểm thử hộp đen dự định tìm lỗi trong các phạm vi sau đây:
- Các chức năng không đúng hay bị bỏ sót
- Lỗi giao diện
- Lỗi trong cấu trúc dữ liệu hay thâm nhập CSDL ngoài
- Lỗi hiệu năng
- Lỗi khởi đầu và kết thúc
Kiểm thử hộp trắng:
Kiểm thử hộp trắng là một phương pháp thiết kế kiểm thử có dùng cấu trúc điều khiển của thiết kế thủ tục để suy ra các trường hợp kiểm thử Kiểm thử hộp trắng tập trung vào cấu trúc điều khiển chương trình Các trường hợp kiểm thử được thực hiện đều đảm bảo rằng tất cả các câu lệnh trong chương trình đều được thực hiện ít nhất một lần, tất cả các điều kiện logic đều được thử qua
Bước 7: Triển khai
Sau khi kết thúc kiểm thử (không còn thấy xuất hiện lỗi), chúng ta bắt tay vào quá trình triển khai phần mềm Triển khai phần mềm là việc đưa sản phẩm được tạo ra bởi các nhóm người lập trình đến đối tượng sử dụng phần mềm đó là những người thực hiện giá trị của sản phẩm trí tuệ này gọi là người sử dụng cuối cùng
Để đưa hệ thống cùng toàn bộ tính năng ưu việt của nó vào ứng dụng trong thực
tế một cách có hiệu quả thì quá trình triển khai phần mềm phải thực hiện tốt Nói cách khác, các tính năng mà phần mềm có được chỉ là điều kiện cần còn quy trình triển khai hợp lý, khoa học chính là điều kiện đủ để ứng dụng thành công hệ thống Tỷ lệ thất bại của các phần mềm do quá trình triển khai vẫn đang chiếm một tỉ lệ khá cao mà nguyên nhân chủ yếu là do:
- Năng lực của người sử dụng còn hạn chế
- Truyền đạt và thông tin không tốt
- Phương pháp triển khai thiếu tính khoa học và không rõ ràng
Bước 8: Đào tạo sử dụng
Phần mềm sau khi tạo ra phải được sử dụng ít nhất bởi một người hay nhóm người nào đó Nhưng những người sử dụng trực tiếp không phải là những người có chuyên môn sâu về tin học nên không thể đòi hỏi họ phải hiểu được ý tưởng và cách
Trang 26SVTH: Phan Trọng Phú 26 GVHD: Th.S Lê Viết Mẫn
thiết kế ý tưởng trên phần mềm của người lập trình Vì vậy, khi triển khai phần mềm
để đưa đến người sử dụng cuối cùng phải có quá trình hướng dẫn người sử dụng biết cách sử dụng sản phẩm và làm quen với cách làm việc được phần mềm hỗ trợ
Các lĩnh vực đào tạo bao gồm:
- Đào tạo kiến thức về máy tính: giới thiệu các khái niệm cơ sở của máy tính, phần mềm máy tính
- Đào tạo nhận thức về hệ thống: để người dùng biết hệ thống đang làm gì và những gì hệ thống có thể làm được
- Đào tạo người sử dụng biết sử dụng thông tin trong hệ thống; phân định trách nhiệm của mỗi người trong hệ thống
- Đào tạo về sử dụng phần mềm: giúp người dùng nắm rõ điều gì được thực hiện, điều gì không được thực hiện, các thao tác cần được thực hiện như thế nào, cách tra cứu tìm kiếm thông tin
2.3 Ngôn ngữ lập trình Java
2.3.1 Giới thiệu
Java là một ngôn ngữ lập trình được SunMicrosystems giới thiệu vào tháng 6 năm 1995 Từ đó, nó đã trở thành công cụ lâp trình của các lập trình viên chuyên nghiêp Java được xây dựng trên nền tảng của C và C++, do vậy nó sử dung các cú pháp của C và các đặc trưng hướng đối tượng của C++
2.3.2 Một số tính chất của ngôn ngữ lập trình Java
Java là ngôn ngữ lập trình được phát triển từ ngôn ngữ lập trình C/C++ Nó kế thừa, phát huy các thế mạnh của ngôn ngữ C/C++ và lược bỏ đi các cú pháp phức tạp của C/C++ Ngôn ngữ lập trình Java có một số đặc trưng tiêu biểu: đơn giản, hướng đối tượng, độc lập phần cứng và hệ điều hành, mạnh mẽ và bảo mật
Tính đơn giản: những người thiết kế mong muốn phát triển một ngôn ngữ dễ
học và quen thuộc với đa số người lập trình Do vậy Java loại bỏ các đặc trưng phức tạp của C và C++ như: loại bỏ thao tác con trỏ, thao tác định nghĩa chồng toán tử, không cho phép đa kế thừa mà sử dụng các giao diện, không sử dụng lệnh ”goto” cũng như file header (.h), loại bỏ cấu trúc ”struct” và ”union”
Tính hướng đối tượng: Java là ngôn ngữ lập trình thuần hướng đối tượng, mọi
chương trình viết trên Java đều phải được xây dựng trên các đối tượng Nếu trong
Trang 27SVTH: Phan Trọng Phú 27 GVHD: Th.S Lê Viết Mẫn
C/C++ có thể tạo ra các hàm thì trong Java ta chỉ có thể tạo ra các phương thức Trong Java không cho phép các các đối tượng có tính năng đa kế thừa mà được thay thế bằng các giao diện (interface)
Độc lập phần cứng và hệ điều hành:
Đối với các ngôn ngữ lập trình truyền thống như C/C++, phương pháp biên dịch
được thực hiện như sau :