Tải bản đầy đủ (.docx) (50 trang)

Phân tích, thiết kế và xây dựng phần mềm quản lý cửa hàng mỹ phẩm Luận Văn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.27 MB, 50 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM
KHOA TIN HỌC
Tel. (+84)511-3733293
Website: Email:



KHÓA LUẬN TỐT NGHIỆP
NGÀNH CỬ NHÂN CÔNG NGHỆ THÔNG TIN

ĐỀ TÀI:

PHÂN TÍCH, THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM
QUẢN LÝ CỬA HÀNG MỸ PHẨM
NGÀY BẢO VỆ:31/05/2013

SVTH
LỚP
GVHD

: MAI THỊ KIM YẾN
: 09CNTT01
: ThS. PHẠM DƯƠNG THU HẰNG

ĐÀ NẴNG, 05/2013


LỜI CẢM ƠN
Trước hết, con xin chân thành tỏ lòng biết ơn sâu nặng đến Ba, Mẹ, người đã
sinh thành, nuôi dưỡng và dạy dỗ con bằng tất cả tình thương yêu, động viên và


khích lệ, giúp con vượt qua những khó khăn trong cuộc sống để có được ngày hôm
nay.
Em xin chân thành cảm ơn thầy, cô trong khoa Tin học trường Đại học Sư
phạm-Đại học Đà Nẵng đã tận tình giảng dạy và trang bị kiến thức cho em trong
thời gian em học tập tại trường.
Khóa luận tốt nghiệp này được hoàn thành dưới sự chỉ dạy tận tình và chu đáo
của cô Phạm Dương Thu Hằng. Em xin chân thành tỏ lòng biết ơn sâu sắc đến cô,
người đã dìu dắt và định hướng cho em trong quá trình nghiên cứu để hoàn thành
luận văn này.
Bên cạnh đó, tôi cũng xin chuyển lời cảm ơn chân thành đến các bạn của tôi,
những người luôn bên cạnh động viên , khích lệ và giúp đỡ tôi tự tin trong suốt thời
gian tôi hoàn thành đồ án này.
Đà Nẵng, ngày 5/4/2013
Mai Thị Kim Yến

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01


LỜI CAM ĐOAN
Em xin cam đoan :
Những nội dung trong đồ án này là do em thực hiện dưới sự hướng dẫn trực
tiếp của cô Phạm Dương Thu Hằng.
Mọi tham khảo dùng trong đồ án đều được trích dẫn rõ ràng và ghi ở phần
“Tài liệu tham khảo”.
Em xin chịu hoàn toàn trách nhiệm trước Hội đồng bảo vệ về các vấn đề vi
phạm khác do Khoa và Nhà trường đã phổ biến.
Đà Nẵng, ngày 5/4/2013
Mai Thị Kim Yến

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01



MỤC LỤC

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01


DANH SÁCH HÌNH VẼ

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01


DANH SÁCH BẢNG BIỂU
Bảng 1: Bảng công việc
Bảng 2: Bảng ma trận thực thể chức năng
Bảng 3: Bảng CSDL đăng nhập
Bảng 4 : Bảng CSDL nhân viên
Bảng 5: Bảng CSDL sản phẩm
Bảng 6: Bảng CSDL khách hàng
Bảng 7: Bảng CSDL hoá đơn nhập
Bảng 8: Bảng CSDL hoá đơn nhập chi tiết
Bảng 9: Bảng CSDL hoá đơn xuất
Bảng 10 : Bảng CSDL hoá đơn xuất chi tiết

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

LỜI MỞ ĐẦU

Ngày nay, với sự phát triển như vũ bão của khoa học kỹ thuật đã giúp nền kinh
tế của quốc gia trên toàn thế giới phát triển mạnh. Và khi nói đến sự thành công đó
ta không thể không kể đến đóng góp ngành Công Nghệ Thông Tin. Sự phát triển
của Công nghệ thông tin đã len lõi vào khoe hở của cuộc sống hằng ngày để tạo nên
sự tiện lợi cho mọi người. Trong thời đại ngày nay, cuộc sống của con người đã cải
thiện rất đáng kể so với thập kỷ trước. Mọi nhu cầu con người đều được nâng cao từ
nhu cầu thiết thực nhất là: ăn, uống, giải trí…Từ xưa đến nay, mọi hoạt động về
kinh tế- văn hoá- xã hội đều nhằm mục đích phục vụ đời sống, sức khoẻ, tinh thần
cho con người. Xã hội ngày càng phát triển thì mục đích đó ngày càng thiết thực
hơn.
Sự kết hợp giữa máy tính và môi trường giao tiếp tốt hiện nay đã trở thành một
tiêu chuẩn mà để tạo ra một sản phẩm phần mềm ứng dụng. Những hình thức mua
bán bình thường hiện nay như việc thanh toán hoá đơn bằng tiền mặt, các bộ phận
quản lí không thể cập nhập thông tin ngay về hàng hoá mất thời gian trong việc mua
bán…Và hình thức tốt nhất để con người có thể tiết kiệm thời gian mua bán và quản
lí tốt được mọi công việc một cách nhanh chóng và chính xác, là các sản phẩm phần
mềm ứng dụng.
Xuất phát từ nhu cầu thực tế hiện nay, qua quá trình tìm hiểu nhu cầu thực tế,
được sự đồng ý của giảng viên hướng dẫn khoa Tin học trường Đại học Sư phạm –
Đại học Đà Nẵng, em thực hiện đề tài “Phân tích, thiết kế và xây dựng phần mềm
quản lý cửa hàng mỹ phẩm”.
Trong thời gian làm đồ án em đã sử dụng vốn kiến thức ít ỏi của mình tìm hiểu
và phân tích bài toán này. Nó chỉ mang tính chất thử nghiệm để học hỏi, trao đổi
kinh nghiệm và làm quen với thực tế.
Tuy đã rất cố gắng học hỏi dựa trên kiến thức đã học, sự giúp đỡ của thầy cô
nhưng do khả năng và thời gian có hạn nên bài báo cáo của em không thể tránh khỏi
những thiếu sót. Em kính mong quý Thầy cô cùng bạn bè thông cảm và góp ý để em
kịp thời lấp kín những lỗ hổng kiến thức và chương trình đạt hiệu quả cao hơn.

Bên cạnh đó, em cũng xin gởi lời cảm ơn đến các thầy cô trong khoa Tin học
trường Đại Học Sư Phạm Đà Nẵng, đặc biệt là cô Phạm Dương Thu Hằng, người đã
trực tiếp giám sát, hướng dẫn em trong thời gian hoàn thành đồ án này.
Em xin chân thành cảm ơn!
Sinh viên
Mai Thị Kim Yến

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 11


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

TÓM TẮT ĐỒ ÁN TỐT NGHIỆP

-

Tên đề tài: “Phân tích, thiết kế và xây dựng phần mềm quản lý cửa hàng mỹ
phẩm”.
Trong quá trình công nghiệp hoá, hiện đại hoá đất nước thì công nghệ thông
tin là nhân tố quan trọng nhất để thúc đẩy đất nước phát triển. Bất kỳ một ngành
nghề nào cũng đều cần tin học hoá và lĩnh vực mua bán cũng không phải là trường
hợp ngoại lệ. Quá trình hoàn thành đồ án được tóm tắt như sau:
Chương 1: Tổng quan về đề tài: Nêu lên tên đề tài, bối cảnh ra đời, ý nghĩa, mục
tiêu và phạm vi nghiên cứu của đề tài.
Chương 2: Cơ sở lý thuyết : Nghiên cứu lý thuyết, công cụ thực hiện.
Chương 3: Phân tích và thiết kế hệ thống.

Chương 4: Triển khai và đánh giá kết quả.
Kết luận và hướng phát triển: Nêu lên các mặt đã đạt được và những hạn chế của đề
tài, hướng phát triển của đề tài.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 12


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

CHƯƠNG 1: TỔNG QUAN VỀ ĐỀ TÀI
1. GIỚI THIỆU VỀ ĐỀ TÀI:
1.1 Tên đề tài:

“ Phân tích, thiết kế và xây dựng phần mềm quản lý cửa hàng mỹ phẩm”.
1.2 Bối cảnh ra đời:
Hiện nay, công nghệ thông tin được xem là một ngành mũi nhọn của các quốc
gia, đặc biệt là các quốc gia đang phát triển, tiến hành công nghiệp hóa và hiện đại
hoá như nước ta. Sự bùng nổ thông tin và sự phát triển mạnh mẽ của công nghệ kỹ
thuật số, yêu cầu muốn phát triển thì phải tin học hoá tất cả các ngành, các lĩnh vực.
Cùng với sự phát triển nhanh chóng về phần cứng máy tính, các phần mềm
ngày càng trở nên đa dạng, phong phú, hoàn thiện hơn và hỗ trợ hiệu quả cho con
người. Các phần mềm hiện nay ngày càng mô phỏng được rất nhiều nghiệp vụ khó
khăn, hỗ trợ cho người dùng thuận tiện sử dụng, thời gian xử lý nhanh chóng, và
một số nghiệp vụ được tự động hoá cao.
Do vậy mà trong việc phát triển phần mềm, sự đòi hỏi không chỉ là sự chính
xác, xử lý được nhiều nghiệp vụ thực tế mà còn phải đáp ứng các yêu cầu khác như

về tốc độ, giao diện thân thiện, mô hình hoá được thực tế vào máy tính để người sử
dụng tiện lợi, quen thuộc, tính tương thích cao, bảo mật cao… Các phần mềm giúp
tiết kiệm một lượng lớn thời gian, công sức của con người, và tăng độ chính xác và
hiệu quả trong công việc.
Cùng với sự phát triển của đời sống thì nhu cầu làm đẹp, chăm sóc bản thân
của con người cũng được nâng cao, mà nhất là phụ nữ. Vì thế, nhiều loại mỹ phẩm
ra đời nhằm giúp chị em phụ nữ chăm sóc bản thân mình tốt hơn. Hàng loạt các cửa
hàng mỹ phẩm xuất hiện với đa dạng mỹ phẩm. Vì thế vấn đề quản lý sẽ trở nên
khó khăn hơn, nhất là khi có sự phát triển như vũ bão của công nghệ thông tin, thì
việc cần phần mềm quản lý chuyên nghiệp phục vụ cho nhu cầu quản lý trở nên cấp
thiết hơn bao giờ hết.
Xuất phát từ nhu cầu thực tế trên, em chọn đề tài” Phân tích, thiết kế và xây
dựng phần mềm quản lý cửa hàng mỹ phẩm” nhằm đáp ứng các nhu cầu trong việc
quản lý của hàng mỹ phẩm như hiện nay.
1.3 Mô tả ý tưởng bài toán:
Ý tưởng xây dựng hệ thống:
Trong thời đại kinh tế thị trường như hiện nay, các hoạt động kinh doanh với
nhiều loại hình khác nhau trở nên phát triển mạnh mẽ. Để đáp ứng nhu cầu đòi hỏi
ngày càng cao của các tổ chức doanh nghiệp trong vấn đề quản lý, việc xây dựng
nên phần mềm quản lý hệ thống là một giải pháp tốt nhất. Sẽ góp phần tin học hóa,
rút gọn thời gian làm việc, giảm thiểu chi phí và sức lao động, mang lại hiệu quả
kinh tế cao cho các doanh nghiệp.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 13


ĐỒ ÁN TỐT NGHIỆP


GVHD: Th.S Phạm Dương Thu Hằng

Một trong những mô hình đó là việc quản lý bán hàng tại các cửa hàng kinh
doanh mỹ phẩm.
- Cửa hàng là một loại hình kinh doanh quy mô nhỏ, kinh doanh tổng hợp có
cơ cấu chủng loại hàng hoá rất phong phú, đa dạng, nhiều mặt hàng được cập nhật
thường xuyên.
- Cửa hàng mỹ phẩm ngày càng trở nên thân thiết với người dân, nó đã và
đang dần trở thành địa điểm tiêu dùng không thể thiếu được của mỗi người, vì nhu
cầu chăm sóc bản thân ngày càng được ưa chuộng.
Do vậy để đảm bảo cho hệ thống cửa hàng có thể hoạt động tốt, cũng như để
thu hút nhiều khách hàng đến với cửa hàng thì cửa hàng đó cần phải có một hệ
thống quản lý hiện đại. Đó chính là một phần mềm quản lý, một phần mềm có khả
năng xử lý và bảo mật cao, giúp cho công việc quản lý trở nên nhẹ nhàng hơn, và
việc thanh toán diễn ra nhanh hơn…
Bởi vậy, phần mềm em thiết kế dưới đây một phần nào góp phần cung cấp giải
pháp tốt nhất cho vấn đề đó.
1.4 Ý nghĩa:
Với phần mềm quản lý cửa hàng mỹ phẩm có thể cung cấp một phần mềm
mua bán với quy mô lớn cho tất cả các loại mỹ phẩm, nhằm đáp ứng nhu cầu chăm
sóc sức khoẻ và sắc đẹp cho chị em phụ nữ, đồng thời đem lại những thuận lợi cho
người bán và người mua.
Đối với doanh nghiệp cá nhân là nhà cung cấp sản phẩm, phần mềm đã đem
lại những thuận lợi cơ bản như sau:
- Giảm chi phí sản xuất, bán hàng, tiếp thị giao dịch.
- Tăng chất lượng dịch vụ khách hàng.
- Tăng doanh thu cho doanh nghiệp, cá nhân.
- Tạo ra lợi thế cạnh tranh cho doanh nghiệp, giúp cho doanh nghiệp kịp thời đổi mới
sản phẩm, để cung cấp theo nhu cầu của khách hàng.
Đối với khách hàng tiêu thụ sản phẩm, phần mềm đem lại cho khách hàng

những tiện ích rất rõ ràng như sau:
- Thu thập , lựa chọn được nhiều thông tin sản phẩm
- Giảm thiểu chi phí, thời gian cho khách hàng.
Đồng thời, phần mềm đem lại sự cạnh tranh lớn hơn về chất lượng sản phẩm,
tạo sự bình ổn giá cả, vì vậy nhiều sản phẩm mới ra đời có chất lượng để phục vụ
cho nhu cầu của khách hàng.
2. MỤC TIÊU VÀ PHẠM VI CỦA ĐỀ TÀI
2.1 Mục tiêu của đề tài:
Với ý nghĩa trên, mục tiêu cần đặt ra khi xây dựng phần mềm quản lý cửa
hàng mỹ phẩm với đầy đủ chức năng nhằm đem lại những thuận lợi nhất định cho

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 14


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

việc trao đổi mua bán của khách hàng. Để đáp ứng nhu cầu đó, hệ thống phần mềm
được xây dựng với các chức năng cơ bản sau:
- Phần mềm Quản lý cửa hàng mỹ phẩm nhằm ứng dụng CNTT để giải quyết các vấn
đề nghiệp vụ, phục vụ cho công tác quản lý cửa hàng.
- Quản lý thông tin của khách hàng, nhân viên, dịch vụ, các chương trình khuyến
mãi, giảm giá, …
- Quản lý các hoạt động kinh doanh của cửa hàng, sự cố phát sinh, báo cáo doanh
thu, …
- Giúp khách hàng có thể tìm kiếm những sản phẩm, nhu cầu thông tin về sản phầm,


2.2 Phạm vi của đề tài:
Đề tài được phân tích và thiết kế trên những cửa hàng có quy mô vừa và
nhỏ,có những yêu cầu nghiệp vụ khá đơn giản.
Việc xây dựng dựa trên quá trình phân tích thiết kế bằng ngôn ngữ mô hình
hoá(UML) và sử dụng các công cụ lập trình để hoàn thành phần mềm này.
Sử dụng công nghệ .NET để phát triển ứng dụng.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 15


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
1. GIỚI THIỆU VỀ NET FRAMEWORK
1.1 Giới thiệu về Net Framework:
.NET Framework là một nền tảng lập trình và cũng là một nền tảng thực thi
ứng dụng chủ yếu trên hệ điều hành Microsoft Windows được phát triển
bởi Microsoft. Các chương trình được viết trên nền .NET Framework sẽ được triển
khai trong môi trường phần mềm (ngược lại với môi trường phần cứng) được biết
đến với tên Common Language Runtime (CLR). Môi trường phần mềm này là
một máy ảo trong đó cung cấp các dịch vụ như an ninh phần mềm (security), quản
lý bộ nhớ (memory management), và các xử lý lỗi ngoại lệ (exception handling).
.NET Framework bao gồm tập các thư viện lập trình lớn, và những thư viện
này hỗ trợ việc xây dựng các chương trình phần mềm như lập trình giao diện; truy
cập, kết nối cơ sở dữ liệu; ứng dụng web; các giải thuật, cấu trúc dữ liệu; giao tiếp
mạng... CLR cùng với bộ thư viện này là 2 thành phần chính của .NET

Framework.
1.2 Vai trò:
- Cung cấp một môi trường nhất quán cho lập trình hướng đối tượng.
- Tối ưu hóa việc phát triển phần mềm và sự xung đột phiên bản bằng việc
cung cấp một môi trường thực thi mã nguồn.
- Cung cấp môi trường thực thi code an toàn hơn.
- Hỗ trợ nhiều ngôn ngữ .
- Tận dụng những dịch vụ của hệ điều hành.
1.3 Các thành phần của .NET Framework:
1.3.1 Thực thi ngôn ngữ chung CLR ( Common Language Runtime):
Là thành phần cốt lỗi của .NET, CLR thực hiện các chức năng sau:
- Quản lý bộ nhớ.
- Thực thi mã nguồn.
- Xác nhận sự an toàn của code.
- Thu gom rác.
- Tất cả các ngôn ngữ lập trình đều có một runtime (thi hành), một dịch vụ
hoạt động cùng với ngôn ngữ lập trình.
1.3.2
CLR là bộ thi hành ngôn ngữ chung (Common Language Runtime)
Là một thành phần cốt lõi (cơ bản nhất) của .NET. Nó cung cấp nền cơ sở mà
trên đó các ứng dụng cho. NET được xây dựng.
- CLR quản lí nhiều khía cạnh của chu trình phát triển theo quan điểm của
người phát triển. Chẳng hạn, khi làm việc với COM, các nhà phát triển
phải lưu tâm đến vấn đề quản lí bộ nhớ, những sự khởi tạo luồng
SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 16


ĐỒ ÁN TỐT NGHIỆP


GVHD: Th.S Phạm Dương Thu Hằng

(thread) và loại bỏ nó, các thành phần bảo mật và những vấn đề tương
tự. Điều đó gây ra một số khó khăn do các nhà phát triển phải tiêu tốn
quá nhiều thời gian vào các vấn đề này.
- Bộ thi hành ngôn ngữ chung CLR quản lí tất cả các vấn đề nảy sinh đó
một cách tự động và giải phóng cho các nhà phát triển tập trung vào
việc xử lý giao dịch logic.
- CLR cung cấp một runtime chung mà nó được sử dụng với tất cả các
ngôn ngữ. Thành phần này làm cho .NET có một khả năng hỗ trợ mọi
ngôn ngữ
1.3.3 Các lớp lập trình hợp nhất (Unified Programming Classes)
Các lớp lập trình hợp nhất (Unified Programming Classes).
- Những thư viện lớp lập trình hay các giao diện lập trình ứng dụng (API)
được sử dụng bởi nhiều ngôn ngữ khác nhau.
- Để sử dụng những ngôn ngữ lập trình khác nhau, các nhà phát triển
nghiên cứu các bộ thư viện lớp khác nhau để làm việc với các ngôn ngữ
lập trình khác nhau. Vấn đề này đã làm chậm quá trình phát triển ứng
dụng và làm cho công việc phát triển trở nên tẻ nhạt và lãng phí khá
nhiều thời gian.
- .NET cung cấp các lớp lập trình hợp nhất với một bộ API dùng chung
cho mọi ngôn ngữ lập trình.
- Các ngôn ngữ có thể tương tác với một ngôn ngữ khác và các lớp lập
trình hợp nhất này cho phép các nhà phát triển lựa chọn bất cứ ngôn
ngữ nào mà họ muốn trong khi chỉ cần duy nhất một bộ API mà thôi.
2. CÔNG CỤ PHÂN TÍCH, THIẾT KẾ DỮ LIỆU
2.1 Microsoft Visual Studio 2008
Đây là môi trường hỗ trợ lập trình tích hợp (IDE – Intergrated Development
Environment) khá mạnh của hãng Microsoft, chuyên để phát triển các sản phẩm

phần mềm trên môi trường .NET (Lập trình Web, ứng dụng desktop, ứng dụng trên
thiết bị đi động) một cách nhanh chóng và hiệu quả.
Visual Studio cung cấp các tiện ích mở rộng cho việc phát triển các ứng dụng.
2.2 Microsoft SQL Server Express 2005
SQL Server 2005 là một hệ quản trị cơ sở dữ liệu quan hệ (Relational
Database Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ
liệu giữa Client computer và SQL Server computer.
Một RDBMS bao gồm database, database engine và các ứng dụng dùng để
quản lý dữ liệu và các bộ phận khác nhau trong RDBMS
SQL Server 2005 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất
lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng
lúc cho hàng ngàn user.
SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 17


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

SQL Server 2005 có thể kết hợp "ăn ý" với các server khác như Microsoft
Internet Information Server (IIS), E-Commerce Server, Proxy Server....

3. GIỚI THIỆU NGÔN NGỮ LẬP TRÌNH C#:
Ngôn ngữ C# khá đơn giản, chỉ khoảng hơn 80 từ khóa và hơn mười mấy kiểu
dữ liệu được dựng sẵn.Tuy nhiên, ngôn ngữ C# có ý nghĩa to lớn khi nó thực
thi những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu
trúc, thành phần (component), lập trình hướng đối tượng. Những tính chất đó
hiện diện trong một ngôn ngữ lập trình hiện đại. Hơn nữa ngôn ngữ C# được

xây dựng trên nền tảng hai ngôn ngữ mạnh nhất là C++ và Java.
Tóm lại, C# có các đặc trưng sau đây:


C# là ngôn ngữ đơn giản: C# loại bỏ được một vài sự phức tạp và rối
rắm của các ngôn ngữ C++ và Java. C# khá giống C / C++ về diện mạo,
cú pháp, biểu thức, toán tử. Các chức năng của C# được lấy trực tiếp từ
ngôn ngữ C / C++ nhưng được cải tiến để làm cho ngôn ngữ đơn giản
hơn.



C# là ngôn ngữ hiện đại :
C# có được những đặc tính của ngôn ngữ hiện đại như:
- Xử lý ngoại lệ.
- Thu gom bộ nhớ tự động.
- Có những kiểu dữ liệu mở rộng.
- Bảo mật mã nguồn.



C# là ngôn ngữ hướng đối tượng
C# hỗ trợ tất cả những đặc tính của ngôn ngữ C:
- Sự đóng gói (encapsulation)
- Sự kế thừa (inheritance)
- Đa hình (polymorphism)



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


SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 18


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

Với ngôn ngữ C#, chúng ta chỉ bị giới hạn ở chính bản thân của chúng
ta. Ngôn ngữ này không đặt ra những ràng buộc lên những việc có thể
làm.
- C# được sử dụng cho nhiều dự án khác nhau như: tạo ra ứng dụng xử
lý văn bản, ứng dụng đồ họa, xử lý bảng tính; thậm chí tạo ra những
trình biên dịch cho các ngôn ngữ khác.
- C# là ngôn ngữ sử dụng giới hạn những từ khóa. Phần lớn các từ khóa
dùng để mô tả thông tin, nhưng không gì thế mà C# kém phần mạnh
mẽ. Chúng ta có thể tìm thấy rằng ngôn ngữ này có thể được sử dụng để
làm bất cứ nhiệm vụ nào.


C# là ngôn ngữ hướng module :
-Mã nguồn của C# được viết trong Lớp (Class) .Những lớp này chứa
các phương thức (Method) thành viên của nó.
- Lớp (Class) và các phương thức (Method) thành viên của nó có thể
được sử dụng lại trong những ứng dụng hay chương trình khác.




C# sẽ trở nên phổ biến: C# mang đến sức mạnh của C++ cùng với sự dễ
dàng của ngôn ngữ Visual Basic.

C#, theo một hướng nào đó, là ngôn ngữ lập trình phản ánh trực tiếp nhất
đến .NET Framework mà tất cả các chương trình .NET chạy, và nó phụ thuộc mạnh
mẽ vào Framework này.
Mọi dữ liệu cơ sở đều là đối tượng, được cấp phát và hủy bỏ bởi trình dọn rác
Garbage-Collector (GC), và nhiều kiểu trừu tượng khác chẳng hạn như class,
delegate, interface, exception, v.v, phản ánh rõ ràng những đặc trưng của .NET
runtime.
So sánh với C và C++, ngôn ngữ này bị giới hạn và được nâng cao ở một vài
đặc điểm nào đó, nhưng không bao gồm các giới hạn sau đây:
- Các con trỏ chỉ có thể được sử dụng trong chế độ không an toàn. Hầu hết các
đối tượng được tham chiếu an toàn, và các phép tính đều được kiểm tra tràn
bộ đệm. Các con trỏ chỉ được sử dụng để gọi các loại kiểu giá trị; còn những
đối tượng thuộc bộ thu rác (garbage-collector) thì chỉ được gọi bằng cách
tham chiếu.
- Các đối tượng không thể được giải phóng tường minh.
- Chỉ có đơn kế thừa, nhưng có thể cài đặt nhiều giao diện trừu tượng
(abstract interfaces). Chức năng này làm đơn giản hóa sự thực thi của thời
gian thực thi.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 19


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng


-

4.
4.1

4.2

5.

C# thì an-toàn-kiểu (typesafe) hơn C++.
Cú pháp khai báo mảng khác nhau("int[] a = new int[5]" thay vì "int a[5]").
Kiểu thứ tự được thay thế bằng tên miền không gian (namespace).
C# không có tiêu bản.
Có thêm Properties method, các phương thức có thể truy cập dữ liệu bên
trong lớp.
- Có reflection: Cho phép đọc thông tin từ các siêu dữ liệu để tạo ra một đối
tượng (có kiểu Type) bao gói các thông tin đó lại.
KHÁI NIỆM CƠ SỞ DỮ LIỆU:
Khái niệm Cơ sở dữ liệu:
Cơ sở dữ liệu: Là một tập hợp các bảng dữ liệu có quan hệ với nhau sao cho
cấu trúc của chúng cũng như các mối quan hệ bên trong giữa chúng là tách biệt với
chương trình ứng dụng bên ngoài, đồng thời nhiều người dùng khác nhau cũng như
nhiều ứng dụng khác nhau có thể cùng khai thác và chia sẽ một cách chọn lọc lúc
cần.
Thực thể: Là hình ảnh cụ thể của một đối tượng trong hệ thống thông tin quản
lý.Một thực thể xác định tên và các thuộc tính.
Thuộc tính: Là một yếu tố dữ liệu hoặc thông tin của thực thể ấy.
Lớp thực thể: Là các thực thể cùng thuộc tính.
Lược đồ quan hệ: Tập các thuộc tính của một quan hệ. Lược đồ quan hệ gồm

các thuộc tính của thực thể cùng với các mệnh đề ràng buộc.
Các phép toán tối thiểu:
Tìm kiếm dữ liệu theo tiêu chuẩn đã chọn, không làm thay đổi trang thái cơ
sở
dữ liệu.
Thay đổi cấu trúc cơ sở dữ liệu.
Thay đổi nội dung cơ sở dữ liệu.
Quan hệ cơ sở dữ liệu:
Cơ sở dữ liệu quan hệ là cơ sở dữ liệu được tổ chức theo mô hình quan hệ.
Trong đó, các đối tượng dữ liệu và các quan hệ giữa các đối tượng quan hệ đó được
tổ chức thành các thực thể. Mỗi thực thể bao gồm một tập hợp các thuộc tính. Mỗi
thể hiện của một thực thể là một bộ các giá trị tương ứng với các thuộc tính của các
thực thể đó.
GIỚI THIỆU MÔ HÌNH LẬP TRÌNH 3 LỚP( 3-TIER)

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 20


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

Hình1: Mô hình 3 tầng trong lập trình C#
5.1 Khái niệm:

Mô hình 3 lớp là kiến trúc kiểu client - server trong đó nó sử dụng giao diện
người dùng, quá trình diễn biến, cất giữ và truy cập dữ liệu để người phát triển bảo
vệ những modules (bộ phận tháo rời được) độc lập hoặc nhiều nền riêng rẽ .

Lập trình 3 lớp với C# là một kỹ thuật lập trình khá hiện đại, tuy không mới
nhưng nó được sự quan tâm rất lớn của cộng đồng những lập trình viên trên môi
trường .Net.
Với mô hình ứng dụng trên, ứng dụng được chia thành những thành phần nhỏ
hơn, độc lập về chức năng, cách xử lý dữ liệu hay truy cập dữ liệu.
5.2 Nhiệm vụ:
Mỗi tầng trong mô hình có một nhiệm vụ nhất định như sau:
- Tầng giao diện (Presentation Layer):
Không chỉ là giao diện người dùng mà tầng giao diện còn là cổng giao tiếp
giữa các ứng dụng, chúng đóng vai trò giao tiếp và truyền tải dữ liệu giữa các ứng
dụng với nhau.
Tiếp nhận thông tin từ người dùng.
Lớp này sử dụng các dịch vụ do lớp nghiệp vụ cung cấp.
Trả các thông tin phản hồi nhận được từ tầng nghiệp vụ (Business Logic
Layer) từ hệ thống đến người dùng.
- Tầng nghiệp vụ (Business Logic Layer)
Lớp này thực hiện các yêu cầu về nghiệp vụ của hệ thống.
Là tầng trung gian giữa tầng giao diện và tầng truy cập dữ liệu (Data Access
Layer), sử dụng các dịch vụ do tầng truy cập dữ liệu cung cấp, và cung cấp các dịch
vụ cho lớp giao diện.
Xử lý các dữ liệu nghiệp vụ, không quá chú trọng đến lập trình hay xử lý của
hệ thống.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 21


ĐỒ ÁN TỐT NGHIỆP


GVHD: Th.S Phạm Dương Thu Hằng

- Tầng truy cập dữ liệu (Data Access Layer-DAL)
Lớp này thực hiện các nghiệp vụ liên quan đến lưu trữ và truy xuất dữ liệu của
ứng dụng.
Nhận yêu cầu từ tầng nghiệp vụ, xử lý yêu cầu nghiệp vụ thông qua các khía
cạnh dữ liệu của hệ thống.
Thường lớp này sẽ sử dụng các dịch vụ của các hệ quản trị cơ sở dữ liệu như
SQL Server, Oracle, DB2, My SQL … để thực hiện công việc của mình.
Trực tiếp truy cập cơ sở dữ liệu, xử lý thông tin và trả kết quả cho đối tượng
nghiệp vụ nằm trong tầng nghiệp vụ.
5.3 Đặc điểm:
Đặc điểm đáng chú ý của mô hình này:
- Ưu điểm:
Dữ liệu mà các tầng trao đổi với nhau thường không phải là kiểu dữ liệu
nguyên thủy, mà là 1 đối tượng nghiệp vụ do người lập trình cung cấp (hay được
gọi bằng tên: Data Object Transfer (DTO)).
Tất cả các đối tượng trong các tầng đều có thể sử dụng đối tượng DTO
(Business Entities).
Các tầng độc lập với nhau về chức năng nên dễ làm việc, nếu có lỗi trong
quá trình thực thi mã nguồn hay kiểm thử thì việc sửa lỗi không quá phức tạp.
Việc tách lớp này có lợi khi sau này, bạn muốn thay đổi hệ quản trị cơ sở dữ
liệu, chỉ việc thay đổi lớp DAL mà không làm ảnh hưởng các lớp khác.
Khả năng bảo mật và an toàn hệ thống tốt hơn: Lớp giao diện hông chứa mã
lệnh thao tác trực tiếp trên cơ sở dữ liệu mà chỉ chứa các yêu cầu phục vụ đến lớp
truy cập dữ liệu, vì vậy nếu nhà phát triển phân tích và xây dựng các phương thức
phục vụ ở lớp truy cập dữ liệu kỹ lưỡng và an toàn thì hệ thống sẽ đạt độ bảo mật
rất cao.
Dễ quản lý: việc nâng cấp, sửa đổi có thể thực hiện ở tầng vật lý tương ứng.
- Nhược điểm:

Vì lý do dữ liệu truyền giữa các tầng là 1 đối tượng kiểu tham chiếu, nên
việc khởi tạo thông tin cho đối tượng khá mất thời gian (so với việc truyền dữ liệu
kiểu nguyên thủy).
Với mỗi phượng thức trên của 1 đối tượng ta phải viết nhưng đoạn mã
nguồn tương đối giống nhau (khá mất thời gian).
Tốn nhiều công sức cài đặt (nhiều server) hơn.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 22


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

CHƯƠNG 3: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
1.

BẢNG CÔNG VIỆC VÀ SƠ ĐỒ GANTT:
1.1 Bảng công việc
Bảng 1: Bảng công việc

STT
CÔNG VIỆC
CÔNG
VIỆC
1 Lập kế hoạch xác định yêu cầu
2 Khảo sát yêu cầu chức năng
3

4
5
6
7

Phân tích, thiết kế hệ thống
Xây dựng quản lý cấu hình
Xây dựng và thiết kế phần mềm
Kiểm thử sản phẩm
Hoàn thành

NGÀY NGÀY KẾT SỐ NGÀY KẾT QUẢ
BẮT ĐẦU THÚC
THỰC
HIỆN
28/02/2013 08/03/2013
9
Hoàn thành
09/03/2013 15/03/2013
6
Hoàn thành
16/03/2013
27/03/2013
07/04/2013
03/05/2013
12/05/2013

26/03/2013
06/04/2013
02/05/2013

11/05/2013
20/05/2013

10
11
25
9
4

Hoàn thành
Hoàn thành
Hoàn thành
Hoàn thành
Hoàn thành

1.2 Sơ đồ gantt:

Hình 2. Sơ đồ Gantt

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 23


ĐỒ ÁN TỐT NGHIỆP
2

GVHD: Th.S Phạm Dương Thu Hằng

SƠ ĐỒ NGỮ CẢNH:

Báo cáo , thống kê
Sự yêu cầu báo cáo

Người quản lý
Hàng+ hoá đơn
Hàng+ phiếu giao hàng
Đơn đặt hàng
Sự mua hàng + y/c thanh toán

Khách hàng
Nhà cung cấp
Tiền + sự ký nhận
Hoá đơn

Quản lý cửa hàng mỹ phẩm Beauty

Hình 3. Sơ đồ ngữ cảnh

CÁC CHỨC NĂNG CỦA CHƯƠNG TRÌNH:
Chương trình có các chức năng như sau:
- Cập nhật thông tin về sản phẩm, khách hàng, nhân viên mới.
• Nhập dữ liệu.
• Thêm dữ liệu mới.
• Chỉnh sửa, xoá bỏ dữ liệu.
Nhập các HĐN, HĐX, kiểm tra số lượng hàng tồn trong kho cũng như số
lượng hàng đã bán ra theo ngày hoặc tháng, năm.
Báo cáo hàng nhập, hàng xuất, hàng tồn kho theo ngày, tháng, năm.
Vẽ sơ đồ phân rã chức năng:
Các ký hiệu sử dụng:
<tên chức năng>

- Tên chức năng của hệ thống :
3

- Quan hệ phân cấp:

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 24


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

Sơ đồ phân rã chức năng:

Hình 4. Mô hình phân rã chức năng

Mô tả chi tiết chức năng lá của mô hình phân rã chức năng:

Quản lý hệ thống: quản lý thông tin những người sử dụng chương trình
như tên đăng nhập, mật khẩu, thêm người dùng, xóa người dùng.









Đăng nhập: Kiểm tra thông tin đăng nhập.
Đổi mật khẩu: cho phép người sử dụng thay đổi mật khẩu của họ.
Quản lý người dùng: quản lý các thông tin của nhân viên, người sử dụng hệ thống
như tên, mã nhân viên, cmnd, địa chỉ….
Quản lý sản phẩm: Quản lý các thông tin về sản phẩm như mã sản phẩm, tên
sản phẩm, ngày sản xuất, ngày hết hạn, nhà sản xuất,…
Quản lý kho hàng: quản lý sản phẩm khi nhập vào kho.
Nhập sản phẩm: Nhập các thông tin liên quan đến sản phẩm.
Kiểm kê số lượng: so sánh hàng hoá trước khi nhập và sau khi nhập.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 25


ĐỒ ÁN TỐT NGHIỆP








4

GVHD: Th.S Phạm Dương Thu Hằng

Thanh lý, cập nhật sản phẩm mới: thanh lý các sản phẩm đã hết hạn sử dụng, đồng
thời cập nhật thông tin của các sản phẩm mới.

Quản lý thông tin sản phẩm, nhà cung cấp: Lưu trữ các thông tin về sản phẩm cũng
như nhà sản xuất.
Quản lý xuất nhập kho: Quản lý số lượng hàng hoá trong kho, kiểm kê sản
phẩm khi nhập hoặc xuất.
Nhập HĐN, HĐX: Khi đưa sản phẩm vào kho phải nhập vào HĐN và khi bán hàng
thì nhập hoá đơn xuất.
Quản lý sản phẩm nhập, xuất: Kiểm tra thông tin về sản phẩm khi nhập hàng, xuất
hàng.
Nhập hàng, xuất hàng: Khi có HĐN, HĐX thì mới thực hiện việc nhập hàng, xuất
hàng.
Kiểm tra đối chiếu: So sánh, đối chiếu sản phẩm nhập, xuất với HĐN, HĐX.
Quản lý bán hàng: Quản lý các vấn đề trong việc bán sản phẩm.
Báo cáo thống kê: báo cáo các hoá đơn nhập xuất , hàng tồn kho khi người
quản lý yêu cầu.
LIỆT KÊ CÁC HỒ SƠ DỮ LIỆU SỬ DỤNG:
Danh mục sản phẩm
Hoá đơn nhập
Hoá đơn xuất
Danh mục khách hàng
Danh mục nhân viên
Danh mục hàng tồn kho
Báo cáo
Lập ma trận thực thể chức năng:
Bảng 2: Bảng ma trận thực thể chức năng

Các thực thể
a. Danh mục sản phẩm
b. Hoá đơn nhập
c. Hoá đơn xuất
d. Danh mục khách hàng

e.Danh mục nhân viên
f. Danh mục hàng tồn kho
g. Báo cáo
Các chức năng nghiệp vụ
1. Quản trị hệ thống
2. Quản lý sản phẩm
3. Quản lý xuất nhập kho
SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

a
U

b

C
U

R
C

c

d
R

e
C

f


g

R

C
Trang 26


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

4. Quản lý bán hàng
5. Tra cứu
6. Báo cáo
5
5.1

5.2

5.3

5.4

5.5

5.6

U
R

R

C
R

C
R

R
R
R

R
R
R

R
R

C

ĐẶC TẢ USE-CASE:
Use-Case: Đăng Nhập
- Actor: Quản trị, Nhân viên
- Input: Nhập đầy đủ user và password
- Output: Nếu user và password hợp lệ thì sẽ hiển thị ra giao diện chính của
phần mềm. Nếu user và password không hợp lệ thì sẽ thông báo lỗi.
User-Case : Quản Lý Sản phẩm
- Actor: Nhân Viên
- Input: Nhập đầy đủ thông tin về sản phẩm cần quản lý

- Output: Nếu thông tin nhập liệu chính xác thì hệ thống sẽ thực hiện các chức
năng quản lý. Nếu không hợp lệ thì hệ thống sẽ yêu cầu nhập lại thông tin cho
chính xác.
User-Case : Quản Lý Khách Hàng, NCC
- Actor: Nhân Viên
- Input: Nhập đầy đủ thông tin cần quản lý của khách hàng
- Output: Nếu thông tin nhập liệu chính xác thì hệ thống sẽ thực hiện các chức
năng quản lý. Nếu không hợp lệ thì hệ thống sẽ yêu cầu nhập lại thông tin cho
chính xác.
User-Case : Quản Lý Bán Hàng
- Actor: Nhân Viên
- Input: Nhập đầy đủ thông tin cần quản lý khi nhập hàng, xuất hàng.
- Output: Nếu thông tin nhập liệu chính xác thì hệ thống sẽ thực hiện các chức
năng quản lý. Nếu không hợp lệ thì hệ thống sẽ yêu cầu nhập lại thông tin cho
chính xác.
User-Case : Báo cáo
- Actor: Nhân Viên
- Input: Nhập đầy đủ thông tin các hoá đơn cần báo cáo
- Output: Nếu thông tin nhập liệu chính xác thì hệ thống sẽ thực hiện các chức
năng báo cáo theo từng đơn hàng, theo yêu cầu của nhân viên.Nếu không hợp
lệ thì hệ thống sẽ yêu cầu nhập lại thông tin cho chính xác.
User-Case : tra cứu
- Actor: Nhân Viên
- Input: Tra cứu các thông tin liên quan đến nhân viên, khách hàng, sản phẩm,
các hoá đơn nhập, xuất, hàng tồn kho là bao nhiêu.

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 27



ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

- Output: Sauk hi tra cứu, hệ thống sẽ trả về các thông tin mà người nhập yêu
cầu. Nếu nhập không chính xác thì hệ thống sẽ báo lỗi và yêu cầu nhập lại.
5.7 User-Case : Quản Lý Nhân Viên
- Actor: Quản Trị
- Input: Nhập đầy đủ thông tin cần quản lý nhân viên
- Output: Nếu thông tin nhập liệu chính xác thì hệ thống sẽ thực hiện các chức
năng quản lý .Nếu không hợp lệ thì hệ thống sẽ yêu cầu nhập lại thông tin cho
chính xác.
Ngoài ra, người quản trị sẽ có đầy đủ quyền của một nhân viên.
Sơ đồ Use-Case của hệ thống:

Hình 5. Sơ đồ Use Case

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 28


ĐỒ ÁN TỐT NGHIỆP

GVHD: Th.S Phạm Dương Thu Hằng

6. BIỂU ĐỒ LUỒNG DỮ LIỆU MỨC ĐỈNH:
6.1 Ký hiệu hình vẽ:
- Tiến trình (chức năng) :


- Luồng dữ liệu:
- Kho dữ liệu:
- Tác nhân ngoài:
- Tác nhân trong:
6.2 Vẽ sơ đồ:
Hàng nhập+ hoá đơn
Sự báo hết hàng
Phiếu xuất + hàng
Quản lý xuất- nhập kho
Sự kiểm kê hàng
sự ký nhận
Chỉ thị
Báo cáo
Yêu cầu b/c
Báo cáo
Bản báo cáo, thống kê
Sự yêu cầu báo cáo
Sự chỉ đạo
Sự báo cáo
Hoá đơn thanh toán
Tiền
Hàng trả+ phiếu xuất
Sự y/c xuất hàng
Phiếu đặt hàng

SVTH: MAI THỊ KIM YẾN – LỚP 09CNTT01

Trang 29



×