1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng phần mềm quản lý bán hàng cho công ty trách nhiệm hữu hạn hạnh hường trên nền tảng winform

64 65 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 64
Dung lượng 3,03 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lý do chọn đề tài Trong thời kỳ kinh tế phát triển như hiện nay thì việc mua bán và trao đổi diễn ra bằng nhiều hình thức mà hình thức chủ yếu là xây dựng một của hàng để thực hiện việc

Trang 1

ĐẠI HỌC HUẾ TRƯỜNG ĐẠI HỌC KINH TẾ

- -

CHUYÊN ĐỀ TỐT NGHIỆP ĐẠI HỌC

SVTH :Hoàng Phẩm Cương Giáo viên hướng dẫn

Lớp : K47 Tin Học Kinh Tế TS Nguyễn Thanh Tuấn Niên khoá: 2013-2017

Trang 2

M ỤC LỤC

MỞ ĐẦU 8

1 Lý do chọn đề tài 8

2 Mục tiêu nghiên cứu 9

3 Đối tượng và phạm vi nghiên cứu 9

4 Phương pháp nghiên cứu 10

5 Dự kiến kết quả đạt được của đề tài 10

6 Kết cấu của đề tài 10

CHƯƠNG 1: CƠ SỞ THỰC TIỄN VỀ XÂY DỰNG PHẦN MỀM QUẢN LÍ BÁN HÀNG 12

1.1 Tổng quan về hệ thống thông tin quản lý 12

1.1.1 Khái niệm về hệ thống thông tin quản lý 12

1.1.1.1 Hệ thống và hệ thống quản lý 12

1.1.1.2 Hệ thống thông tin quản lý 12

1.1.1.3 Hệ thống thông tin quản lý bán hàng 12

1.1.1.4 Các loại thông tin quản lý 13

1.1.2 Các bước phát triển hệ thống thông tin 13

1.1.2.1 Khái niệm quy trình phát triển hệ thống thông tin 13

1.1.2.2 Giới thiệu về mô hình thác nước 13

1.2 Tổng quan về nền tảng lập trình Net Framework 16

1.3.Tổng quan về môi trường phát triển tích hợp Microsoft Visual Studio và ngôn ngữ lập trình C Sharp (C#) 17

1.3.1 Môi trường phát triển tích hợp Microsoft Visual Studio 17

1.3.2 Ngôn ngữ lập trình C Sharp(C#) 19

1.4 Tổng quan về hệ quản trị cơ sở dữ liệu MS SQLServer 21

1.4.1 Ngôn ngữ truy vấn dữ liệu có cấu trúc (SQL - Structure Query Language) 21

1.4.2 Hệ quản trị cơ sở dữ liệu SQL Server 22

1.5 Giới thiệu về mô hình ba lớp 24

tế Hu

ế

Trang 3

CHƯƠNG 2: BÀI TOÁN VỀ QUẢN LÝ BÁN HÀNG CHO CÔNG TY TNHH

HẠNH HƯỜNG 27

2.1 Khảo sát hiện trạng và lập dự án 27

2.2 Giới thiệu chung Công ty TNHH Hạnh Hường và quy trình bán hàng của công ty 27

2.3 Công tác quản lý bán hàng của Công ty và mô tả bài toán- 30

CHƯƠNG 3: XÂY DỰNG HỆ THỐNG QUẢN LÝ BÁN HÀNG CHO CÔNG TY TNHH HẠNH HƯỜNG 33

3.1 Phân tích hệ thống quản lý bán hàng cho Công ty TNHH Hạnh Hường 33

3.1.1 Phân tích các nghiệp vụ trong hệ thống 33

3.1.1.1 Quản lý bán hàng 33

3.1.1.2 Quản lý thông tin nhập hàng 34

3.1.1.3 Quản lý thanh toán 34

3.1.1.4 Quản lý kho hàng 34

3.1.1.5 Quản lý về mặt thống kê báo cáo 34

3.1.2 Sơ đồ chức năng ( BFD – Business Function Diargam) 35

3.1.3 Sơ đồ luồng thông tin của hệ thống 35

3.1.4 Sơ đồ luồng dữ liệu ( DFD- Data Flow Datagram ) 36

3.2 Thiết kế cơ sở dữ liệu 44

3.2.1.Thiết kế cơ sở dữ liệu logic 45

3.2.1.1 Sơ đồ quan hệ thực thể ( ERD- Entity Relationship Diagram) 45

3.3.3.Các thuật toán cơ bản của chương trình 53

3.3.3.1 Thuật toán đăng nhập chương trình 54

3.3.3.2 Thuật toán lập hóa đơn bán hàng 55

3.3.3.3 Thuật toán sửa thông tin 56

3.3.4 Sơ đồ chức năng hệ thống 58

3.3.5 Sơ đồ quan hệ của cơ sở dữ liệu Error! Bookmark not defined 3.4 Thiết kế giao diện 59

tế Hu

ế

Trang 4

KẾT LUẬN 63

1.Kết quả đạt được của đề tài 63

2.Hạn chế của đề tài 63

3.Hướng phát triển 63

tế Hu

ế

Trang 5

DANH M ỤC CHỮ VIẾT TẮT

STT Chữ viết tắt Diễn giải

1 ADO NET Microsoft ActiveX Data Objects.NET

2 BFD Business Function Diagram ( Sơ đồ chức năng )

3 BLL Business Logic Layers (Lớp logic nghiệp vụ)

5 CLR Common Language Runtime (Thời gian chạy ngôn ngữ

chung)

7 DAL Data Access Layers (Lớp truy cập dữ liệu)

8 DFD Data Flow Diagram (Sơ đồ luồng dữ liệu)

9 DTS Data Transformation Service (Công cụ chuyển đổi dữ

liệu)

10 GUI Graphical User Interface (Giao diện người dùng đồ họa)

11 IDE Integrate Development Environment (Môi trường tích

hợp phát triển)

12 IFD Information Flow Diagrama ( Sơ đồ luồng thông tin )

13 MSIL MicroSoft Intermediate Language (Ngôn ngữ trung gian)

15 PL Presentation Layers (Lớp trình bày)

16 SQL Structure Query Language ( Cấu trúc ngôn ngữ truy vấn)

Trang 6

DANH M ỤC BẢNG BIỂU

Trang

Bảng 3.1: Cấu trúc bảng “DANH MỤC KHÁCH HÀNG”……… 46

Bảng 3.2: Cấu trúc bảng “DANH MỤC HÀNG HÓA”……… 46

Bảng 3.3: Cấu trúc bảng “CHI TIẾT HÓA ĐƠN BÁN HÀNG”……… 47

Bảng 3.4: Cấu trúc bảng “HÓA ĐƠN BÁN HÀNG”……… 47

Bảng 3.5: Cấu trúc bảng “NHÂN VIÊN BÁN HÀNG”……… 47

Bảng 3.6: Cấu trúc bảng “NHÀ CUNG CẤP”……… 48

Bảng 3.7: Cấu trúc bảng “CHI TIẾT ĐƠN HÀNG”……… 49

Bảng 3.8: Cấu trúc bảng “PHIẾU NHẬP HÀNG”……… 48

Bảng 3.9: Cấu trúc bảng “CHI TIẾT PHIẾU NHẬN HÀNG”……… …49

Bảng 3.10 : Cấu trúc bảng "CHI TIẾT PHIẾU ĐẶT HÀNG"……… … 50

Bảng 3.11: Cấu trúc bảng "TỒN KHO"……… …….…….51

Bảng 3.12: Cấu trúc bảng"THÔNG TIN HÀNG"……… …… ……52

tế Hu

ế

Trang 7

DANH M ỤC HÌNH ẢNH

Trang

Hình 1.1 Mô hình thác nước 14

Hình 1.2: Các thành phần của SQL Server 23

Hình 1.3: Kiến trúc mô hình 3 lớp 25

Hình 2.1 Sơ đồ phân phôi bán hàng của Công ty TNHH Hạnh Hường 27

Hình 2.2 Sơ đồ tổ chức của quản lý bán hàng trong Công ty 30

Hình 3.1 Sơ đồ chức năng của HTTT quản lí bán hàng tại Công ty TNHH Hạnh Hường 35

Hình 3.2 Sơ đồ luồng thông tin của HTTT quản lí bán hàng tại Công ty TNHH Hạnh Hường 36

Hình 3.3 Sơ đồ ngữ cảnh của HTTT quản lý bán hàng tại Công ty TNHH Hạnh Hường 38

Hình 3.4 Sơ đồ DFD mức 0 – HTTT quản lí bán hàng tại Công ty TNHH Hạnh Hường 39

Hình 3.5 Sơ đồ DFD mức 1 của tiến trình bán hàng 40

Hình 3.6 Sơ đồ DFD mức 1 của tiến trình nhập hàng 41

Hình 3.7 Sơ đồ DFD mức 1 của tiến trình xử lý thanh toán 42

Hình 3.8 Sơ đồ DFD mức 1 của tiến trình xử lý kho hàng 43

Hình 3.9 Sơ đồ DFD mức 1 của tiến trình lập báo cáo 44

46

Hình 3.10 Sơ đồ quan hệ thực thể HTTT quản lí bán hàng tại Công ty TNHH Hạnh Hường 46

Hình 3.11 Sơ đồ cấu trúc dữ liệu HTTT quản lí bán hàng tại Công ty TNHH Hạnh Hường 47

Hình 3.12 Sơ đồ quan hệ của cơ sở dữ liệu 53

Hình 3.13 Thuật toán đăng nhập chương trình 54

Hình 3.14 Thuật toán lập hóa đơn bán hàng 55

Hình 3.16 Thuật toán xóa dữ liệu 57

Hình 3.17 Sơ đồ chức năng của hệ thống thông tin quản lý bán hàng 58

Hình 3.18 Giao diện Đăng nhập 59

Hình 3.19 Giao diện trang chính 59

Hình 3.20 Giao diện quản lý nhân viên 60

Hình 3.21 Giao diện quản lý khách hàng 60

Hình 3.22 Giao diện Hóa đơn bán hàng 61

Hình 3.23 Giao diện nhà cung cấp 61

tế Hu

ế

Trang 8

Hình 3.24 Giao diện thông tin hàng 62Hình 3.25 Giao diện báo cáo đặt hàng 62

tế Hu

ế

Trang 9

M Ở ĐẦU

1 Lý do chọn đề tài

Trong thời kỳ kinh tế phát triển như hiện nay thì việc mua bán và trao đổi diễn ra

bằng nhiều hình thức mà hình thức chủ yếu là xây dựng một của hàng để thực hiện việc trao đổi mua bán, để thực hiện quá trình mua bán giữa người mua và cửa hàng, giữa cửa hàng với nhà cung cấp thì chúng ta phải có công tác quản lý tốt, để đáp ứng được các yêu cầu đó thì rất cần những ứng dụng tin học đặc biệt là các phần mềm quản lý bán hàng

Trong thời đại hiện nay công nghệ thông tin có mặt trong hầu hết các lĩnh vực cuộc

sống, sự ra đời của công nghệ thông tin là thành quả vĩ đại nhất của con người và đặc biệt nó là một công cụ hỗ trợ đắc lực cho công tác quản lý trong kinh doanh hay các lĩnh vực khác như y học, giáo dục

Việc quản lý thông tin của từng công ty, từng tổ chức đang là nhu cầu cấp thiết đảm bảo việc các phản hồi của các thông tin là chính xác và nhanh chóng phục vụ tốt cho công tác quản lý

Trong việc quản trị bán hàng, hệ thống thông tin quản lý sẽ giúp đạt được sự thông hiểu nội bộ, thống nhất hành động, duy trì sức mạnh của tổ chức, đạt được lợi

thế cạnh tranh Với bên ngoài, hệ thống thông tin quản lý giúp nắm bắt được nhiều thông tin về khách hàng hơn hoặc cải tiến dịch vụ, nâng cao sức cạnh tranh, tạo đà cho

sự phát triển Đặt biệt với các hệ thống tổ chức phức tạp thì hệ thống thông tin quản lý

là tất yếu và nếu thực hiện tốt sẽ mang lại lợi ích to lớn

Công ty TNHH Hạnh Hường là một Công tychuyên phân phối sỉ lẻ các mặt hàng nước giải khát , doanh thu hằng năm là 2 - 3 tỷ đồng và là một Công tysố 1 ở huyện Nam Đông hiện tại

Tuy nhiên việc quản lý hoạt động kinh doanh như hoạt động quản lý khách

hàng, quản lý các nhà cung cấp, quản lý xuất kho, nhập kho của Công tyhiện đang gặp rất nhiều khó khăn do quản lý hoàn toàn bằng công cụ Microsoft Office Excel nên

sự liên kết giữa các hoạt động kinh doanh của doanh nghiêp và các nhà cung cấp chưa

thống nhất và tốn kém rất nhiều thời gian và công sức Từ đó đặt ra vấn đề là cần thiết

tế Hu

ế

Trang 10

phải có một hệ thống quản lý hoạt động bán hàng cho các đại lý, bổ sung các thiếu sót, cải thiện các điểm bất cập còn tồn tại và nâng cao hơn hiệu quả quản lý, tạo điều kiện thuận lợi cho hoạt động kinh doanh của đại lý gặp nhiều thuận lợi

Từ những lí do trên tôi chọn xây dựng: “Phần mềm quản lí bán hàng trên nền tảng ngôn ngữ C#, Windown Form” cho chuyên đề cuối khoá của mình

2 Mục tiêu nghiên cứu

*Mục tiêu tổng quát:

Trên cơ sở tìm hiểu quy trình quản lý bán hàng ở Công ty TNHH Hạnh Hường trên địa bàn huyện Nam Đông cũng như qui trình xây dựng phần mềm đã tham khảo trong quá trình khảo sát thực tế tôi tiến hành xây dựng phần mềm quản lí bán hàng cho Công ty TNHH Hạnh Hường

- Nghiên cứu và nắm bắt các qui trình nhập hàng và xuất hàng cũng như hàng

tồn kho của Công tyđối với nhà cung cấp và ngược lại

- Nghiên cứu các nền tảng lập trình được sử dụng trong quá trình xây dựng hệ thống: SQL Server , Visua Studio C#, Crystal Report

- Hiểu và nắm rõ qui trình xây dựng, phát triển hệ thống thông tin quản lý

- Xây dựng phần mềm quản lí bán hàng cho Công ty TNHH Hạnh Hường

3 Đối tượng và phạm vi nghiên cứu

* Đối tượng nghiên cứu:

- Các hoạt động trao đổi mua bán, nghiệp vụ lưu trữ, nghiệp vụ quản lí bán hàng của Công ty TNHH Hạnh Hường

- Các qui trình bán hàng của nhân viên trong thực tế

- Nền tảng lập trình phần mềm quản lí: SQL Server, Visua Studio C#,Crystal Report

- Các quy trình xây dựng, phát triển hệ thống thông tin quản lý

Trang 11

- Không gian: Phần mềm xây dựng dựa trên quá trình khảo sát các qui trình nghiệp vụ của Công ty TNHH Hạnh Hường

- Thời gian: Từ ngày 6-2-2017 đến ngày 30-4-2017

4 Phương pháp nghiên cứu

Để xây dựng phần mềm quản lí bán hàng cho Công ty TNHH Hạnh Hường tôi

đã sử dụng các phương pháp sau:

- Phương pháp thu thập thông tin:

+ Quan sát: trực tiếp quan sát các qui trình nghiệp vụ của nhân viên tại Công ty TNHH Hạnh Hường

+ Thu thập tài liệu: thông qua quá trình tìm hiểu qua các phương tiện truyền thông, báo đài đặc biệt là Internet Giúp có cái nhìn tổng quát giúp cho việc xây dựng

phần mềm có tính thiết thực hơn

+ Phỏng vấn: trực tiếp hỏi những nghiệp vụ cũng như các qui trình từ nhân viên

và ban lãnh đạo của Công tyđể nắm được tâm tư mong muốn của công ty, từ đó đưa ra được hướng đi mang lại tính hiệu quả cao cho công ty

- Phương pháp xây dựng phát triển hệ thống thông tin:

Dựa vào những thông tin và các qui trình nghiệp vụ đã thu thập được tiến hành phân tích, đánh giá rồi tiến hành thiết kế xây dựng phần mềm chuẩn hóa dữ liệu và cài đặt

hệ thống

5 Dự kiến kết quả đạt được của đề tài

- Nắm vững các qui trình nghiệp vụ quản lí bán hàng

- Nắm vững các công cụ nền tảng hỗ trợ trong quá trình xây dựng phần mềm quản lí bán hàng

- Hiểu và vận dụng thành thạo quá trình xây dựng và phát triển hệ thống thông tin quản lý

- Xây dựng phần mềm quản lý bán hàng cho Công ty TNHH Hạnh Hường

6 Kết cấu của đề tài

tế Hu

ế

Trang 12

Ngoài phần mở đầu và kết luận, nội dung của đề tài được xây dựng qua 3 chương

Chương 1: Cở sở lý luận về phát triển hệ thống thông tin quản lí bán hàng

Chương 2: Bài toán về quản lí bán hàng Công ty TNHH Hạnh Hường

Chương 3: Xây dựng phần mềm quản lí bán hàng cho Công ty TNHH Hạnh Hường

tế Hu

ế

Trang 13

CHƯƠNG 1: CƠ SỞ LÝ LUẬN VỀ XÂY DỰNG

PH ẦN MỀM QUẢN LÍ BÁN HÀNG

1.1 Tổng quan về hệ thống thông tin quản lý

1.1.1.1 Hệ thống và hệ thống quản lý

Hệ thống là tập hợp các phần tử tương tác được tổ chức nhằm thực hiện một mục đích xác định Các phần tử ở đây là tập hợp các phương tiện vật chất và nhân lực

Tổ chức tạo thành một hệ thống mở, nghĩa là liên hệ với một môi trường Một

số phần tử của hệ thống có sự tương tác với bên ngoài (cung ứng, thương mại, v.v…)

Đặc điểm cơ bản của hệ thống là tính tự động

Hệ thống quản lý là một hệ thống có một mục đích mang lại lợi nhuận hoặc lợi ích nào đó Đặc điểm của hệ thống là có sự tham gia của con người và có trao đổi thông tin

1.1.1.2 H ệ thống thông tin quản lý

Hệ thống thông tin quản lý là hệ thống cung cấp thông tin cho công tác quản lý của tổ chức Hệ thống bao gồm con người, thiết bị và quy trình thu thập, phân tích, đánh giá và phân phối những thông tin cần thiết, kịp thời, chính xác cho những người soạn thảo các quyết định trong tổ chức

Hệ thống thông tin quản lý cũng là tên gọi của một chuyên ngành khoa học Ngành khoa học này thường được xem là một phân ngành của khoa học quản lý và quản trị kinh doanh Ngoài ra, do ngày nay việc xử lý dữ liệu thành thông tin và quản

lý thông tin liên quan đến công nghệ thông tin, nó cũng được coi là một phân ngành trong toán học, nghiên cứu việc tích hợp hệ thống máy tính vào mục đích tổ chức

1.1.1.3 Hệ thống thông tin quản lý bán hàng

Hệ thống thông tin quản lý bán hàng một hệ thống tổ chức khoa học được sử dụng để quản lí quy trình bán hàng của một Công tyhay doanh nghiệp được hiệu quả hơn thông qua việc công nghệ thông tin hóa nghiệp vụ, tạo cho Công tycó được môi

tế Hu

ế

Trang 14

trường hiện đại đáp ứng nhanh các nhu cầu cấp thiết của xã hội, tiết kiệm được thời gian cũng như chi phí cho công ty

1.1.1.4 Các loại thông tin trong quản lý

Thông tin quản lý là những dữ liệu được xử lý và sẵn sàng phục vụ công tác quản lý tổ chức Có 3 loại thông tin quản lý trong một tổ chức, đó là thông tin chiến lược, thông tin chiến thuật, và thông tin điều hành

* Thông tin chiến lược:

Là thông tin sử dụng cho chính sách dài hạn của tổ chức, chủ yếu phục vụ cho các nhà quản lý cao cấp khi dự đoán tương lai

* Thông tin chiến thuật:

Là thông tin sử dụng cho chính sách ngắn hạn, chủ yếu phục vụ cho các nhà

quản lý phòng ban trong tổ chức

* Thông tin điều hành:

Sử dụng cho công tác điều hành tổ chức hằng ngày và chủ yếu phụ vụ cho

người giám sát hoạt động tác nghiệp của tổ chức

1.1.2 Các bước phát triển hệ thống thông tin

1.1.2.1 Khái ni ệm quy trình phát triển hệ thống thông tin

Quy trình phát triển hệ thống thông tin là một tập hợp các hoặt động phương pháp, thực nghiệm, nghiên cứu, kết quả và các công cụ tự động hóa mà các nhân sự sử dụng để phát triển và cải thiện không ngừng hệ thống thông tin và phần mềm

Một quy trình phù hợp để phát triển hệ thống thông tin phải đảm bảo :

- Hiệu quả để cho phép nhà quản lý điều chuyển nguồn lực giữa các dự án

- Tài liệu nhất quán nhằm giảm chi phí thời gian sống để bảo trì hệ thống (bởi

các đội phát triển khác) về sau

- Chất lượng nhất quán xuyên suốt các dự án

1.1.2.2 Giới thiệu về mô hình thác nước

Để xây dựng phần mềm, tác giả lựa chọn áp dụng mô hình thác nước Mô hình thác nước (waterfall model) là một mô hình của quy trình phát triển phần mềm, trong đó

tế Hu

ế

Trang 15

quy trình phát triển giống như một dòng chảy, với các pha được thực hiện theo trật tự nghiêm ngặt và không có sự nhảy vượt

Hình 1.1 Mô hình thác nước Nguồn: “Mô hình thác nước (Waterfall model) - https://trantronglekhanh.wordpress.com”

Mô hình thác nước có ưu điểm dễ quản lý Thời gian hoàn thành dự án thường được dự báo với độ chính xác hơn Các tài liệu đầu ra của từng giai đoạn cũng được xây dựng đầy đủ và hệ thống hơn là: phân tích yêu cầu, thiết kế triển khai thực hiện, kiểm thử, liên kết và bảo trì Mô hình thác nước có ưu điểm dễ quản lý Dựa vào mô hình thác nước trên ta sẽ có 6 bước để xây dựng 1 phần mềm:

Bước 1: Khảo sát tìm hiểu yêu cầu

Mô tả trừu tượng các dịch vụ mà hệ thống được mong đợi phải cung cấp và các ràng buộc mà hệ thống phải tuân thủ khi vận hành Nó chỉ có các đặc tả phẩm hạnh bên ngoài của hệ thống mà không liên quan đến các đặc tính thiết kế Nó phải được viết sao cho người ta có thể hiểu được mà không cần một kiến thức chuyên môn đặc biệt nào

tế Hu

ế

Trang 16

Bước 2: Phân tích các yêu cầu

Bước này là bước rất quan trọng vì nó là bước đầu tiên để hình thành nên 1 phần mềm Với sản phẩm phần mềm được xây dựng, việc hiểu đầy đủ các đặc điểm của nó

là điều không dễ Quá trình xác định các chức năng và các ràng buộc của hệ thống gọi

là tìm hiểu và xác định yêu cầu Để có được điều này thì cần phải trả lời câu hỏi "cái gì-what" chứ không phải là "như thế nào-how" Tìm hiểu, xác định và phân tích yêu cầu là bước hình thành bài toán, do vậy các yêu cầu của bài toán cần phải được tìm hiểu và phân tích theo chiều rộng (ngang) và theo chiều sâu Vì vậy ta cần phải tìm hiểu và phân tích đầy đủ các tất cả các yêu cầu một cách tối ưu nhất để dễ dàng tiến hành các bước tiếp theo

Bước 3: Thiết kế phần mềm và hệ thống

Xây dựng ứng dụng phần mềm là một dây chuyền các chuyển đổi, mà ở đó phân tích nhằm xác định ứng dụng sẽ thực hiện cái gì (what) còn thiết kế nhằm để trả lời câu hỏi phần mềm cụ thể sẽ như thế nào (how)? Tức là xác định cách thức thực hiện những gì đã được đặt ra ở phần phân tích Trong ba giai đoạn: thiết kế, cài đặt và bảo trì thì thiết kế là giai đoạn quan trọng nhất, chịu trách nhiệm đến 80% đối với sự thành công của một sản phẩm Quá trình thiết kế tốt là cơ sở để quản lý và giảm chi phí cho công việc bảo trì phần mềm sau này

Bước 4: Cài đặt và thử nghiệm đơn thể phần mềm

Cài đặt là việc thực thi những gì đã thiết kế Nếu trong quá trình cài đặt có xuất hiện vấn đề thì phải quay lại sửa bản thiết kế Cài đặt là một công đoạn trong việc phát triển phần mềm và nó được xem là một hệ quả tất yếu của thiết kế Tuy vậy, phong cách lập trình và các đặc trưng của ngôn ngữ lập trình có ảnh hưởng lớn đến chất lượng của phần mềm Một chương trình được cài đặt tốt đem lại cho ta thuận lợi trong việc bảo trì sau này

Bước 5: Thử nghiệm tổng quát phần mềm

Sản phẩm phần mềm được gọi là đúng nếu nó thực hiện được chính xác những tiêu chuẩn mà người thiết kế đã đặt ra Để có một đánh giá chính xác về cấp độ đúng của phần mềm, ta phải kiểm tra chất lượng phần mềm Như thế, kiểm tra là quá trình tìm lỗi và nó là một đánh giá cuối cùng về các đặc tả, thiết kế và mã hoá Mục đích của

tế Hu

ế

Trang 17

kiểm tra là đảm bảo rằng tất cả các thành phần của ứng dụng ăn khớp, vận hành như mong đợi và phù hợp các tiêu chuẩn thiết kế

Bước 6: Bảo trì và phát triển phần mềm

Bảo trì là giai đoạn cuối cùng của một chu trình phát triển phần mềm Các chương trình máy tính luôn thay đổi - phải mở rộng, sửa lỗi, tối ưu hoá và theo thống

kê thì bảo trì chiếm đến 70% toàn bộ công sức bỏ ra cho một dự án phần mềm Do vậy, bảo trì là một hoạt động phức tạp nhưng nó lại là vô cùng cần thiết trong chu trình sống của sản phẩm phần mềm để đảm bảo cho phần mềm phù hợp với người sử dụng

1.2 T ổng quan về nền tảng lập trình NET Framework

NET Framework là một tập những giao diện lập trình và tâm điểm của nền tảng NET Nó cung cấp cơ sở hạ tầng để xây dựng và chạy các dịch vụ web hoặc lập trình Winform C# là một trong rất nhiều ngôn ngữ lập trình được hổ trợ bởi NET Framework Có thể hiểu đơn giản đây là một trung tâm biên dịch trong đó tất cả các

ngôn ngữ được hỗ trợ bởi NET Framework sẽ được chuyển đổi ra Microsoft

Intermediate Language (MSIL) rồi từ đây mới được biên dịch tức thời thành các file thực thi như exe Một thành tố quan trọng nữa trong kiến trúc NET Framework chính

là Common Language Runtime (CLR), khối chức năng cung cấp tất cả các dịch vụ mà

chương trình cần giao tiếp với phâng cứng, với hệ điều hành

* Các thành phần của NET Framework:

- Thời gian chạy ngôn ngữ chung (Common Language Runtime - CLR): là trung tâm điểm của NET Framework Đây là một hầm máy để chạy các tình năng của NET Trong NET, tất cả mọi ngôn ngữ lập trình đều được biên dịch ra MSIL Do bắt buộc mọi ngôn ngũ đều phải dùng các loại kiểu dữ liệu nên CLR có thể kiểm soát mọi giao diện, gọi giữa các thành phần và cho phép các ngôn ngữ có thể tích hợp với nhau một cách thống suốt

- Các lớp cơ sở (The Base Classes): Cho chúng ta những đặc tính của runtime

và cung cấp những dịch vụ cấp cao khác mà những người lập trình đòi hỏi thông qua namespace Namespace là một cách đặt tên để giúp sắp đặt các lớp ta dung trong chương trình một cách thứ tự để dễ tìm kiếm chúng Tất cả các mã trong NET bằng C# hay một ngôn ngữ nào khác đều được chứa trong một namespace

tế Hu

ế

Trang 18

- ASP NET: Là một khung lập trình được xây dựng trên bộ thực thi ngôn ngữ chung (CLR) và được sử dụng trên một máy chủ phục vụ để tạo ra các ứng dụng web mạnh Webform của ASP NET cho phép xây dựng các giao diện người dung web động một cách hiệu quả Các dịch vụ của ASP NET cung cấp những khối hợp nhất cho việc xây dựng các ứng dụng trên nền web phân tán Những dịch vụ web dựa trên các chuẩn Internet mở Bộ thực thi ngôn ngữ chung CLR cung cấp sữ hỗ trợ dựng sẵn

để tạo và đưa ra những dịch vụ web thông qua việc sử dụng một khái niệm trừa tượng hóa lập trình phù hợp và thân thiện với nhà phát triển cho cả webform và visual basic

- Microsoft ActiveX Data Objects.NET (ADO NET) và ngôn ngữ đánh dấu

mở rộng (Extensible Markup Language - XML ): Bộ thư viện này gồm các lớp dùng

để xử lý dữ liệu ADO.NET thay thế ADO để trong việc thao tác với các dữ liệu thông thường Các lớp đối tượng XML được cung cấp để bạn xử lý các dữ liệu theo định dạng mới: XML Các ví dụ cho bộ thư viện này là SqlDataAdapter, SqlCommand, DataSet, XMLReader, XMLWriter, …

- Dịch vụ web (web services): Là các dịch vụ được cung cấp qua web (hay Internet) Dịch vụ được coi là web service không nhằm vào người dùng mà nhằm vào người xây dựng phần mềm Web services có thể dùng để cung cấp các dữ liệu hay một chức năng tính toán

- Windows form: Bộ thư viện về windows form gồm các lớp đối tượng dành cho việc xây dựng các ứng dụng windows based Việc xây dựng ứng dụng loại này vẫn được hỗ trợ tốt từ trước đến nay bởi các công cụ và ngôn ngữ lập trình của Microsoft Giờ đây, ứng dụng chỉ chạy trên Windows sẽ có thể làm việc với ứng dụng web dựa vào web service Ví dụ về các lớp trong thư viện này là Form, UserControl,

1.3.Tổng quan về môi trường phát triển tích hợp Microsoft Visual Studio và ngôn

ng ữ lập trình C Sharp (C#)

1.3.1 Môi trường phát triển tích hợp Microsoft Visual Studio

Microsoft Visual Studio là môi trường phát triển tích hợp (Integrate Development Environment - IDE) được phát triển từ Microsoft, là một loại phần mềm

tế Hu

ế

Trang 19

máy tính có công dụng giúp đỡ các lập trình viên trong việc phát triển phần mềm, cung

cấp một môi trường phát triển hợp nhất nhiều ngôn ngữ

Microsoft Visual Studio được dùng để phát triển console (thiết bị đầu cuối – bàn giao tiếp người máy) và giao diện người dùng đồ họa (Graphical User Interface - GUI) cùng với các trình ứng dụng như windows forms, các web sites, cũng như ứng

dụng, dịch vụ wed (web applications, and web services) Chúng được phát triển dựa trên một mã ngôn ngữ gốc (native code ) cũng như mã được quản lý (managed code) cho các nền tảng được được hỗ trợ Microsoft windows, windows mobile, NET Framework, NET Compact Framework và Microsoft Silverlight Visual Studio hỗ trợ

rất nhiều ngôn ngữ lập trình, có thể kể tên như sau: C/C++ ( Visual C++), VB.NET (Visual Basic NET), và C# (Visual C#)… cũng như hỗ trợ các ngôn ngữ khác như F#, Python, và Ruby, ngoài ra còn hỗ trợ cả XML/XSLT, HTML/XHTML, JavaScript và CSS…Microsoft Visual Studio có những chức năng cơ bản sau: soạn thảo mã (code editor), trình gỡ lỗi (debugger), và thiết kế (designer) mà trong đó một số công cụ quan

trọng của chức năng Designer được xem là một trong những điểm nhấn của Microsoft Visual Studio

- WinForms Designer: đây là công cụ tạo giao diện đồ họa dùng WinForms Điểm đặc biệt ở đây là giao diện với người dùng sinh động, dễ nắm bắt Nó bao gồm các phím bấm, thanh tác vụ, hay các box đa dạng (textbox, list box, grid view…) Người lập trình có thể di chuyển, kéo ra, nhúng thả chúng một cách dễ dàng

- WPF Designer: Còn có tên mã là Cider, được hỗ trợ trong Visual Studio 2008

Nó tạo các mã dạng ngôn ngữ khai báo (Extensible Application Markup Language –XAML) cho giao diện người sử dụng (UI), mã này tích hợp với trình ứng dụng Microsoft Expression Design

- Web designer: Visual Studio cũng hỗ trợ công cụ thiết kế trang web, trong đó cho phép các công cụ thiết kế trang web được kéo, thả, rê, nhúng một cách dễ dàng…Công cụ này dùng để phát triển trình ứng dụng ASP.NET và hỗ trợ HTML, CSS and JavaScript

- Class designer: Đây là công cụ dùng để thực thi và chỉnh sửa lớp Nó có thể dùng mã C# và VB.NET …

tế Hu

ế

Trang 20

-Data designer: Đây là công cụ dùng để chỉnh sửa một cách sinh động, linh hoạt các lược đồ dữ liệu, bao gồm nhiều loại lược đồ, liên kết trong và ngoài

-Mapping designer: Đây là công cụ tạo các mối liên hệ giữa sơ đồ dữ liệu và các lớp

để quản lý dữ liệu một cách hiệu quả hơn

* Các phiên bản của Visual Studio:

- Phiên bản Express: đây là phiên bản miễn phí và phù hợp với các cá nhân, tổ

chức sử dụng với mục đích nghiên cứu

- Phiên bản Standard: phiên bản này có nhiều tính năng hơn so với phiên bản Express và với giá thành thấp, phù hợp với các tổ chức nhỏ

- Phiên bản Professional: phiên bản này có đầy đủ tất cả các tính năng tuy nhiên

hỗ trợ số lượng người dùng hạn chế phù hợp với các tổ chức vừa

- Phiên bản Ultimate: phiên bản này có gần như là đầy đủ tất cả các tính năng tuy nhiên hỗ trợ số lượng người dùng hạn chế phù hợp với các cá nhân, tổ chức phục

vụ cho mục đích nghiên cứu

- Phiên bản Team System: đây là phiên bản có đầy đủ tính năng nhất và hỗ trợ tối đa cho việc phát triển ứng dụng nhóm, có giá thành cao nhất

1.3.2 Ngôn ngữ lập trình C Sharp (C#)

Ngôn ngữ C Sharp (C#) được xây dựng và kiến trúc bởi Anders Hejlsberg, người đã viết nên trình biên dịch Pascal và có nhiều đóng góp cho Delphi cũng như Java C# là một trong rất nhiều ngôn ngữ lập trình được hỗ trợ bởi NET Framework (như C++, Java…) Có thể hiểu đơn giản đây là một trung tâm biên dịch trong đó tất

cả các ngôn ngữ được hỗ trợ bởi NET Framework sẽ được chuyển đổi ra MSIL (một

dạng mã trung gian) rồi từ đấy mới được biên dịch tức thời (Just in time Compiler – JIT Compiler) thành các file thực thi như exe Một thành tố quan trong nữa trong kiến trúc NET Framework chính là CLR (.NET Common Language Runtime), khối chức năng cung cấp tất cả các dịch vụ mà chương trình cần giao tiếp với phần cứng, với hệ điều hành

* Các tính năng cơ bản của ngôn ngữ lập trình C#:

Ngôn ngữ C# là một ngôn ngữ được dẫn xuất từ Java, VB, C và C++, nhưng nó được tạo từ nền tảng phát triển hơn Microsoft bắt đầu với công việc trong C và C++

tế Hu

ế

Trang 21

và thêm vào những đặc tính mới để làm cho ngôn ngữ này dễ sử dụng hơn Nhiều trong số những đặc tính này khá giống với những đặc tính có trong ngôn ngữ Java Không dừng lại ở đó, Microsoft đưa ra một số mục đích khi xây dựng ngôn ngữ này

Những mục đích này được được tóm tắt như sau:

- C# là ngôn ngữ đơn giản và hiện đại

- C# là ngôn ngữ hướng đối tượng

- C# là ngôn ngữ mạnh mẽ và mềm dẻo

- C# là ngôn ngữ có ít từ khóa

- C# là ngôn ngữ hướng module

- C# loại bỏ một vài sự phức tạp của những ngôn ngữ như Java và C++, bao gồm việc loại bỏ những macro, những template, đa kế thừa, và lớp cơ sở ảo (virtual base class) Chúng là những nguyên nhân gây ra sự nhầm lẫn hay dẫn đến những vấn

đề cho các người phát triển C++

- Ngôn ngữ C# đơn giản vì nó dựa trên nền tảng C và C++ Diện mạo, cú pháp,

biểu thức, toán tử và những chức năng khác được lấy trực tiếp từ ngôn ngữ C và C++, nhưng nó đã được cải tiến để làm cho ngôn ngữ đơn giản hơn

* Các ứng dụng của C#:

- C# có thể sử dụng để viết các kiểu ứng dụng khác nhau:

- Các ứng game

- Các ứng dụng cho công ty

- Các ứng dụng cho thiết bị di động: PC Pocket, PDA, cell phone

- Các ứng dụng quản lý đơn giản

- Các ứng dụng phân tán phức tạp trải rộng qua nhiều thành phố, đất nước

* Các lợi ích của C#:

- Cross Language Support: hỗ trợ khả năng chuyển đổi dễ dàng giữa các ngôn

ngữ

- Hỗ trợ các giao thức Internet chung

- Triển khai đơn giản

tế Hu

ế

Trang 22

- Hỗ trợ tài liệu XML: các chú thích XML có thể được thêm vào các đoạn code

và sau đó có thể được chiết xuất để làm tài liệu cho các đoạn code để cho phép các lập trình viên khi sử dụng biết được ý nghĩa của các đoạn code đã viết

1.4 T ổng quan về hệ quản trị cơ sở dữ liệu MS SQLServer

1.4.1 Ngôn ngữ truy vấn dữ liệu có cấu trúc (SQL - Structure Query Language)

* Khái ni ệm về SQL:

QL (Structure Query Language) là một công cụ quản lý dữ liệu được sử dụng

phổ biển ở nhiều lĩnh vực và nó bao gồm tập các câu lệnh sử dụng để tương tác với cơ

sở dữ liệu quan hệ Hầu hết các ngôn ngữ bậc cao đều có trình hỗ trợ SQL như Visual Basic, Oracle, C++, C#,

SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở

dữ liệu cung cấp cho người dùng bao gồm: định nghĩa dữ liệu, truy xuất và thao tác dữ liệu, điều khiển và truy cập

SQL là một ngôn ngữ hoàn thiện được sử dụng trong các hệ thống cơ sở dữ liệu

và là một thành phần không thể thiếu trong các hệ quản trị cơ sở dữ liệu

* Đặc điểm của SQL:

- SQL là ngôn ngữ tựa tiếng Anh

- SQL là ngôn ngữ phi thủ tục, nó không yêu cầu cách thức truy nhập cơ sở dữ liệu như thế nào, tất cả các thông báo của SQL đều rất dễ sử dụng và ít khả năng mắc lỗi

- SQL cung cấp tập lệnh phong phú cho các công việc hỏi đáp dữ liệu

- Chèn, cập nhật, xóa các hàng trong một quan hệ

- Tạo, sửa đổi, thêm và xóa các đối tượng của cơ sở dữ liệu

- Điều khiển việc truy nhập tới cơ sở dữ liệu và các đối tượng của cơ sở dữ liệu

để đảm bảo tính bảo mật của cơ sở dữ liệu

- Đảm bảo tính nhất quán và sự ràng buộc của cơ sở dữ liệu

- SQL sử dụng các kiểu dữ liệu cơ bản: Integer, Number(n,p), char(n), varchar(n), nvarchar(n), data,…

tế Hu

ế

Trang 23

* Vai trò c ủa SQL:

- SQL là một phần của hệ quản trị cơ sở dữ liệu, nó xuất hiện trong các hệ quản

trị cơ sở dữ liệu với vai trò ngôn ngữ và là công cụ giao tiếp giữa người sử dụng và hệ

quản trị cơ sở dữ liệu SQL có vai trò như sau:

- SQL là ngôn ngữ hỏi có tính tương tác: Người sử dụng có thể dễ dàng thông qua các trình tiện ích để gửi các yêu cầu dưới dạng các câu lệnh SQL đến cơ sở dữ liệu

và nhận kết quả trả về từ cơ sở dữ liệu

- SQL là ngôn ngữ lập trình cơ sở dữ liệu: Các lập trình viên có thể nhúng các câu lệnh SQL vào trong các ngôn ngữ lập trình để xây dựng nên các chương trình ứng

dụng giao tiếp với cơ sở dữ liệu

- SQL là ngôn ngữ quản trị cơ sở dữ liệu: Thông qua SQL, người quản trị cơ sở

dữ liệu có thể quản lý được cơ sở dữ liệu, định nghĩa các cấu trúc lưu trữ dữ liệu, điều khiển truy cập cơ sở dữ liệu

- SQL là ngôn ngữ truy cập dữ liệu trên Internet: SQL với vai trò là ngôn ngữ

để tương tác với dữ liệu trong các cơ sở dữ liệu trên Internet

- SQL là ngôn ngữ cơ sở dữ liệu phân tán: Đối với các hệ quản trị cơ sở dữ liệu phân tán, mỗi hệ thống sử dụng SQL để giao tiếp với các hệ thống khác trên mạng, gửi

và nhận các yêu cầu truy xuất dữ liệu với nhau

- SQL là ngôn ngữ sử dụng cho các cổng giao tiếp cơ sở dữ liệu: SQL thường được dùng như là một chuẩn ngôn ngữ để giao tiếp giữa các hệ quản trị cơ sở dữ liệu khi hệ thống máy tính có nhiều hệ quản trị cơ sở dữ liệu khác nhau

1.4.2 Hệ quản trị cơ sở dữ liệu SQL Server

SQL Server là một hệ thống quản trị CSDL quan hệ nhiều người dùng hoạt động theo mô hình Client/Server Hệ quản trị CSDL này được sử dụng ở hầu hết các ứng dụng lớn hiện nay

Trong mô hình Client/Server, phần Server chứa CSDL, cung cấp các chức năng phục vụ cho việc tổ chức và quản lý CSDL, cho phép nhiều người sử dụng cùng lúc truy cập dữ liệu Điều này không chỉ tiết kiệm mà còn thể hiện tính nhất quán về mặt

dữ liệu Tất cả dữ liệu đều được truy xuất thông qua Server, không được truy xuất trực tiếp Do đó, có độ bảo mật cao, chịu lỗi tốt hơn, dễ dàng sao lưu dữ liệu Phần Client là

tế Hu

ế

Trang 24

các phần mềm chạy trên máy trạm hay máy chủ Web không chứa CSDL, cho phép người sử dụng giao tiếp với CSDL trên Server

*Các đặc tính của SQL Server:

Cho phép quản trị một hệ CSDL lớn (lên đến vài tega byte), có tốc độ xử lý dữ liệu nhanh đáp ứng yêu cầu về thời gian

Cho phép nhiều người cùng khai thác trong một thời điểm đối với một CSDL

và toàn bộ quản trị CSDL (lên đến vài chục ngày user)

Có hệ thống phân quyền bảo mật tương thích với hệ thống bảo mật của công nghệ NT (Network Technology), tích hợp với hệ thống bảo mật của Windows NT

hoặc sử dụng hệ thống bảo về độc lập của SQL Server

Hỗ trợ trong việc triển khai CSDL phân tán và phát triển ứng dụng trên Internet Cho phép lập trình kết nối với nhiều ngôn ngữ lập trình khác dùng xây dựng các ứng dụng đặc thù (Visual Basic, C, C++, ASP )

Sử dụng câu lệnh truy vấn dữ liệu Transaction – SQL (ví dụ như trong Access

là SQL, trong Oracle là PL/SQL)

*Các thành phần của SQL Server

SQL Server được cấu thành bởi nhiều thành phần khác nhau, các thành phần này có mối quan hệ trong một hệ thống, phối hợp với nhau tạo thành một giải pháp hoàn chỉnh, nâng cáo hiệu quả quản trị, phân tích, lưu trữ dữ liệu Mô hình các thành

phần của SQL Server được thể hiện như sau:

Trang 25

Công cụ nhân bản dữ liệu (Replication): Là công cụ mà người dùng có thể tạo một máy chủ khác với bộ dữ liệu giống bộ dữ liệu trên máy chủ chính Công cụ tạo cơ

chế tự đồng bộ dữ liệu giữa máy chủ chính và máy chủ nhân bản Mục đích của việc

tạo máy chủ nhân bản là giảm tải cho máy chủ chính, nâng cao hiệu quả phục vụ với

số lượng người, phiên giao dịch lớn

Công cụ chuyển đổi dữ liệu (Data Transformation Service – DTS): Là công cụ giúp người dùng chuyển dữ liệu giữa các máy chủ quản trị CSDL khác nhau, DTS có

thể chuyển dữ liệu từ SQL Server sang Oracle, Access, DB, trước khi chuyển dữ liệu DTS định dạng kiểu dữ liệu để chuyển sang hệ quản trị CSDL khác

Công cụ phân tích dữ liệu (Analysis service): Là công cụ giúp khai thác phân tích dữ liệu, hay khai phá dữ liệu theo phương thức đa chiều Từ một tập dữ liệu sẵn

có, người dùng có thể khai phá rồi từ đó đưa ra những nhận định, phân tích, đánh giá

và dự đoán theo lĩnh vực nào đó, mỗi chiều trong ngữ cảnh này được coi là một tiêu chí xem xét của dữ liệu

Công cụ truy vấn tiếng anh (English query): Là công cụ tra cứu dữ liệu bằng

tiếng Anh, cú pháp có thể sử dụng theo văn phạm tiếng Anh thông thường

Bộ công cụ cung cấp giao diện cho người quản trị (SQL Server tools): Enterprise manager, Query Analyzer,

1.5 Giới thiệu về mô hình ba lớp

Mô hình 3 lớp được cấu thành từ: Lớp giao diện (Presentation Layers - PL), lớp logic nghiệp vụ (Business Logic Layers - BLL), và lớp truy cập dữ liệu (Data Access

Layers - DAL) 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 cu ng cấp để tạo nên ứng dụng, lớp này cũng không cần biết bên trong lớp kia làm gì mà chỉ cần biết lớp kia cung cấp dịch vụ gì cho người dùng và sử dụng nó mà thôi

tế Hu

ế

Trang 26

Hình 1.3: Kiến trúc mô hình 3 lớp Nguồn: Mô hình 3 lớp trong C# - www.toiyeucoding.com

-Lớp giao diện

Lớp này làm nhiệm vụ giao tiếp với người dùng cuối để thu thập dữ liệu và hiển thị kết quả/dữ liệu thông qua các thành phần trong giao diện người sử dụng Lớp này

sẽ sử dụng các dịch vụ do BLL cung cấp Trong NET thì bạn có thể dùng Windows

Forms, ASP NET hay Mobile Forms để hiện thực lớp này

Lưu ý : Lớp này không nên sử dụng trực tiếp các dịch vụ của DAL mà nên sử

dụng thông qua các dịch vụ của BLL vì khi bạn sử dụng trực tiếp như vậy, chúng ta có thể bỏ qua các ràng buộc, các logic nghiệp vụ mà ứng dụng cần phải có

tế Hu

ế

Trang 27

* Cách vận hành của mô hình

Đối với mô hình 3 lớp, các yêu cầu được xử lý tuần tự qua các lớp như hình minh họa ở trên Đầu tiên người dùng giao tiếp với DAL để gửi đi thông tin yêu cầu Tại lớp này, các thông tin sẽ được kiểm tra sơ bộ, nếu hợp lệ chúng sẽ được chuyển xuống (BLL) Tại BLL, các thông tin sẽ được nhào nặn, tính toán theo đúng yêu cầu đã gửi, nếu không cần đến CSDL thì BLL sẽ gửi trả kết quả về cho PL, ngược lại nó sẽ đẩy thông tin (dữ liệu đã xử lý) xuống DAL DAL sẽ thao tác với CSDL và trả kết quả về cho BLL, BLL kiểm tra và gửi nó lên giao diện đồ họa người dùng (Graphic User Interface – GUI) để hiển thị cho người dùng Một khi gặp lỗi (các trường hợp không đúng dữ liệu) thì đang ở lớp nào thì trả mã lỗi lên trên lớp cao hơn nó một bậc cho tới lớp GUI thì sẽ thông báo mã lỗi ra cho người dùng biết Thông tin được vận chuyển giữa các lớp thông qua một đối tượng được gọi là Data Transfer Object (DTO), đơn

giản đây chỉ là các lớp đại diện cho các đối tượng được lưu trữ trong CSDL

* Những ưu điểm khi sử dụng mô hình 3 lớp

Trước hết phải nói rằng việc tổ chức dự án phần mềm dưới dạng mô hình 3 lớp

sẽ giúp cho dự án có cấu trúc sáng sủa, rõ ràng, dễ dùng lại Từ đó việc phát triển và bảo trì hệ thống sẽ thuận lợi hơn Điều này giúp chúng ta tiết kiệm nhiều thời gian hơn khi mở rộng chương trình trong tương lai Khi dự án thay đổi hệ quản trị cơ sở dữ liệu hoặc chuyển ứng dụng từ dạng webform sang dạng winform thì chúng ta chỉ tốn ít thời gian để thay đổi trên lớp DAL hoặc GUI mà thôi, giữ nguyên hai lớp còn lại mà không

cần phải thay đổi toàn bộ dự án

Một điều cũng vô cùng quan trọng đối với người lập trình viên đó là việc xử lý

và bẫy các lỗi thời gian chạy Mô hình 3 lớp hỗ trợ cho người lập trình xác định loại lỗi xuất hiện tại lớp nào và dễ dàng đưa ra cách xử lý chúng ở từng lớp cụ thể

Ngoài ra, mô hình này còn tạo ra một không gian làm việc rất tốt để người thiết

kế giao diện lẫn người lập trình có thể làm việc chung với nhau một cách dễ dàng Việc phân ứng dụng ra thành 3 lớp cũng thuận lợi cho việc phân chia nhiệm vụ của các lập trình viên theo các lớp khác nhau

tế Hu

ế

Trang 28

CHƯƠNG 2: BÀI TOÁN VỀ XÂY DỰNG PHẦN MỀM QUẢN LÝ BÁN

HÀNG CHO CÔNG TY TNHH H ẠNH HƯỜNG

2.1 Khảo sát hiện trạng và lập dự án

Chúng ta đang sống trong thời kỳ đổi mới, thời kỳ công nghiệp hoá hiện đại

hoá Trong quá trình mở cửa để hội nhập kinh tế, hầu như các Công ty đều thúc đẩy kinh doanh theo hướng công nghiệp hoá, hiện đại hoá Từ những chủ trương và chính sách của nhà nước, mà trên khắp đất nước ta hiện nay, xuất hiện một loạt các khu công nghiệp với những công ty, nhà máy, xí nghiệp Xu hướng công nghiệp hoá, hiện đại hoá đòi hỏi tốc độ tăng trưởng kinh tế của các Công ty phải rất nhanh

Nhìn chung hiện nay các Công ty đang kinh doanh trong lĩnh vực bán hàng đều tuân theo một quy trình chung

Hình 2.1 Sơ đồ phân phôi bán hàng của Công ty TNHH Hạnh Hường

2.2 Giới thiệu chung Công ty TNHH Hạnh Hường và quy trình bán hàng của công

ty

*Quá trình hình thành và phát triển của Công ty TNHH Hạnh Hường

Công ty TNHH Hạnh Hường được hình thành và phát triển từ năm 2000 tại thị trấn Khe Tre huyện Nam Đông , tỉnh Thừa Thiên Huế, đến nay Công tyvẫn không

tế Hu

ế

Trang 29

ngững phát triển và mở rộng quy mô các gian hàng, các mặt hàng đảm bảo chất lượng Với hình thức kinh doanh nhiều mặt hàng khác nhau cửa hàng đã cung cấp một lượng hàng hoá tương đối lớn cho người tiêu dùng trên địa bàn của huyện và các vùng lân cận như Phú Lộc và Hương Thủy Số lượng hàng hoá trong Công ty ngày càng lớn, đa dạng và phong phú về chủng loại các sản phẩm nhằm phục vụ cho người tiêu dùng, trong Công ty được chia thành nhiều gian hàng, các gian hàng được chứa từng loại sản phẩm riêng biệt, thuận tiện cho việc quản lý, kiểm kê

Các mặt hàng đặc thù của Công ty là:

+ Phân phối bia cũng như các loại nước giải khát + Sản xuất, kinh doanh vật liệu xây dựng

*Quy trình bán hàng của Công ty hiện nay

Khi bộ phận bán hàng có yêu cầu về hàng hóa thì phát sinh yêu cầu nhập hàng Nếu hàng không đủ số lượng hoặc không đặt yêu cầu thì:

+ Báo cáo kiểm tra hàng không chấp nhận được chuyển tới bộ phận mua hàng

+ Những mặt hàng không đạt yêu cầu sẽ để riêng chở chuyển lại cho nhà cung cấp

Bộ phận kiểm tra sẽ viết phiếu nhận và chuyển tới bộ phận quản lý kho đối với hàng đã được chấp nhận

Khi bộ phận bán hàng có yêu cầu xuất hàng bán cho khách hàng, thì hóa đơn sẽ được bộ phận bán hàng bán viết theo yêu cầu mua hàng hóa của khách hàng

Khi hàng hóa bán cho khách hàng mà không được khách hàng chấp nhận( do không đạt yêu cầu kỷ thuật hoặc không đảm bảo chất lượng) thì hàng sẽ được chuyển tới bộ phận kiểm tra, nếu đúng thì sẽ tiến hành làm thủ tục nhập kho

- Khi có yêu cầu về thông tin xuất nhập hàng hóa thì bộ phận quản lí kho phải lập các báo cáo về hàng hóa cho bộ phận quản lí bán hàng biết được tình hình về các thông tin hàng hó Trong kho có những loại hàng hóa nào, số lượng là bao nhiêu…để tiến hành thủ tục xuất hàng

tế Hu

ế

Trang 30

- Mọi thông tin cũng như doanh thu của hàng hóa bán cũng như hàng hóa nhập được các bộ phận ghi chép lại cẩn thận chuyển đến lãnh đạo Công ty ở mỗi cuộc họp của Công ty( hàng tuần, hàng tháng, hàng quí…)

*Phân tích SWOT

- Tình hình thực tế

+Tại huyện Nam Đông nói riêng và toàn tỉnh Thừa Thiên Huế nói chung việc phân phố sĩ lẻ các mặt hàng hóa như bia, rượu và các nhu yếu phẩm diễn ra rất nhiều và có rất nhiều doanh nghiệp tham gia, đó là thách thức không nhỏ đối với Công ty TNHH Hạnh Hường

+ Điển hình là Công ty TNHH Anh Phương, Công ty TNHH Lê Minh, cùng với đó là hàng loạt các doanh nghiệp vừa và nhỏ phân bố rộng khắp trên toàn địa bàn, sức cạnh tranh cao

-Phân tích SWOT Công ty TNHH Hạnh Hường

+ Điểm mạnh: Là một thương hiệu có tầm bao quát lớn trong toàn huyện cũng như trong Tỉnh Thừa Thiên Huế, sản phẩm đa dạng, giá cả cạnh tranh, dây chuyên phân phối cũng như sản xuất tiên tiến, ban lãnh đạo công ty có năng lực quản

lý tốt, danh mục sản phẩm đa dạng ( 50 mẫu mã sản phẩm), quan hệ bền vững với các đối tác, đội ngủ tiếp thị và phân phối sản phẩm giàu kinh nghiệp

+ Điểm yếu: Chủ yếu tập sản phẩm vào thị trường trong vùng huyện, trong tỉnh thì nhỏ giọt, hoặt động Marketing chủ yếu là thị trường Nam Đông, Phú Lộc

+ Cơ hội: Các chính sách của tỉnh về ưu tiên cho doanh nghiệp được phát tiển bền vững và thúc đẩy GDP toàn tỉnh Nguồn cung cấp sản phẩm đa dạng và phong phú, dân trí người dân đang càng ngày càng tăng cao thúc đẩy quá trình nhu cầu tăng mạnh

+ Thách thức: Tính cạnh tranh trong ngành nghề cao cũng là một tác nhân không nhỏ cho quá trình phát triển Công ty, giá cả đang có xu hướng tăng khiến quá trình nhập hàng gặp nhiều khó khăn trong việc tài chính

tế Hu

ế

Trang 31

2.3 Yêu c ầu của công tác quản lý bán hàng tại Công ty và mô tả bài toán

Hình 2.2 Sơ đồ tổ chức của quản lý bán hàng trong Công ty

Trang 32

-Khi khách hàng đã tìm được các sản phẩm cần mua thì phía Công ty sẽ tiến hành các thủ tục xuất hàng cần thiết như xem số lượng sản phẩm, đơn giá sản phẩm rồi xem có giảm giá không tiến hành in phiếu hóa đơn cho khách hàng

- Sau đó hoá đơn bán hàng được đưa cho bộ phận kế toán lưu giữ và thống kê Cuối mỗi tháng bộ phận kế toán thống kê và tổng hợp mặt hàng bán chạy nhất trong tháng

- Sau mỗi ngày làm việc, các nhân viên bán hàng có nhiệm vụ sắp xếp kiểm tra lại các mặt hàng kho, để kiểm kê, báo cáo với trưởng ca Sau khoảng một tuần hay một tháng phía Công ty, tổ trưởng nhân viên sẽ dựa vào sổ sách, giấy tờ để tổng hợp lượng hàng hoá đã bán được, lượng hàng hoá còn tồn đọng trong kho những mặt hàng nào đã hết, sắp hết, mặt hàng nào cần phải nhập thêm, mặt hàng nào sắp hết hạn sử dụng, thống kê số nợ của khách hàng dựa và hoá đơn bán hàng rồi yêu cầu khách hàng trả

- Thông tin khách hàng: Tên khách hàng, địa chỉ, ngày sinh, số điện thoại

tế Hu

ế

Ngày đăng: 18/02/2021, 22:21

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w