Các phần mềm nói trên mặc mặc dù tiện ích, phổ biến và dễ áp dụng nhưngnhân viên cũng gặp phải nhiều khó khăn riêng khi sử dụng như việc đưa ra các báocáo, tìm kiếm thông tin… 1.2.2 Nhu
Trang 1MỤC LỤC
LỜI NÓI ĐẦU 1
CHƯƠNG I: TỔNG QUAN VỀ CƠ SỞ THỰC TẬP VÀ BÀI TOÁN QUẢN LÝ BÁN HÀNG 2
1.1 GIỚI THIỆU CHUNG VỀ CÔNG TY CỔ PHẦN THIẾT BỊ ĐIỆN BÌNH MINH 2
1.1.1 Quá trình hình thành và phát triển của công ty 2
1.1.2 Phương châm và lĩnh vực hoạt động 3
1.1.3 Sơ đồ tổ chức của Công ty cổ phần thiết bị điện Bình Minh 4
1.2 THỰC TRẠNG ỨNG DỤNG TIN HỌC TẠI CÔNG TY CỔ PHẦN THIẾT BỊ ĐIỆN BÌNH MINH 7
1.2.1 Thực trạng ứng dụng tin học tại công ty 7
1.2.2 Nhu cầu tin học hóa của hệ thống 7
1.3 KHÁI QUÁT VỀ ĐỀ TÀI NGHIÊN CỨU 8
1.3.1 Lý do chọn đề tài 8
1.3.2 Hướng phát triển đề tài 9
CHƯƠNG 2: CƠ SỞ PHƯƠNG PHÁP LUẬN VỀ PHẦN MỀM ỨNG DỤNG 11
2.1 TỔNG QUAN CHUNG VỀ CÔNG NGHỆ PHẦN MỀM 11
2.1.1 Khái niệm phần mềm 11
2.1.2 Phân loại phần mềm 11
2.1.3 Khái niệm công nghệ phần mềm 13
2.1.4 Các yêu cầu trong quá trình xây dựng phần mềm 13
2 2 CÔNG CỤ VÀ PHƯƠNG PHÁP GIẢI QUYẾT 25
2.2.1 Giới Thiệu về Visual Basic 6.0 (VB 6.0) 25
2.2.2 Hệ quản trị cơ sở dữ liệu Microsoft Access 27
CHƯƠNG 3: THIẾT KẾ PHẦN MỀM QUẢN LÝ BÁN HÀNG TẠI CÔNG TY CỔ PHẦN THIẾT BỊ ĐIỆN BÌNH MINH 29
3.1 KHẢO SÁT NGHIỆP VỤ QUẢN LÝ BÁN HÀNG 29
3.1.1 Phương pháp tính giá thành 29
Trang 23.1.2 Mô hình nghiệp vụ 29
3.2 PHÂN TÍCH HỆ THỐNG VỀ MẶT XỬ LÝ 41
3.2.1 Giới thiệu 41
3.2.2 Biểu đồ phân cấp chức năng 42
3.2.3 Sơ đồ ngữ cảnh hệ thống (BLD ngữ cảnh) 43
3.2.4 Sơ đồ luồng thông tin 45
3.2.5 Biểu đồ luồng dữ liệu mức 0 (BLD mức đỉnh) 47
3.3 THIẾT KẾ CƠ SỞ DỮ LIỆU 52
3.3.1 Ma trận thực thể chức năng 52
3.3.2 Lược đồ quan hệ phụ thuộc hàm, chuẩn hóa 3NF 53
3.3.3 Mô hình thực thể liên kết 55
3.3.4 Mô hình Relationships 57
3.4 Thiết kế giải thuật 62
3.4.2 Giải thuật xóa bản ghi 63
3.5 MỘT SỐ GIAO DIỆN 64
3.6 MỘT SỐ ĐOẠN CODE CHÍNH CỦA PHẦN MỀM 76
KẾT LUẬN 83
Trang 3LỜI NÓI ĐẦU
Thế giới ngày nay đã có nhiều tiến bộ mạnh mẽ về công nghệ thông tin, từmột tiềm năng thông tin đã trở thành một tài nguyên thực sự, trở thành sản phẩmhàng hóa trong xã hội, tạo ra một sự thay đổi to lớn trong các lĩnh vực sản xuất, cơ
sở hạ tầng, cấu trúc kinh tế, tính chất lao động và cả cách thức quản lý trong cáclĩnh vực của đời sống xã hội
Trong những năm gần đây, nền công nghệ thông tin nước ta cũng đã có pháttriển trên các lĩnh vực của cuộc sống cũng như các lĩnh vực quản lý của xã hội Mộttrong những lĩnh vực mà máy tính được sử dụng nhiều nhất là các hệ thống thôngtin quản lý nói chung
Với mong muốn được áp dụng những kiến thức kinh tế cũng như tin học đãđược tiếp thu trong quá trình học tập ở trường, để áp dụng những kiến thức đó vào
thực tế, em lựa chọn thực hiện đề tài: “Xây dựng phần mềm quản lý bán hàng tại công ty cổ phần thiết bị điện Bình Minh- 15 Điện Biên Phủ-Phường Bình Hàn-
TP Hải Dương”.
Nội dung báo cáo bao gồm:
- Chương 1: Tổng quan về cơ sở thực tập và bài toán quản lý bán hàng
- Chương 2: Cơ sở phương pháp luận về phần mềm ứng dụng
- Chương 3 : Thiết kế phần mềm quản lý bán hàng
Em xin chân thành cảm ơn ban giám đốc và các cán bộ nhân viên công ty cổphần thiết bị điện Bình Minh đã tạo điều kiện thuận lợi để em thực tập tại công ty.Đặc biệt là sự giúp đỡ nhiệt tình của thầy giáo Phùng Tiến Hải cùng các thầy côtrong khoa TIN HỌC KINH TẾ để em hoàn thành chuyên đề tốt nghiệp của mình
Em xin chân thành cảm ơn!
Hà Nội, ngày 17 tháng 05 năm 2012
Người thực hiệnNguyễn Thị Thu Hương
Trang 4CHƯƠNG I TỔNG QUAN VỀ CƠ SỞ THỰC TẬP VÀ BÀI TOÁN
- Trụ sở chính: 15- Đường Điện Biên Phủ- phường Bình Hàn- TP Hải Dương
- Văn phòng đại diện: 33 Phạm Ngũ Lão- Thành phố Hải Dương
- Điện thoai: (0320)3846.489 FAX: (0320)3846.844
- Mã số thuế: 08 000 777 275
- Email: binhminhjsc.hd@gmail.com
- Web: www.binhminh.com.vn
1.1.1 Quá trình hình thành và phát triển của công ty
Công ty cổ phần thiết bị điện Bình Minh được phát triển và đi vào hoạt động
từ năm 2006 dựa trên sự hợp tác của các chuyên gia có nhiều năm kinh nghiệmtrong lĩnh vực kinh doanh cũng như phân phối các sản phẩm thiết bị điện cho cácđại lý bán buôn, bán lẻ Ngay từ những năm đầu thành lập công ty cổ phần thiết bịđiện Bình Minh đã tham gia phân phối những sản phẩm linh kiện máy móc và cácthiết bị điện của các hãng nổi tiếng trên thế giới chiếm thị phần lớn tại thị trườngViệt Nam Với mục đích trở thành nhà phân phối chuyên nghiệp quy mô lớn, công
ty cổ phần thiết bị điện Bình Minh đã, đang và sẽ phấn đấu không ngừng tự khẳngđịnh vị trí của mình với các công ty khác cùng loại trên cả nước
Với tiêu chí “Hợp tác cùng phát triển” hướng kinh doanh chính của công ty
cổ phần thiết bị điện Bình Minh bao gồm việc phân phối các sản phẩm thiết bị điệnchất lượng cao như: HAPPY COOK, SUN RISE, GOLD SUN, LIOA, OMINSU….đồng thời tập trung nâng cao chất lượng dịch vụ của mình với cam kết: “ Chúng tôicam kết mang đến cho khách hàng những giải pháp và sản phẩm phù hợp với nhucầu sử dụng và khả năng tài chính của khách hàng Đồng thời đảm bảo khả năngtích hợp với những thay đổi trong tương lai” và “ Cam kết không ngừng nâng caotrình độ đội ngũ nhân viên nhằm đáp ứng nhu cầu ngày càng tăng của khách hàng”
Trang 51.1.2 Phương châm và lĩnh vực hoạt động
1.1.2.1 Phương châm hoạt động
- Mang đến cho khách hàng sự hài lòng cao nhất thông qua việc đáp ứng tốtnhất các nhu cầu của khách hàng
- Xây dựng Bình Minh trở thành nhà cung cấp chuyên nghiệp các dich vụ tinhọc
-Xây dựng giải pháp tích hợp hiệu quả cho các Doanh Nghiệp
1.1.2.2 Lĩnh vực hoạt động
Với trên 6 năm kinh nghiệm trong lĩnh vực tư vấn, thiết kế và cung cấp thiết
bị CNTT, thiết bị gia đình, thiết bị văn phòng với những hiểu biết về thị trường vànhu cầu của từng đối tượng khách hàng, công ty Bình Minh mang đến cho Quýkhách hàng những giải pháp lựa chọn sản phẩm tối ưu nhất và hiệu quả nhất
Cung cấp thiết bị văn phòng, máy tính, phần mềm máy tính đã đóng gói,thiết bị ngoại vi; máy in, vật tư ngành in và phụ kiện;
Xuất nhập khẩu các mặt hàng Công ty kinh doanh;
Mua bán camera quan sát, thiết bị báo động, báo cháy, thiết bị máy chấmcông, máy huỷ tài liệu, thiết bị ngân hàng, máy mã vạch, máy tính tiền, thiết bị đọc
mã vạch, máy soi tiền, thiết bị viễn thông (điện thoại, tổng đài), máy móc, thiết bịđiện tử, điện lạnh;
Môi giới thương mại
Linh kiện điện tử, sản phẩm đồ gia dụng
Các sản phẩm chủ yếu của các hãng nổi tiếng
Máy tính
Cung cấp Máy thương hiệu IBM, Compaq, Dell, Lenovo, HPC,
Linh kiện Máy tính
Thiết bị văn phòng
Máy Photocopy Ricoh, Sharp…
Máy Fax Shaps, Panasonic…
Máy chiếu đa năng Sony, Panasonic…
Trang 6 Máy in, Máy scanner Plustek, Canon, HP, SamSung, Epson
Máy hủy tài liệu…
Sản phẩm đồ gia dụng
Ổ điện LIOA, OMINSU
Nồi cơm điện HAPPYCOOK, SUNRISE, SHARP, TOSHIBA,
PANASONIC…
Phích cắm điện LIOA
Bóng đèn SUN RISE, COMPAC, PHILIP
Dây điện GOLDSUN, OMINSU
Các sản phẩm đồ điện nhỏ lẻ khác
1.1.3 Sơ đồ tổ chức của Công ty cổ phần thiết bị điện Bình Minh
1.1.3.1 Sơ đồ tổ chức của công ty cổ phần thiết bị điện Bình Minh
BP
Lễ Tân
Trang 7- Ban Giám Đốc: 2 người
- BP Kế Toán: 4 người
- BP Kinh Doanh : 10 người
- BP Kinh Doanh XNK :6 người
Lập kế hoạch nhập hàng về thời gian, số lượng, chủng loại, màu sắc
Lập báo cáo bán hàng định kỳ, hàng tồn tại các cửa hàng
Kế hoạch điều tiết phân phối các sản phẩm cho các chi nhánh, cửa hàng
Điều tiết giá, luân chuyển sản phẩm giữa các cửa hàng
Giám sát hoạt động kinh doanh của các cửa hàng, bố trí sắp xếp sản phẩmtrong các cửa hàng và đôn đốc việc lau chùi vệ sinh sản phẩm thường xuyên
Cùng với bộ phận kho quản lý giám sát nguồn hàng trong kho và trong mỗi cửa hàng
Đào tạo bồi dưỡng nhân viên bán hàng
Tham mưu cho ban giám đốc để có kế hoạch hàng cũng như dự báo các nhucầu thị trường
Lập kế hoạch và đánh giá các kế hoạch kinh doanh
Phối hợp với các phòng ban trong công ty, đề xuất các kế hoạch kinh doanhcũng như đưa ra các kế hoạch cụ thể để cùng với bộ phận xuất nhập khẩu làmtốt công tác đầu vào
b Phòng tài chính:
Tham mưu cho lãnh đạo công ty trong lĩnh vực quản lý các hoạt động tàichính - kế toán, trong đánh giá sử dụng tài sản, tiền vốn
Định kỳ tập hợp phản ánh cung cấp các thông tin cho cho lãnh đạo công ty
về tình hình biến động của các nguồn vốn, hiệu quả sử dụng tài sản vật tư
Tham mưu đề xuất việc khai thác, huy động các nguồn vốn phục vụ kịp thờicho hoạt động kinh doanh đúng theo các quy định của nhà nước
Lên các kế hoạch để tạo nguồn như huy động vốn tự có cũng như vốn vaynhằm đảm bảo nguồn vốn khi nhập hàng, nộp thuế nhập khẩu cũng như cácnghĩa vụ khác với nhà nước
Trang 8kinh doanh của công ty.
Tham mưu cho lãnh đạo công ty trong lĩnh vực quản lý các hoạt động tàichính - kế toán, trong đánh giá sử dụng tài sản, tiền vốn theo đúng chế độquản lý tài chính của nhà nước
Tổ chức quản lý kế toán (bao gồm đề xuất tổ chức bộ máy kế toán và hướngdẫn hạch toán kế toán) Kiểm tra việc hạch toán kế toán đúng theo chế độ kếtoán nhà nước ban hành đối với kế toán các đơn vị thành viên nhất là các đơn
vị hạch toán phụ thuộc
Định kỳ tập hợp phản ánh cung cấp các thông tin cho cho lãnh đạo công ty
về tình hình biến động của các nguồn vốn, vốn, hiệu quả sử dụng tài sản vật
tư, tiền vốn của các đơn vị thành viên cũng như toàn công ty
Kiểm tra hoạt động kế toán tài chính của các đơn vị trong công ty (tự kiểmtra hoặc phối hợp tham gia với các cơ quan hữu quan kiểm tra)
Tổ chức hạch toán kế toán trực tiếp hoạt động sản xuất kinh doanh của vănphòng công ty Tiếp nhận và phân phối các nguồn tài chính (trợ cước, trợgiá, hỗ trợ lãi suất dự trữ lưu thông, cấp bổ sung vốn lưu động hoặc cácnguồn hỗ trợ khác của nhà nước ), đồng thời thanh toán, quyết toán với nhànước, các cấp, các ngành về sử dụng các nguồn hỗ trợ trên
c Phòng hành chính
Bộ phận lễ tân
Quản lý công tác văn thư, lưu trữ, con dấu, công văn đi đến của công ty
Soạn thảo các văn bản hành chính giao dịch trong và ngoài công ty
Thực hiện chức năng chuyên chở, vận chuyển, kế hoạch điều chuyển sảnphẩm cũng như bố trí xe tải cho bộ phận kho
Bộ phận xuất nhập khẩu
Tìm hiểu thị trường trong và ngoài nước để xây dựng kế hoạch và tổ chứcthực hiện phương án kinh doanh xuất - nhập khẩu, dịch vụ uỷ thác và các kếhoạch khác có liên quan của công ty
Tham mưu cho ban giám đốc trong quan hệ đối ngoại, chính sách xuất nhập khẩu, pháp luật của Việt Nam và quốc tế về hoạt động kinh doanh này.Giúp giám đốc chuẩn bị các thủ tục hợp đồng, thanh toán quốc tế và các hoạt
Trang 9 Giúp ban giám đốc các cuộc tiếp khách, đàm phán, giao dịch, ký kết hợpđồng với khách hàng nước ngoài
1.2 THỰC TRẠNG ỨNG DỤNG TIN HỌC TẠI CÔNG TY CỔ PHẦN THIẾT BỊ ĐIỆN BÌNH MINH
1.2.1 Thực trạng ứng dụng tin học tại công ty
Nhận thức được tầm quan trọng và lợi ích từ việc ứng dụng tin học trongcông tác quản lý và điều hành công ty Năm 2006, công ty đã triển khai kế hoạchphát triển các ứng dụng tin học vào trong quản lý Doanh nghiệp sử dụng các phầnmềm để quản lý như MS Words, MS Excel… đây là những phần mềm thông dụng
mà hầu hết các doanh nghiệp hiện nay đang áp dụng Trong năm 2006, công ty cổphần thiết bị điện Bình Minh cũng xây dựng website riêng của công ty(www.binhminh.com.vn) nhằm quảng bá hình ảnh công ty với khách hàng, và giớithiệu các sản phẩm của công ty
Các phần mềm nói trên mặc mặc dù tiện ích, phổ biến và dễ áp dụng nhưngnhân viên cũng gặp phải nhiều khó khăn riêng khi sử dụng như việc đưa ra các báocáo, tìm kiếm thông tin…
1.2.2 Nhu cầu tin học hóa của hệ thống
Qua quá trình khảo sát hệ thống đã nắm bắt được những thông tin và nhữngyêu cầu của hệ thống quản lý bán hàng Quy trình nghiệp vụ quản lý bán hàng phảitổng hợp thông tin mặt hàng từ kho hàng, thông tin của hệ thống đòi hỏi sự chínhxác về thông tin tuyệt đối Đối với công ty thì thông tin về hàng hoá là rất lớn và đadạng Để đáp ứng nhu cầu tổng hợp thông tin, kết xuất thông tin, tìm kiếm, xem,sửa… độ an toàn, nhanh nhạy, chính xác thì không thể làm theo phương pháp thủcông được mà phải bắt buộc tin học hoá gần như hoàn toàn quy trình trong hệthống Chỉ có việc lập đơn hàng, việc đưa ra điều kiện kết xuất, lọc, điều kiện tổnghợp… là thực hiện bán tự động Điều này cũng là điều cần thiết của hệ thống thôngtin mà thông tin này bắt buộc phải được cung cấp từ bên ngoài Ngoài ra yêu cầu an
Trang 10toàn về dữ liệu là điều cần thiết với các công việc nói chung và rất cần thiết đối vớicông việc kinh doanh Dữ liệu phải được bảo vệ sao cho chỉ có những người cónhiệm vụ mới được quyền xem xét và sửa dữ liệu
Hiện nay có rất nhiều phần mềm ứng dụng trong quản lý doanh nghiệp ví dụ
cơ sở dữ liệu Foxpro, Access…Trước đây những chương trình này được ứng dụnggiúp ích được nhiều cho các nhà quản lý doanh nghiệp nhưng giờ đây với yêu cầucông việc đòi hỏi tính tiện dụng cao, thân thiện với người dùng, dễ sử dụng manglại hiệu quả cao trong công việc…Chính vì Visual Basic, Visual Basic.net…để xâydựng phần mềm quản lý theo yêu cầu công việc, giúp cho các nhà doanh nghiệpkhông mất nhiều thời gian tổng hợp báo cáo và nắm bắt được thông tin mới nhất để
có được các quyết định đúng cho công việc của mình
Dựa vào tiềm năng của máy tính thực thi của hệ thống để xử lý nghiệp vụbán hàng nhằm giảm thiểu mọi khó khăn, chi phí đảm bảo thông tin công ty luônchính xác Hệ thống được xây dựng mang tính khách quan sát thực, thân thiện vớingười sử dụng đưa ra những hỗ trợ sử dụng và cả về nghiệp vụ giúp công tác bánhàng và kinh doanh của công ty luôn mang lại hiệu quả cao
1.3 KHÁI QUÁT VỀ ĐỀ TÀI NGHIÊN CỨU
1.3.1 Lý do chọn đề tài
Công ty cổ phần thiết bị điện Bình Minh là một doanh nghiệp lớn, thị trườngsản phẩm thiết bị điện chiếm 20% thị phần trong cả nước Với dòng sản phẩm caocấp, giá trị lớn, được khách hàng ưa chuộng Quy mô doanh nghiệp có xu hướngngày càng mở rộng, hàng năm lượng sản phẩm nhập vào và bán ra tăng rõ rệt, năm
2008 doanh số bán hàng đạt hơn 7000 sản phẩm các loại, chính vì vậy việc quản lýbán hàng lại càng được coi trọng Với lượng sản phẩm lớn như vậy cùng hệ thốngphân phối rộng khắp cả nước thì việc đảm bảo chính xác các con số bán hàng, cácthông tin liên quan là cần thiết Bên cạnh đó, công ty cần lưu trữ thông tin về kháchhàng, các thông tin liên quan đến hàng bán ra, hoá đơn bán hàng, các thông tin vềviệc nhập hàng về các showroom, nhắc nhở khách hàng về thời hạn bảo hành, hỗ trợcác nghiệp khác như bảo hành, bảo dưỡng định kỳ cho sản phẩm, làm thủ tục hànhchính khác chính vì vậy mà việc xây dụng một phần mềm quản lý bán hàng tại công
ty cổ phần thiết bị điện Bình Minh là rất cần thiết
Trong thời gian thực tập tại công ty cổ phần thiết bị điện Bình Minh,em đãđược tìm hiểu về cơ cấu tổ chức cũng như hoạt động của công ty và đặc biệt là được
Trang 11tiếp xúc với hệ thống tin học ở đây Cụ thể là tại phòng kinh doanh của công ty, em
đã xem xét các nghiệp vụ bán hàng, nghiệp vụ nhận hàng, các thông tin liên quanđến khách hàng, sản phẩm…và việc ứng dụng tin học trong quản lý bán hàng Hệthống quản lý bán hàng liên quan đến hệ thống báo cáo thống kê, hệ thống lưu trữthông tin khách hàng, lưu trữ hàng hoá…mặc dù hệ thống này đang trực tiếp manglại hiệu quả đáng kể cho quá trình quản lý hoạt động bán hàng của công ty nhưng
nó cũng bộc lộ những yếu kém như việc hỗ trợ liên hệ khách hàng, hỗ trợ tìm kiếm,sửa đổi thông tin đã lưu trước đó, hỗ trợ việc quản lý người dùng, tính bảo mật của
hệ thống, và việc đưa ra các báo cáo quản trị…chính vì vậy cần đưa vào trong hệthống này một phần mềm có tính chuyên nghiệp, chuyên dụng hơn, để có thể khaithác tối đa tiềm năng của hệ thống
Chính từ những lý do trên mà em lựa chọn đề tài “Xây dựng phần mềm quản lý bán hàng tại công ty cổ phần thiết bị điện Bình Minh”.
1.3.2 Hướng phát triển đề tài
Để xây dựng được hệ thống quản lý bán hàng với độ chính xác và tính thực
tế cao thì yêu cầu cần phải khảo sát thông tin của hệ thống phải chi tiết và chính xácđến việc phân tích dữ liệu đầu vào, ra được chính xác Mô phỏng quy trình bán hànglưu trữ thông tin liên quan, thu thập các mẫu biểu quan trọng Trên cơ sở nhữngthông tin đã thu thập được tiến hành xây dựng sơ đồ chức năng nghiệp vụ
Thiết kế giao diện của hệ thống thân thiện, dễ sử dụng Lập dự kiến xây dựng
cơ sở dữ liệu cho hệ thống phân tích đánh giá được phạm vi lưu trữ, độ an toàn của
dữ liệu khi vận hành, điều này ảnh hưởng đến toàn bộ hệ thống kinh doanh củacông ty
Kết quả cuối cùng hệ thống phải có tính ưu việt: khả năng xử lý được lượngthông tin lớn, chính xác, lưu trữ khoa học thuận tiện và an toàn hơn hệ thống cũ Hệthống tạo ra phải hỗ trợ tới mức tối đa trong công việc quản lý hàng của công ty
Để có một hệ thống toàn diện mang tính thống nhất về cả dữ liệu và giaodiện của hệ thống thì phải xét đến hệ thống quản lý của công ty Có nghĩa là tồn tại
ba mảng lớn trong hệ thống quản lý:
1 Nhập hàng hoá và nghiệp vụ có liên quan
2 Lưu trữ và nghiệp vụ liên quan
3 Bán hàng
Với phạm vi bài tập môn học và với kiến thức hiện có của người lập trình cố
Trang 12thu thập dữ liệu, tìm hiểu chuyên môn nghiệp vụ, thu thập, phân tích dữ liệu đi đếngiải quyết các khâu trong nghiệp vụ bán hàng đạt kết quả cao Ngoài ra mở rộngcông tác tìm kiếm kết xuất thông tin hay loại bỏ, hỗ trợ việc bán hàng một cáchchính xác và nhanh chóng, thuận tiện, như việc tìm kiếm đơn đặt hàng, hoá đơn bánhàng, bảng giá, thống kê tình hình bán sản phẩm.
Trang 13CHƯƠNG 2
CƠ SỞ PHƯƠNG PHÁP LUẬN VỀ PHẦN MỀM ỨNG DỤNG
2.1 TỔNG QUAN CHUNG VỀ CÔNG NGHỆ PHẦN MỀM
2.1.1 Khái niệm phần mềm
Phần mềm của máy tính là các chương trình, các cấu trúc dữ liệu làm chochương trình xử lý được những thông tin thích hợp và các tài liệu mô tả phươngthức sử dụng các chương trình ấy
2.1.2 Phân loại phần mềm
Có nhiều cách phân loại phần mềm Theo một cách được nhiều người thừanhận thì phần mềm được chia làm hai loại chính: Phần mềm hệ thống và phần mềmứng dụng
2.1.2.1 Phần mềm hệ thống
Phần mềm hệ thống là các chương trình hướng dẫn những hoạt động cơ bảncủa một máy tính như hiện thông tin trên màn hình, lưu trữ dữ liệu trên đĩa từ, in kếtquả, liên lạc với các thiết bị ngoại vi, phân tích và thực hiện các lệnh của ngườidùng Các chương trình thuộc phần mềm hệ thống giúp cho phần cứng của máy tínhhoạt động một cách có hiệu quả
Các chương trình thuộc phần mềm hệ thống được chia làm bốn loại sau đây:
Hệ điều hành:
Hệ điều hành là hệ thống các chương trình chạy trên máy tính để quản lý, điềuhành các thiết bị phần cứng và các tài nguyên phần mềm trên máy tính Hệ điềuhành đóng vai trò trung gian trong việc giao tiếp giữa người sử dụng và phần cứngcủa máy tính Nó cung cấp một môi trường cho phép người sử dụng phát triển vàthực hiện các ứng dụng của họ một cách dễ dàng
Các chương trình tiện ích:
Các chương trình tiện ích là một bộ phận của phần mềm hệ thống nhằm bổsung thêm các dịch vụ cần cho nhiều người mà hệ điều hành chưa đáp ứng được.Câc chương trình hệ thống thực hiện các nhiệm vụ như soạn thảo các đĩa từ để lưu
Trang 14trữ dữ liệu, cung cấp thông tin về các tệp trên đĩa, sao chép dữ liệu từ đĩa này sangđĩa khác Norton Utilities do công ty Symantec xuất bản là một bộ sưu tập cácchương trình tiện ích được dùng rất phổ biến Bộ chương trình này có thể sửa chữanhững dữ liệu trên các đĩa từ bị hỏng, bảo mật dữ liệu một cách chắc chắn hơn bằngcách dấu kín các tệp hay giúp người dùng giải quyết các vấn đề trục trặc của ổ đĩa.
Các chương trình dịch
Các chương trình dịch là các chương trình giúp dịch các chương trình viếtbằng ngôn ngữ thuật toán ra ngôn ngữ máy hợp thành một bộ phận của phần mềm
hệ thống
Các chương trình điều khiển thiết bị
Các chương trình điều khiển thiết bị là những chương trình giúp máy tính điềukhiển thiết bị nào đó, có thể là thiết bị ra vào chuẩn hay thiết bị ngoại vi
Phần mềm kinh doanh là các chương trình xử lý thông tin có tính chất lặp lạitheo chu kỳ
Phần mềm giải trí là các chương trình được thiết kế với mục đích giải trí, tiêukhiển
Phần mềm giáo dục và tham khảo là các chương trình được thiết kế với mụcđích cung cấp kiến thức hiểu biết, khai thác tính năng của phần cứng và phần mềm
Trang 152.1.3 Khái niệm công nghệ phần mềm
2.1.3.1 Khái niệm công nghệ phần mềm
Công nghệ phần mềm là tổ hơp các công cụ, phương pháp và thủ tục làm chongười quản trị viên dự án nắm được xu thế tổng quát phát triển của phần mềm vàgiúp cho kỹ sư lập trình có một nền tảng để triển khai các định hướng của phầnmềm
2.1.3.2 Khái quát vòng đời phát triển phần mềm.
Vòng đời phát triển phần mềm là các bước phát triển một sản phẩm phần mềm
cụ thể Một vòng đời phát triển phần mềm thường có các pha cơ bản sau:
Pha xác định yêu cầu: khám phá các khái niệm liên quan đến việcphát triển phần mềm, xác định chính xác yêu cầu và các ràng buộc của khách hàngvới sản phẩm phần mềm đó
Pha phân tích: mô tả các chức năng cơ bản của phần mềm, phân tích
dữ liệu được đưa vào và các thông tin đầu ra mà phần mềm cần đáp ứng Khám phácác khái niệm liên quan đến sản phẩm phần mềm và bước đầu đưa ra giải pháp xâydụng phần mềm
Pha thiết kế: xác định cụ thể phần mềm sẽ được xây dựng như thếnào Pha thiết kế bao gồm: thiết kế kiến trúc phần mềm, thiết kế dữ liệu, thiết kếgiải thuật, thiết kế giao diện Đây là giai đoạn quan trọng quyết định tới chất lượngsản phẩm phẩn mềm
Pha kiểm thử: giai đoạn kiểm thử là giai đoạn tập trung vào phầnlogic bên trong của phần mềm, đảm bảo rằng tất cả các câu lệnh đều được kiểm traphát hiện lỗi và kết quả phù hợp với dữ liệu vào - ra
Pha vận hành và bảo trì: sau khi bàn giao phần mềm cho kháchhàng, để hoàn toàn tương thích với các điều kiện quản lý của cơ sở thực tế cần phải
có giai đoạn bảo trì phần mềm nhằm sửa chữa hoặc nâng cấp theo yêu cầu người sửdụng
2.1.4 Các yêu cầu trong quá trình xây dựng phần mềm
2.1.4.1 Xác định và phân tích rõ yêu cầu phần mềm
Mục đích: xác định được phần mềm đáp ứng được các yêu cầu và mong muốn
Trang 16gì từ phía khách hàng – người sử dụng
Nội dung của quá trình xác định yêu cầu phần mềm:
Thu thập và nghiên cứu các hồ sơ, các tệp cùng các phương thức xử lý thôngtin
Thu thập và mô tả các nguyên tắc quản lý, tức là các quy định, các công thức
do nhà nước hoặc các cơ quan đưa ra nhằm làm căn cứ cho quá trình xử lý thôngtin
Thu thập các chứng từ giao dịch và mô tả các chu trình lưu chuyển và xử lýcác thông tin và tài liệu giao dịch
Mô tả quy trình nghiệp vụ có liên quan
Thu thập các đòi hỏi về thông tin, yêu cầu khách hàng, nguyện vọng và kếhoạch trong tương lai
Đánh giá và đề xuất hướng giải quyết
Các yêu cầu đối với quá trình thực hiện xác định yêu cầu:
Trung thực, khách quan, phản ánh đúng thực trạng hiện tại
Không bỏ sót thông tin
Các thông tin thu thập phải được đo đếm (số lượng, tần suất, độ chính xác,thời gian sống…)
Các nguồn điều tra: có nhiều nguồn thông tin trong hệ thống được khai tháccho mục đích điều tra, bao gồm: Người dùng hệ thống, các sổ sách, tài liệu, cácchương trình máy tính, các tài liệu mô tả quy trình, chức trách, các chứng từ liênquan
Hai phương pháp điều tra thường được áp dụng:
Phương pháp nghiên cứu tài liệu: Đây là phương pháp điều tra gián tiếp,thông qua việc nghiên cứu các loại chứng từ giao dịch như hóa đơn, phiếu thanhtoán, phiếu nhập hàng, phiếu xuất kho… hoặc các loại sổ sách, các tệp tài liệu tổnghợp như kế hoạch, thống kê, biên bản, nghị quyết…
Phương pháp phỏng vấn: Trực tiếp gặp gỡ những người có liên quan đến hệthống Người điều tra đưa ra các câu hỏi và chắt lọc các thông tin cần thiết từ những
Trang 17câu trả lời
Phương pháp phiếu điều tra: Khi cần lấy thông tin từ một số lượng lớn cácđối tượng và trên một phạm vi địa lý rộng thì dùng phiếu điều tra Yêu cầu các câuhỏi trên phiếu điều tra cần rõ ràng, dễ hiểu
Bên cạnh ba phương pháp trên còn có phương pháp quan sát Tuy nhiên việcthực hiện phương pháp này cũng gặp khó khăn vì đối tượng bị quan sát sẽ có phánứng hoặc thực hiện các công việc không tự nhiên hoặc khác với thông thường Nhưvậy,cần lựa chọn các phương pháp điều tra, tùy thuộc vào môi trường và nhu cầuthông tin cần có
Phân tích viên cần tiến hành xác định các yêu cầu người sử dụng bởi bản thânngười sử dụng cũng mơ hồ về các chức năng của phần mềm mà họ cần, các yêu cầucủa họ có thể thay đổi và tất nhiên nó ảnh hưởng tới việc xác định chức năng vànghiệp vụ cần thiết của phần mềm cũng như các quá trình xây dựng phần mềm saunày Chính vì vậy quát trình xác định yêu cầu phần mềm cần tiến hành cẩn trọng,chính xác, tỉ mỉ
Phân tích yêu cầu phần mềm:
Sau khi đã có được kết quả của quá trình xác định yêu cầu phần mềm, phântích viên cần tiến hành phân tích chi tiết các yêu cầu phần mềm Phân loại các yêucầu phần mềm và sắp xếp chúng theo các nhóm liên quan Khảo sát tỉ mỉ từng yêucầu phần mềm trong mối quan hệ của nó với các yêu cầu phần mềm khác Kiểm tratừng yêu cầu phần mềm theo các tính chất: phù hợp, đầy đủ, rõ ràng, không trùnglặp Phân cấp các yêu cầu phần mềm dựa theo nhu cầu và đòi hỏi của người sửdụng Kiểm tra từng yêu cầu phần mềm xem chúng có khả năng thực hiện đượctrong môi trường kỹ thuật hay không, có khả năng kiểm định các yêu cầu phần mềmhay không và xác định các rủi ro có thể xảy ra với từng yêu cầu phần mềm Đánhgiá thô (tương đối) về thời gian thực hiện từng yêu cầu phần mềm và thời gian hoànthành phần mềm
Trong giai đoạn phân tích yêu cầu phần mềm, phân tích viên dùng một sốcông cụ mô hình hóa hỗ trợ cho quá trình phân tích: sơ đồ chức năng BFD, sơ đồluồng dữ liệu DFD, sơ đồ luồng thông tin IFD, các lưu đồ
Sơ đồ luồng thông tin
Trang 18Sơ đồ luồng thông tin được dùng để mô tả hệ thống thông tin theo cách thứcđộng Tức là mô tả sự di chuyển của dữ liệu, việc sử lý, việc lưu trữ trong thế giớivật lý bằng sơ đồ khối.
Các ký pháp của sơ đồ luồng thông tin như sau:
Xử lý:
Kho lưu trữ dữ liệu:
Dòng thông tin: Điều khiển
Hình 2.1 Các ký pháp sử dụng trong sơ đồ luồng thông tin
Lưu ý:
Dòng thông tin vào ra với kho dữ liệu không cần phải có mũi tên chỉ hướng
Có thể dùng thêm một số ký tự khác như màn hình, đĩa từ
người-máy
Tin học hóa hoàn toàn
Tài liệu
Trang 19Sơ đồ luồng dữ liệu:
Sơ đồ luồng dữ liệu dùng để mô tả hệ thống thông tin nhưng trên góc độ trừu tượng.Trên sơ đồ chỉ bao gồm: Các luồng dữ liệu, các xử lý, các lưu trữ dữ liệu, nguồn và đích nhưng không hề quan tâm tới nơi, thời điểm chịu trách nhiệm xử lý Sơ đồ luồng dữ liệu chỉ mô tả đơn thuần hệ thống thông tin làm gì và để làm gì
Ký pháp dùng cho sơ đồ luồng dữ liệu (DFD)
Ngôn ngữ sơ đồ luồng dữ liệu DFD sử dụng bốn ký pháp cơ bản sau: Thực thể, tiến trình, kho dữ liệu, dòng dữ liệu
Hình 2.2 Các ký pháp sử dụng trong sơ đồ luồng dữ liệu
Các mức của DFD:
Sơ đồ ngữ cảnh: Thể hiện rất khái quát nội dung chính của hệ thống thông tin Sơ
đồ này không đi vào chi tiết, mà mô tả sao cho chỉ cần một lần nhìn là nhận ra nội dung chính của hệ thống Để cho sơ đồ ngữ cảnh sáng sủa, dễ nhìn có thể bỏ qua các kho dữ liệu; bỏ qua các xử lý cập nhật Sơ đồ ngữ cảnh còn gọi là sơ đồ mức 0
Trang 20Phân rã sơ đồ
Để mô tả hệ thống chi tiết hơn người ta dùng kỹ thuật phân rã sơ đồ Bắt đầu từ sơ
đồ ngữ ngữ cảnh, người ta phân rã thành sơ đồ mức 1, mức 2…
Một số quy ước và quy tắc liên quan tới DFD
Mỗi luồng dữ liệu phải có một tên trừ luồng dữ liệu giữa xử lý và kho dữ liệu
Dữ liệu chứa hai vật mang tên khác nhau nhưng luôn đi cùng nhau thì chỉ cầntạo ra một luồng dữ liệu duy nhất
Xử lý luôn phải được đánh số 1.0, 1.1…
Vẽ lại các kho dữ liệu để các luồng dữ liệu không cắt nhau
Tên cho xử lý phải là một động từ
Xử lý phải thực hiện một biến đổi dữ liệu Luồng vào phải khác luồng ra từ một xử lý
Đối với việc phân rã DFD
Thông thường một xử lý mà logic xử lý của nó được trình bày bằng ngôn ngữ có cấu trúc chỉ chiếm một trang giấy thì không cần phải phân rã tiếp
Cố gắng chỉ để 7 xử lý tối đa trên một DFD
Tất cả các xử lý trên một DFD phải thuộc cùng một mức phân rã
Luồng vào của một DFD mức cao phải là luồng vào của một DFD mức thấp nào đó Luồng ra tới đích của một DFD con phải là luồng ra tới đích của một DFD mức lớn hơn nào đó Đây gọi là nguyên tắc cân đối của DFD
2.1.4.2 Hoàn chỉnh thiết kế phần mềm.
Quy trình thiết kế phần mềm bao gồm các công đoạn sau:
Thiết kế kiến trúc
Thiết kế kỹ thuật
Thiết kế cơ sở dữ liệu
Thiết kế giải thuật
Trang 21 Thiết kế giao diện.
a Thiết kế kiến trúc phần mềm
Mục đích: Sự phân chia này nhằm giảm thiểu sự phức tạp và cồng kềnh hoặc tạo ra
sự thuận lợi cho việc tiến hành các quy trình về sau và thuật tiện cho người sử dụngphần mềm Kỹ sư lập trình có thể sử dụng sơ đồ chức năng kinh doanh để biểu diễnkiến trúc phần mềm Sơ đồ chức năng kinh doanh (Business Function Diagrama –BFD) là loại sơ đồ biểu diễn sự phân ra các chức năng từ tổng thể đến chi tiết Đặcđiểm của BFD là: Mô tả từ tổng thể đến chi tiết các chức năng phần mềm
Dễ dàng thành lập bằng cách phân rã các chức năng từ trên xuống
Có tính chất tĩnh bởi chúng chỉ cho thấy các chức năng mà không cho thấytrình tự xử lý
b Thiết kế cơ sở dữ liệu
Cơ sở dữ liệu được hiểu là tập hợp các bảng có liên quan với nhau được tổ chức vàlưu trữ trên các thiết bị hiện đại của tin học, chịu sự quản lý của một hệ thốngchương trình máy tính, nhằm cung cấp thông tin cho nhiều người sử dụng khácnhau, với mục đích khác nhau
Hệ quản trị cơ sở dữ liệu (HQTCSDL) là một phần mềm ứng dụng giúp chúng tatạo ra và lưu trữ, tổ chức và tìm kiếm dữ liệu từ một cơ sở dữ liệu đơn lẻ hoặc một
số cơ sở dữ liệu Microsoft Access, Foxpro là những ví dụ về HQTCSDL thôngdụng trên máy tính
Trong giai đoạn này, dựa trên hồ sơ đặc tả và kết quả của quá trình phân tích và xácđịnh yêu cầu phần mềm, kỹ sư phần mềm tiến hành thiết kế cơ sở dữ liệu cho phầnmềm Một trong số phương pháp thiết kế cơ sở dữ liệu phần mềm được sử dụng là:Phương pháp thiết kế cơ sở dữ liệu đi từ thông tin đầu ra
Thiết kế cơ sở dữ liệu đi từ các thông tin đầu ra:
Các bước tiến hành như sau:
Bước 1: xác định các đầu ra
Liệt kê toàn bộ các thông tin đầu ra
Nội dung, khối lượng, tần suất, nơi nhận của chúng
Trang 22Bước 2 Xác định các tệp cần thiết cung cấp dữ liệu cho việc tạo ra từng đầu ra
Liệt kê các phần tử thông tin đầu ra:
Trên mỗi thông tin đầu ra bao gồm các phần tử thông tin Ví dụ trong mộthóa đơn bán hàng của một công ty bán lẻ, phần tử thông tin đầu ra bao gồm:
Số hóa đơn, tên hàng, đơn vị tính…và được gọi là các thuộc tính Phân tíchviên liệt kê toàn bộ các thuộc tính thành một danh sách Đánh giấu các thuộctính có thể nhận nhiều giá trị dữ liệu đây được gọi là thuộc tính lặp Ví dụnhư thuộc tính mã hàng trên hóa đơn bán hàng có thể nhận nhiều giá trị khácnhau
Đánh giấu các thuộc tính thứ sinh là những thuộc tính được tính toán hoặcsuy ra từ các thuộc tính khác Ví dụ: Thành tiền = đơn giá * số lượng, nhưvậy thuộc tính thành tiền là thuộc tính thứ sinh
Gạch chân các thuộc tính khóa cho thông tin đầu ra Ví dụ số hóa đơn làthuộc tính khóa cho danh sách các thuộc tính đầu ra của “Hóa đơn bán hàng”
Loại bỏ các thuộc tính thứ sinh khỏi danh sách, chỉ để loại các thuộc tính cơ
sở Xem xét và loại bỏ các thuộc tính không có ý nghĩa
Thực hiện việc chuẩn hóa mức 1(1.NF)
Chuẩn hóa mức 1 (1.NF) quy định rằng trong mỗi danh sách không đượcphép chứa những thuộc tính lặp Nếu có các thuộc tính lặp thì phải tách thuộctính lặp ra thành các danh sách con, có một ý nghĩa dưới góc độ quản lý
Gắn thêm cho nó một tên, tìm thêm cho nó một thuộc tính định danh riêng vàthêm thuộc tính định danh của danh sách gốc
Thực hiện chuẩn hóa mức 2 (2 NF)
Chuẩn hóa mức 2(2.NF) quy định rằng, trong một danh sách mỗi thuộc tínhphải phụ thuộc hàm vào toàn bộ khóa chứ không phụ thuộc vào một phần củakhóa Nếu có sự phụ thuộc như vậy thì phải tách những thuộc tính phụ thuộchàm vào bộ phận của khóa thành một danh sách con mới
Lấy bộ phận khóa đó làm khóa cho danh sách mới Đặt cho danh sách nàycái tên riêng sao cho phù hợp với nội dung các thuộc tính trong danh sách.Thực hiện chuẩn hóa mức 3 (3.NF)
Trang 23Chuẩn hóa mức 3 (3.NF) quy định rằng, trong một danh sách không được phép có
sự phụ thuộc bắc cầu giữa các thuộc tính Nếu thuộc tính Z phụ thuộc hàm vàothuộc tính Y và thuộc tính Y phụ thuộc hàm vào thuộc tính X thì phải tách chúngvào hai danh sách chứa quan hệ Z, Y và danh sách chứa quan hệ Y và X Xác địnhkhóa và tên cho danh sách mới
Bước 3: Mô tả các tệp
Mỗi danh sách xác định sau bước chuẩn hóa mức 3 (3NF) sẽ là một tệp cơ sở dữliệu Biểu diễn các tệp theo ngôn ngữ của cơ sở dữ liệu về tệp Tên tệp viết chữ inhoa, nằm phía trên, các thuộc tính nằm trong các ô, thuộc tính khóa được gạch chân
Từ mỗi đầu ra theo cách thực hiện của bước hai sẽ tạo ra rất nhiều danh sách, mỗidanh sách là liên quan đến một đối tượng quản lý, có sự tồn tại riêng tương đối độclập Những danh sách nào cùng mô tả về một thực thể thì phải tích hợp lại, nghĩa làtạo thành một danh sách chung, bằng cách tập hợp các thuộc tính chung và riêngcủa danh sách đó
Bước 4: Xác định logic giữa các tệp và thiết lập sơ đồ cấu trúc dữ liệu
Xác định mối liên hệ giữa các tệp, biểu diễn chúng bằng mũi tên hai chiều, và mũitên một chiều nếu là quan hệ một – nhiều Biểu diễn các tệp và vẽ sơ đồ liên kếtgiữa các tệp
c Thiết kế giải thuật
Giải thuật là một dãy các quy tắc chặt chẽ xác định một trình tự các thao tác trênmột đối tượng cụ thể để giải quyết một vấn đề hoặc để hoàn thành một mục đíchcuối cùng nào đó
Thiết kế giải thuật được thực hiện bởi ba cấu trúc điều khiển sau đây:
Cấu trúc tuần tự: Các bước thực hiện theo trình tự một cách chính xác, mỗibước được thực hiện đúng một lần
Cấu trúc chọn lọc: Một hoặc nhiều thao tác được chọn và thực hiện
Cấu trúc chu trình: Một hoặc nhiều bước được thực hiện lặp lại
Phương pháp thiết kế giải thuật:
Khái niệm module hóa:
Trang 24Mỗi module có thể coi như một đơn thể chương trình độc lập có thể lắp ghép vớinhau Module hóa là phân chia bài toán lớn thành các bài toán nhỏ hơn, ngày càng
cụ thể hơn và chi tiết hơn theo sơ đồ cấu trúc hình cây sau:
Hình 2.4 Ví dụ về sơ đồ cấu trúc hình cây.
Nếu coi bài toán chính là module bậc 1 thì module này lại được phân chia thành cácmodule bậc 2, bậc 3…theo cấu trúc hình cây Mỗi module sẽ giải quyết một bài toánnhỏ riêng rẽ, độc lập với các module khác
Phương pháp thiết kế từ trên xuống
Đây là một phương pháp thiết kế giải thuật dựa trên tư tưởng module hoá Nội dungcủa phương pháp này như sau: Trước hết người ta xác định các vấn đề chủ yếu nhất
mà việc giải quyết bài toán yêu cầu, bao quát được toàn bộ bài toán Sau đó phânchia nhiệm vụ cần giải quyết thành các nhiệm vụ cụ thể hơn, tức là chuyển dần từmodule chính đến các module con từ trên xuống dưới
Phương pháp thiết kế từ dưới lên
Phương pháp này áp dụng cho những đơn vị mà trong tổ chức trước đó đã ứngdụng tin học ở một số bộ phận Tư tưởng của phương pháp này là: Trước hết người
ta tiến hành giải quyết các vấn đề cụ thể, sau đó trên cơ sở đánh giá mức độ tương
tự về chức năng của các vấn đề này trong việc giải quyết bài toán, người ta gộpchúng lại thành từng nhóm cùng chức năng từ dưới lên trên cho đến module chính.Tiếp đó sẽ thiết kế thêm một số chương trình làm phong phú hơn, đầy đủ hơn chức
Trang 25năng của các phân hệ và cuối cùng là thiết kế một chương trình làm nhiệm vụ tậphợp các module thành một hệ chương trình thống nhất, hoàn chỉnh.
Phương pháp diễn đạt giải thuật:
Để diễn đạt giải thuật người ta có thể dùng 3 phương pháp sau đây:
Phương pháp 1: Diễn đạt giải thuật bằng lời
Phương pháp 2: Diễn đạt giải thuật bằng sơ đồ khối
Phương pháp 3: Diễn đạt giải thuật bằng một ngôn ngữ lập trình có cấu trúc
Phương pháp diễn đạt giải thuật bằng sơ đồ khối:
Tư tưởng của phương pháp này dựa trên ý tưởng chủ đạo của giải thuật là tiến hànhxây dựng các khối biểu diễn các quy trình tính toán và mối liên hệ giữa các khối vớinhau
Phương pháp biểu diễn thuật toán bằng sơ đồ khối cho ta cái nhìn tổng thể vềphương pháp giải quyết bài toán đặt ra Trên cơ sở sơ đồ khối người ta dễ dàngchuyển thành chương trình trong một ngôn ngữ lập trình cụ thể
Trang 26Quy định: Trong sơ đồ khối người ta sử dụng một số hình vẽ sau:
Hinh:.Các ký pháp sử dụng để vẽ sơ đồ khối
Đưa dữ liệu từ bàn phím vào máy và lưuvào trong bộ nhớ
Điều kiện kiểm tra của chương trình
5
Đưa dữ liệu ra màn hình
Đưa dữ liệu từ bộ nhớ trong ra màn hình máy tính
6
Kết thúc
Kết thúc chương trình
Trang 272.1.4.3Thiết kế giao diện.
Nguyên tắc thiết kế màn hình nhập liệu:
Đặt mọi thông tin gắn liền với một nhiệm vụ trên cùng một màn hình Người
sử dụng không phải nhớ thông tin từ màn hình này sang màn hình khác
Chỉ dẫn rõ ràng cách thoát khỏi màn hình Đặt giữa các tiêu đề và xếp đặtthông tin theo trục trung tâm
Nếu đầu ra của màn hình là nhiều trang màn hình thì mỗi trang nên đánh sốthứ tự
Viết văn bản dưới quy ước chung: Chữ in hoa, in thường, gạch chân…vàngắt câu hợp lý
Đặt tên đầu cột cho mỗi cột
Tổ chức các phần tử của danh sách theo trật tự quen thuộc trong quản lý
Căn trái các cột văn bản và căn phải các cột số Bảo đảm vị trí đầu thập phânthẳng hàng
Chỉ đặt màu cho những thông tin quan trọng
Nguyên tắc trình bày thông tin trên màn hình:
• Về mặt từ ngữ: Mỗi thực đơn phải có tiêu đề rõ nghĩa, từ mục phải mô tả rõchức năng sẽ được thực hiện
• Về mặt tổ chức: Phân các thực đơn thuộc cùng một nhóm chức năng vàonhững mục riêng
• Về mặt kích thước và hình thức: Số lượng các mục trên thực đơn không nênvượt quá chiều dài màn hình Có thể dùng thực đơn nhiều cấp để thay thế nhữngthực đơn quá dài Thực đơn sử dụng tiếng Việt có dấu và có định nghĩa phím tắt tạođiều kiện sử dụng
2 2 CÔNG CỤ VÀ PHƯƠNG PHÁP GIẢI QUYẾT.
2.2.1 Giới Thiệu về Visual Basic 6.0 (VB 6.0).
Giới Thiệu Chung
Nguồn gốc : Là sản phẩm nằm trong bộ phần mềm của Visual Studio 98 của hãng
Trang 28MicroSoft ra đời năm 1998 Cho đến nay nó đã được cập nhật đến bản sửa lỗi 6.
VB 6.0 là ngôn ngữ lập trình đa năng sử dụng để phát triển các phần mềm hoạt độngtrong môi trường Window hay trên mạng Internet Nó là sự kế thừa từ ngôn ngữ lậptrình Basic với những ưu điểm chính:
Bao gồm những đặc điểm của Basic nên rất quen thuộc dễ dùng
Cung cấp nhiều công cụ điều khiển có sẵn để hỗ trợ cho lập trình viên nhất làtrong lập trình CSDL
Có cấu trúc chặt chẽ ở mức vừa phải rất dễ dàng để có thể học tập thành thạo.Các phiên bản của VB 6.0 :
Learning Editor: Là phiên bản cơ bản nhất nó cho phép viết nhiều kiểu ứngdụng khác nhau.Tuy nhiên nó không có sẵn một số công cụ điều khiển nhưcác phiên bản khác
Professional Editor: Là phiên bản thiết cho người dùng chuyên nghiệp nóchứa tất cả các tính năng và công cụ có trong phiên bản Learning Editor và
bổ sung thêm một số thư viện và công cụ điều khiển
EnterPrise Editor: Đây là phiên bản đầy đủ nhất giành cho phát triển ứngdụng chuyên nghiệp, nó chứa các công cụ để hỗ trợ lập trình theo nhóm
Ưu Điểm của VB
VB có thể giúp cho CSDL dễ bảo trì hơn: Nếu di chuyển một form hay mộtreport từ CSDL này sang CSDL khác thì thủ tục gắn vào form hay report đócũng di chuyển theo
Tạo hàm theo ý muốn: VB có thể tạo hàm theo ý muốn để tính những giá trịtheo những công thức quy định hay quy trình phức tạp
Báo lỗi hay xử lý lỗi: VB giúp phát hiện lỗi của người dùng, hiện những lỗithông báo dễ hiểu
Tạo và điều khiển đối tượng: VB cho phép điều khiển tất cả các đối tượngtrong CSDL và bản thân CSDL
Xử lý bản ghi: Có thể dùng VB để lần lượt xử lý từng bản ghi trong một
Trang 29trường hợp nào đó.
Truyền tham số đến các thủ tục: VB cho phép truyền tham số đến các thủ tụckhi đang thực hiện và có thể dùng các biến làm tham số
2.2.2 Hệ quản trị cơ sở dữ liệu Microsoft Access.
Từ cuối những năm 80, hãng Microsoft đã cho ra đời hệ điều hành Windows, đánhdấu một bước ngoặc trong phát triển các ứng dụng phần mềm trên nền Windows.Một trong những ứng dụng nổi bật nhất đi kèm lúc đó là bộ phần mềm tin học vănphòng Microsoft Office Một trong những phần mềm trong bộ phần mềm nói trên
đó là Microsoft Access – hệ quản trị cơ sở dữ liệu
Ứng dụng của MS Access có các đối tượng thuộc giao diện như thực đơn, dảicông cụ, hộp thoại…đều được thiết kế tương tự như các ứng dụng khác trong bộ MSOffice Việc trao đổi dữ liệu giữa MS Access và các ứng dụng khác trong môitrường Windows như Excel, Words, Visual Basic… cũng rất thuật tiện
Một cơ sở dữ liệu của MS Access được tạo lập bởi các thành phần:
Các bảng cơ sở dữ liệu (database)
Các bảng truy vấn (Query)
Các biểu mẫu (Form)
Các tập lệnh (Macro)
Các khái niệm về cơ sở dữ liệu Access
Cơ sở dữ liệu Access
Cơ sở dữ liệu Access là một đối tượng bao gồm tập hợp các bảng dữ liệu, các kếtnối giữa các bảng được thiết kế một cách phù hợp để phục vụ lưu trữ dữ liệu chomột ứng dụng quản lý dữ liệu nào đó
Bảng dữ liệu (table)
Bảng dữ liệu là một phần quan trọng nhất của CSDL Là nơi lưu trữ những dữ liệutác nghiệp cho ứng dụng Một CSDL có thể có rất nhiều bảng, các bảng phải đượcthiết kế sao cho có thể lưu trữ đầy đủ các dữ liệu cần thiết, đảm bảo giảm tối đa tìnhtrạng gây dư thừa dữ liệu (dư thừa dữ liệu được hiểu đơn giản là tình trạng lưu trữnhững dữ liệu không cần thiết trên một số bảng Tác hại của hiện tượng này là gây
Trang 30sai lệch dữ liệu tác nghiệp và làm tăng dung lượng dữ liệu không cần thiết); tạo môitrường thuận lợi cho việc phát triển ứng dụng trong các bước tiếp theo.
Một bảng cơ sở dữ liệu bao gồm các thành phần: Tên bảng, các trường dữ liệu,trường khóa, tập hợp các thuộc tính cần thiết cho mỗi trường dữ liệu và tập hợp cácthuộc tính cần thiết cho mỗi trường dữ liệu và tập hợp các bản ghi
Liên kết các bảng dữ liệu trong Access
Liên kết các bảng dữ liệu là một kỹ thuật trong thiết kế CSDL quan hệ Chúng làmối liên kết giữa hai bảng với nhau theo thiết kế cho trước để đảm bảo được mụcđích lưu trữ dữ liệu cho ứng dụng Trong Access tồn tại hai kiểu liên kết: liên kết 1-
Trang 31CHƯƠNG 3 THIẾT KẾ PHẦN MỀM QUẢN LÝ BÁN HÀNG TẠI
CÔNG TY CỔ PHẦN THIẾT BỊ ĐIỆN BÌNH MINH
3.1 KHẢO SÁT NGHIỆP VỤ QUẢN LÝ BÁN HÀNG
Quá trình quản lý bán hàng tại công ty cổ phần công nghệ Bảo Hưng được diễn ra theo quy trình như sau:
3.1.2.1 Giới thiệu nghiệp vụ
Kế toán là nghệ thuật thu nhận, xử lý và cung cấp thông tin về toàn bộ tài sản
và sự vận động của tài sản (hay là toàn bộ thông tin về tài sản và các hoạt động kinh
tế tài chính) trong doanh nghiệp nhằm cung cấp những thông tin hữu ích cho việc racác quyết định về kinh tế - xã hội và đánh giá hiệu quả của các hoạt động trongdoanh nghiệp
Để cung cấp thông tin về kinh tế tài chính thực sự hữu dụng về một doanhnghiệp, cần có một số công cụ theo dõi những hoạt động kinh doanh hàng ngày củadoanh nghiệp, trên cơ sở đó tổng hợp các kết quả thành các bản báo cáo kế toán
(Số lượng hàng tồn đầu kỳ)
(Đơn giá tồn đầu kỳ)
(Số lượng hàng nhập trong kỳ)
(Số lượng hàng tồn đầu kỳ) (Số lượng hàng nhập trong kỳ)
(Đơn giá hàng nhập trong kỳ)
+
xGiá Vốn =
Trang 32Những phương pháp mà một doanh nghiệp sử dụng để ghi chép và tổng hợp thànhcác báo cáo kế toán định kỳ tạo thành hệ thống kế toán.
Bán hàng là việc chuyển quyền sở hữu sản phẩm, hàng hoá gắn với phần lớnlợi ích và rủi ro cho khách hàng đồng thời được khách hàng thanh toán hoặc chấpnhận thanh toán Bán hàng là giai đoạn cuối cùng của hoạt động sản xuất kinhdoanh, đây là quá trình chuyển hoá vốn từ hình thái vốn sản phẩm, hàng hoá sanghình thái vốn tiền tệ hoặc vốn trong thanh toán Vì vậy, đẩy nhanh quá trình bánhàng đồng nghĩa với việc rút ngắn chu kỳ sản xuất kinh doanh, tăng nhanh vòngquay của vốn, tăng lợi nhuận của doanh nghiệp Kế toán bán hàng có nhiệm vụ phảiphản ánh và ghi chép đầy đủ, kịp thời, chính xác tình hình hiện có và sự biến độngcủa từng loại sản phẩm, hàng hoá theo chỉ tiêu số lượng, chất lượng, chủng loại, giátrị Đồng thời, cung cấp các thông tin kế toán phục vụ cho việc lập báo cáo tài chính
và định kỳ phân tích hoạt động kinh tế liên quan đến quá trình bán hàng
Hình thức kế toán mà công ty áp dụng để hạch toán là hình thức kế toán Nhật kíchung với hệ thống sổ sách sử dụng tương đối phù hợp với chế độ kế toán do Nhànước ban hành
a Nghiệp vụ nhập hàng
Sau khi có yêu cầu nhập hàng về cửa hàng, thì bộ phận kho sẽ gửi hàng đến Bêncạnh phiếu xuất kho là các chứng từ khác kèm theo Hàng hóa trước khi được nhận sẽđược kiểm tra xem đầy đủ giấy tờ kèm theo hàng và các dụng cụ đi kèm theo hàng Nếu
đã đầy đủ thông tin cần thiết về lô hàng thì phòng kinh doanh sẽ tiến hành viết phiếunhập kho và gửi lên phòng giám đốc, và kế toán Đồng thời tiến hành lưu các thông tin
cơ bản về hàng Với những hàng không đủ điều kiện nhập thì gửi lại kho Cuối tháng,phòng kinh doanh lên báo cáo về hàng nhập trong tháng gửi lên giám đốc
b Nghiệp vụ bán hàng
Khách hàng có yêu cầu mua hàng, nhân viên kinh doanh sẽ kiểm tra xem cònsản phẩm mà khách hàng yêu cầu hay không Nếu lượng hàng >0 thì có thể tiếnhành giao dịch Trong quá trình giao dịch, nhân viên cần lưu các thông tin về kháchhàng và sản phẩm được mua, hóa đơn bán hàng Quá trình thanh toán được thựchiện tại quầy
3.1.2.2 Quy trình quản lý bán hàng
Trang 33* Quá trình bán hàng là giai đoạn hay khâu cuối cùng của quá trình tái sản xuất xãhội và cũng là khâu cuối cùng trong toàn bộ quá trình hoạt động của doanh nghiệp.Sau quá trình này, doanh nghiệp sẽ thu được tiền bán hàng hay sẽ phải thu tiền vềtiền hàng Số tiền này dùng để bù đắp các chi phí bỏ ra và hình thành nên kết quảcủa doanh nghiệp Việc xác định đầy đủ kết quả bán hàng là thước đo đánh giá tìnhhình hoạt động của doanh nghiệp, là cơ sở để doanh nghiệp thực hiện các nghĩa vụđối với Ngân sách Nhà nước.
* Việc quản lý người mua tốt giúp công ty xác định được chính đối tượng kháchhàng chính, khách hàng ưu tiên, xác định được xu hướng tiêu dùng trên thi trườnghàng hóa Từ đó, đưa ra các quyết định quản trị phù hợp, đưa ra các chính sách đầu
tư, giảm gía hàng bán, chiết khấu mại…
* Quy trình quản lý bán hàng:
• Khi một khách hàng có yêu cầu mua hàng, Khách hàng có thể ghi nhữngthông tin cần thiết vào đơn đặt hàng như tên khách hàng, tên sản phẩm, số lượng sảnphẩm, chủng loại, Đơn Vị Tính, Ngày nhận hàng, Đơn vị nhận hàng Sau đó gửiĐơn đặt hàng cho phòng Kinh doanh - xuất nhập khẩu Trường hợp khách hàng yêucầu mua hàng bằng miệng thì Phòng Kinh Doanh – Xuất Nhập Khẩu có trách nhiệmlưu lại toàn bộ thông tin vào Đơn Đặt Hàng theo mẫu như trên
• Sau khi tiếp nhận Đơn Đặt hàng của Khách hàng, chuyên viên bán hàng cónhiệm vụ làm rõ yêu cầu của khách hàng như Số lượng, chủng loại, các điều kiệngiao hàng, phương thức thanh toán, các dịch vụ hậu mãi đối với Khách hàng
• Mọi thông tin của Đơn Đặt Hàng được Phòng Kinh Doanh – Xuất NhậpKhẩu gửi lên cho phòng Tài Chính Kế Hoạch để kiểm tra Công nợ của khách hàng:+ Nếu là khách hàng quen:là những khách hàng thường xuyên mua hàng của công
ty Nếu khách hàng còn nợ của công ty thì kế toán kiểm tra xem số nợ có vượt quámức quy định cụ thể của công ty hay không? Cụ thể là:
- Nếu số nợ của khách hàng đó vượt quá số quy định của công ty thì kế toán thôngbáo cho Phòng KD – XNK từ chối yêu cầu mua hàng của khách hàng và yêu cầuthanh toán số nợ cũ
- Nếu số nợ chưa vượt quá mức quy định của Công ty thì tiếp tục xuất hàng bán cho khách + Trường hợp khách hàng bất thường: là những khách hàng không thường xuyên
Trang 34mua hàng của công ty thì thực hiện bán hàng thông thường.
• Sau khi đã kiểm tra và đối chiếu công nợ của khách hàng, phòng Kinh Doanh– Xuất Nhập Khẩu sẽ căn cứ vào Đơn Đặt Hàng để cập nhập và in Phiếu Đề nghịxuất Vật tư hàng hoá bao gồm các thông tin về số lượng, ĐVT, tên sản phẩm, kíchthước…sau đó chuyển sang cho bộ phận Quản lý Kho Hàng
• Bộ phận Quản Lý Kho Hàng sau khi nhận được Phiếu Đề nghị xuất vật tưhàng hoá sẽ kiểm tra số lượng hàng tồn trong kho Khi đó:
+ Nếu số lượng hàng trong kho còn đủ để đáp ưng yêu cầu của khách hàng thì sẽ kývào Phiếu đề nghị xuất vật tư hàng hoá sau đó gửi lên cho phòng Tài Chính- Kếhoạch để lập Phiếu Xuất Kho cho hàng hoá đó
+ Nếu số lượng hàng không đủ để đáp ứng thì bộ phận Quản lý kho phải thông báolại cho phòng KD-XNK để thương lượng lại với khách hàng có thể lấy với số lượng
ít hơn đã yêu cầu hoặc chờ cho phân xưỏng sản xuất
• Phòng Tài Chính - Kế Hoạch trực tiếp lập Phiếu xuất kho gửi cho bộ phânQuản Lý Kho để xuất hàng cho khách hàng, đồng thời lưu lại Phiếu Xuất kho Sau
đó viết Hoá Đơn Bán hàng liên 2 và lập Phiếu Thu giao cho khách hàng, đồng thờilưu lại trong tủ hồ sơ của Công Ty
• Khi Khách Hàng yêu cầu trả lại hàng hoá không đảm bảo theo yêu cầu,phòng KD - XNK trực tiếp kiểm tra hàng hoá nhập về Sau đó yêu cầu phòng KếToán viết phiếu nhập kho cho từng loại hàng hoá gửi cho bộ phận quản lý kho nhậpkho hàng hoá đó và lưu vào sổ chứng từ nhập với đầy đủ thông tin về loại hàngnhập kho như: Tên Sản phẩm,số lượng, đơn giá, tên khách hàng, địa chỉ kháchhàng… Bộ phận thu chi sẽ viết phiếu chi tiền gửi cho khách hàng Tuỳ thuộc vàotình hình tài chính của công ty để thanh toán lại tiền hàng cho khách hàng hoặc đổihàng theo yêu cầu của khách hàng
• Bộ phận quản lý kho hàng có nhiệm vụ cập nhập những hàng hoá sau khi sảnxuất xong hoàn thành nhập kho viết, phiếu nhập kho cho từng hàng hoá thành phẩm.Cuối ngày, cuối tuần, cuối tháng tổng hợp số luợng hàng tồn trong kho và lập báocáo tổng hợp như báo cáo Tổng hàng xuất, tổng hàng nhập và số lượng còn tồn kho
• Hàng ngày, bộ phận Thu Chi Tiền căn cứ vào các hoá đơn bán hàng để lưuvào Sổ Nợ Phải Thu, Sổ Nợ Phải Trả của khách hàng.Cuối mỗi tháng, Bộ phận Thu
Trang 35Chi Tiền có nhiệm vụ hạch toán tổng số tiền thu, chi từ hoạt động bán hàng hàngngày, hàng tuần, hàng tháng và lập báo cáo Tổng thu và tổng chi để Kế ToánTrưởng hạch toán tổng hợp tháng đưa ra báo cáo tài chính và xác đinh kết quả kinhdoanh.
- Đưa ra Báo cáo về Tổng số lượng hàng xuất, nhập trong ngày, trong tuần,trong tháng theo yêu cầu ( có mẫu kèm theo)
- Đưa ra các thông số cần thiết về công việc bán hàng như: Số lượng của từngmặt hàng xuất bán để có thể so sánh xem mặt hàng nào bán được nhiều hơn, doanhthu của mặt hàng nào cao hơn
- Đưa ra Báo Cáo Tổng hàng nhập xuất tồn trong ngày, trong tháng theo yêucầu và quy định của nhà quản lý
- Hàng ngày căn cứ vào các chứng từ liên quan như phiếu thu tiền, phiếu chitiền, giấy báo có, giấy báo nợ của ngân hàng để đưa ra các báo cáo tổng hợp như:
Tính tổng nợ phải thu, nợ phải trả
Lập báo cáo Tồn kho vào cuối tháng( kèm theo mẫu)
Lập Báo cáo Xuất Nhập Tồn hàng ngày, tuần, tháng( Kèm theo mẫu)
Báo cáo kết quả hoạt động kinh doanh
Lập báo cáo Tống Hợp doanh thu hàng bán gửi lên cho Kế Toán TrưởngXác định kết quả kinh doanh bán là xác định kết quả tiêu thụ sản phẩm ,kinh doanhmua bán vật tư, hàng hoá cung cấp thực hiện lao vụ dịch vụ Đây chỉ là một chỉ tiêukinh tế quan trọng đánh gía sự phát triển và hiệu quả sản xuất kinh doanh của doanhnghiệp trong kỳ , đánh giá khả năng trình độ quản lý của các nhà doanh nghiệp và là
cơ sở để xác định nghĩa vụ phải thực hiện với Nhà nước Để phù hợp và thuận tiệncho việc tổng hợp số liệu lập các chỉ tiêu trên báo cáo kết quả hoạt động kinh doanhthì kết quả bán hàng được xác định theo trình tự sau:
Doanh thu thuần = Doanh thu bán hàng – Các khoản giảm trừ doanh thu
* Các khoản giảm trừ doanh thu gồm :
- Trị giá hàng bán bị trả lại
- Giảm giá hàng bán
Trang 36- Thuế tiêu thụ đặc biệt , thuế xuất khẩu
- Thuế GTGT đối với cơ sở nộp thuế theo phương thức trực tiếp
Lợi nhuận gộp = Doanh thu thuần – Giá vốn hàng bán
Lợi nhuận từ hoạt động bán hàng = Lợi nhuận gộp – CPBH – CPQLDN
Trang 37Đơn vị tính
Số lượng
Đơn giá
Thành tiền
Theo chứng từ
Thực nhập
Cộng:
Cộng thành tiền (Viết bẳng chữ)… … …
Nhập, ngày…tháng…nămThủ trưởng
đơn vị
(Ký, họ tên)
Kế toántrưởng(Ký, họ tên)
Phụ trách cungtiêu(Ký, họ tên)
Người giaohàng(Ký, họ tên)
Thủ kho(Ký, họ tên)
Mẫu số: 02- VT
QĐ Số:15/2006/QĐ- BTCNgày 20 tháng 3 năm2006của Bộ trưởng BTC
- Họ tên người giao hàng … … …
- Theo… Số… Ngày… tháng… năm… của … … …
- Nhập kho tại … … … …
Trang 38Mẫu 2: Phiếu xuất
Đơn vị tính
Số lượng
Đơn giá
Thành tiền
Theo chứng từ
Thực Xuất
Cộng:
Cộng thành tiền (Viết bẳng chữ)… … …
Xuất, ngày…tháng…nămThủ trưởng
đơn vị
(Ký, họ tên)
Kế toántrưởng(Ký, họ tên)
Phụ trách cungtiêu(Ký, họ tên)
Người giaohàng(Ký, họ tên)
Thủ kho(Ký, họ tên)
Trang 39Mẫu 3: Đơn đặt hàng
Công ty cổ phần thiết bị điện Bình Minh
Địa chỉ: 15- Đường Điện Biên Phủ- phường Bình Hàn- TP Hải Dương
Điện thoai: (0320)3846.489 FAX: (0320)3846.844
Cần mua một số sản phẩm như sau:
1
2
3
Thực hiện giao hàng vào ngày … tháng … năm …
TM công ty cổ phần thiết bị điện Bình Minh (Họ, ký tên)
Trang 40Mẫu 4: Phiếu thu
Người lập phiếu(ký, họ tên)
Người nộp(Ký, họ tên)
Thủ quỹ(Ký, họtên)
+Tỷ giá ngoại tệ (vàng, bạc, đá quý)… … …
+Số tiền quy đổi… … …… … … …… … … …