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

XÂY DỰNG WEBSITE GIỚI THIỆU VÀ BÁN SẢN PHẨM SƠN TƯỜNG

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.43 MB, 61 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
----------***----------

PHÁT TRIỂN PHẦM MỀM THEO HƯỚNG CẤU PHẦN
ĐỀ TÀI : XÂY DỰNG WEBSITE GIỚI THIỆU VÀ BÁN SẢN
PHẨM SƠN TƯỜNG

Giáo viên hướng dẫn: Nguyễn Thái Cường
Nhóm thực hiện: Nhóm 1
Thành viên nhóm :

- Nguyễn Đăng Trung
- Phạm Văn Tồn
-Đào Thanh Hải

Hà nội(30-10-2015)

1


Mục lục

ĐỀ CƯƠNG
1.Tên đề tài
Xây dựng website giới thiệu và bán sản phẩm sơn tường
2.Lý do chọn đề tài
Hiện nay việc quản lý một cửa hàng sơn trên giấy tờ là rất khó
khăn:
- Số lượng hãng sơn, loại sơn và sản phẩm sơn rất
nhiều,nếu chỉ có trên giấy tờ thì việc tìm kiếm phân


loại rất mất thời gian và cơng sức.
- Việc kiểm kê số lượng, thống kê đơn hàng, báo cáo
khó khăn
- Việc quản lý tốn cơng sức, thời gian,chính vì vậy
nên nhó chúng em muốn thiết kế 1 website giúp
cho công việc quản lý cửa hàng sơn trở nên dễ dàng
hơn.
3.Mục tiêu
Xây dựng được một hệ thống website giới thiệu và bán sản phẩm
có giao diện thân thiện dễ sử dụng,tin tức cập nhật thường xuyên,
quản lý danh mục hãng, loại sơn, sản phẩm, thống kê, báo cáo dễ
dàng.
2


4.Phân công công việc

3


5.Bố cục đề tài
Chương 1: Tìm hiểu về mơ hình MVC
- Giới thiệu chung
- Đặc điểm của mơ hình MVC
- Tìm hiểu về Controler,Model,View
Chương 2: Khảo sát , phân tích hệ thống
- Khảo sát
- Phân tích hệ thống

Chương 3:Thiết kế,lập trình hệ thống theo mơ hình MVC


+ Thiết kế

- Thiết kế CSDL
- Thiết kế giao diện trang chủ
- Thiết kế giao diện sản phẩm
- Thiết kế giao diện tin tức
- Thiết kê giao diện admin
+ Lập trình
Chương 4: Tổng kết
- Đánh giá, chạy thử website

4


Chương I.Tìm hiểu về mơ hình MVC
1.Giới thiệu chung
1.1 Lịch sử ra đời
MVC được phát minh tại Xerox Parc vào những năm 70, bởi
TrygveReenskaug. MVC lần đầu tiên xuất hiện cơng khai là trong
Smalltalk-80. Sau đó trong một thời gian dài hầu như khơng có thơng tin
nào về MVC, ngay cả trong tài liệu 80 Smalltalk. Các giấy tờ quan trọng
đầu tiên đƣợc công bố trên MVC là “A Cookbook for Using the ModelView-Controller User Interface Paradigm in Smalltalk – 80”, bởi Glenn
Krasner và Stephen Pope, xuất bản trong tháng 8 / tháng 9 năm 1988.
1.2 Khái niệm
MVC là viết tắt của Model – View – Controller. Là một trong những mẫu
thiết kế được vận hành để tách mã lệnh thành 3 phần riêng biệt. Ở mỗi
phần MVC sẽ có những chức năng đặc thù. Để xử lý các tác vụ mà
request gởi tới. MVC làm cho mã lệnh trở nên trong sáng, dễ phát triển và
dễ nâng cấp theo thời gian.

2.Đặc điểm của mơ hình MVC
Trong kiến trúc MVC, một đối tượng đồ họa người dùng bao gồm 3 thành
phần cơ bản: Model, View, và Controller. Model có trách nhiệm đối với
toàn bộ dữ liệu cũng như trạng thái của đối tượng đồ họa. View chính là
thể hiện trực quan của Model, hay nói cách khác chính là giao diện của
đối tượng đồ họa. Và Controller điều khiển việc tương tác giữa đối tượng
đồ họa với người sử dụng cũng như những đối tượng khác.

5


Hình 2.1: Các thành phần chính của mơ hình MVC


Model: Là thành phần chịu trách nhiệm xử lý các thao tác trên database.
Và gởi trả kết quả thơng qua view.



View: Là phần hiển thị thông tin trên website, sau khi đi qua controller và
nhận kết quả từ phía model thì view là bước cuối cùng để chuyển thông
tin tới người dùng.



Controller: Là phần điều hướng các request tới những tác vụ tương ứng.
Controller là một phần không thể thiếu ở bất cứ framework nào. Vì nó có
trách nhiệm gởi và nhận request từ hệ thống tới người sử dụng.

Khi người sử dụng hoặc những đối tượng khác cần thay đổi trạng thái của

đối tượng đồ họa, nó sẽ tương tác thông qua Controller của đối tượng đồ
họa. Controller sẽ thực hiện việc thay đổi trên Model. Khi có bất kỳ sự
6


thay đổi nào xảy ra ở Model, nó sẽ phát thông điệp ( broadcast message)
thông báo cho View và Controller biết.
Nhận được thông điệp từ Model, View sẽ cập nhật lại thể hiện của mình,
đảm bảo rằng nó ln là thể hiện trực quan chính xác của Model. Cịn
Controller, khi nhận được thơng điệp từ Model, sẽ có những tương tác cần
thiết phản hồi lại người sử dụng hoặc các đối tượng khác

Hình 2.2: Mơ hình tuần tự của MVC

 Ưu Điểm:
MVC làm cho ứng dụng trở nên trong sáng, giúp lập trình viên phân tách
ứng dụng thành ba lớp một cách rõ ràng. Điều này sẽ rất giúp ích cho việc
phát triển những ứng dụng xét về mặt lâu dài cho việc bảo trì và nâng cấp
hệ thống.
MVC hiện đang là mơ hình lập trình tiên tiến bậc nhất hiện nay, điều mà
các framework vẫn đang nổ lực để hướng tới sự đơn giản và yếu tố lâu
dài cho người sử dụng.
 Khuyết Điểm:
7


Mặc dù, MVC tỏ ra lợi thế hơn nhiều so với cách lập trình thơng thường.
Nhưng MVC ln phải nạp, load những thư viện đồ sộ để xử lý dữ liệu.
Chính điều này làm cho mơ hình trở nên chậm chạp hơn nhiều so với việc
code tay thuần túy.

MVC đòi hỏi người tiếp cận phải biết qua OOP, có kinh nghiệm tương
đối cho việc thiết lập và xây dựng một ứng dụng hồn chỉnh. Sẽ rất khó
khăn nếu OOP của người sử dụng còn yếu.
MVC tận dụng mảng là thành phần chính cho việc truy xuất dữ liệu. Nhất
là với việc sử dụng active record để viết ứng dụng. Chúng ln cần người
viết phải nắm vứng mơ hình mảng đa chiều.

3.Tìm hiểu về Controler, Model và View
3.1 Controler
Controller có trách nhiệm chính là điều hướng các yêu cầu của người sử
dụng, tất cả các request đều sẽ phải đi tới controller. Và tại đây, ứng với
các tham số người sử dụng truyền mà đưa đến một tác vụ nào đó trên ứng
dụng.Tại các tác vụ này, thông qua lớp model để làm việc và trả kết quả
trở về controller. Cuối cùng controller sẽ đẩy dữ liệu thao tác tới view.
View là thành phần cuối cùng mà người sử dụng nhận được khi họ gửi
request tới ứng dụng.

8


Qua hình vẽ này, ta hiểu rằng. Để có thể thao tác với các action (hành
động) ta cần phải đi qua file index.php. Lúc này file index đóng vai trị
như một controller được dùng để điều hướng các request.
Ứng với các request thì nó sẽ trả về một controller khác để xử lý tác vụ
một cách cụ thể. Tại controller con, nó sẽ gọi các action riêng biệt.
Ở đó, thơng qua các action mà nó gọi tới các file xử lý giản đơn.

3.2 Model
Model là thành phần chủ yếu được sử dụng để thao tác xử lý dữ liệu.
Trong các framework, Model vẫn thường sử dụng theo phương thức

Active Record. Một trong những design pattern. Chúng có tác dụng rút
ngắn thời gian viết câu truy vấn cho người sử dụng. Biến những câu truy
vấn phức tạp trở nên gần gũi và thân thiện với người sử dụng thông qua
các thư viện được định nghĩa sẵn.

9


Model thường sẽ là các phương thức có trách nhiệm xử lý các tác vụ như:
select, insert, update, delete các record trong database. Ứng với các lấy dữ
liệu, model thường sử dụng mảng để gởi trả kết quả về. Vì mảng có thể
cho phép model lưu trữ nhiều thơng tin hơn, nên thường các record khi
bóc tách chúng sẽ mang các dữ liệu của database một cách chi tiết.
Khi sử dụng models, ta cũng cần tuân theo nguyên tắc chính của chúng là
không xuất giá trị trực tiếp trong model. Mà tất cả những dữ liệu ấy, phải
đưa vào mảng và trả về theo phương thức. Và tiếp tục ở view ta sẽ sử
dụng nó để lấy dữ liệu ra.

Ví dụ:
Mã:
function getuser($id){
$sql="select * from info where id='$id'";
$this->query($sql);
$row=$this->fetch();
return $row;
}

3.3 View
View là phần hiển thị thông tin tương phản khi gởi và nhận request.
Trước đây, khi người lập trình chưa nghĩ tới view. Họ thường thao tác xử

lý dữ liệu ngay trực tiếp trên ứng dụng và đổ cả dữ liệu ngay trên file PHP
đó. Điều này làm cho ứng dụng trở nên cồng kềnh, và đặc biệt rất khó cho
việc bảo trì nâng cấp sau này. Nhất là đối với designer, việc thay đổi giao
diện của một website luôn làm cho họ cảm thấy đau đầu vì phải vọc thẳng
vào core.
Trước đây, để giải quyết tình huống này. Người ta thường sử dụng
template để phân tách website thành 2 mảng riêng biệt. Một là giao diện
và một là core. Việc chỉnh sửa giao diện trở nên đơn giản hơn đối với họ
10


so với cách viết thập cẩm kia. Tuy nhiên, các thư viện này thực chất sẽ
làm cho ứng dụng của chúng ta trở nên chậm chạp hơn bao giờ hết. Bởi
chúng phải phiên dịch nhiều lần các kịch bản.
Chẳng hạn: Để dễ thao tác, smarty sẽ dịch ngược các yêu cầu của bạn
sang ngơn ngữ của nó. Sau đó chúng sẽ chuyển ngơn ngữ đó sang PHP và
thao tác xử lý trên nó.Việc này sẽ làm ứng dụng chậm chạp, do cứ phải
dịch qua, dịch lại một kịch bản. Trong khi, với sự kết hợp của PHP thuần,
ứng dụng của bạn sẽ nhanh và ổn định hơn nhiều.
Và view cũng là một phần trong việc nâng cấp những hạn chế ấy. Chúng
giúp giảm thiểu tối đa quá trình biên dịch nhiều lần. Và làm cho ứng dụng
trở nên mạnh mẽ và chuyên nghiệp hơn nhiều so với cách lập trình thuần.

11


Chương II.Khảo sát,phân tích hệ thống
1.Khảo sát
Một số hãng sơn nổi bật trên thị trường:


1.Sơn DULUX

14.Sơn DURA

27.Sơn JONSTONE

2.Sơn JOTUN

15.Sơn HAKA

28.Sơn NANO ONE

3.Sơn NIPPON

16.Sơn THẾ KỶ

29.Sơn NERO

4.Sơn TOA

17.Sơn ĐỒNG TÂM

30.Sơn SUNDAY

5.Sơn KOVAs

18.Sơn DRAGON

31.Sơn TOKYO


6.Sơn MYKOLOR

19.Sơn JAIVA

32.Sơn PaintPro1

7.SơnEXPO

20.Sơn GALATEX

33.Sơn ZIKON

8.SơnSPEC

21.Sơn DONASA

34.SơnLUCKY HOUSE

9.Sơn MAXILITE

22.Sơn GALAXY

35.Sơn KASA

10.Sơn ALEX

23.Sơn ROMA

36.Sơn NANOMAXs


11.SơnLUXURY

24.Sơn CADIN

37.Sơn SPRING

12.Sơn ANTA

25.SơnJAPAN PAINT

13.Sơn BEHR

26.Sơn MD

Một số loại sơn nổi bật:
1. Sơn nước nội thất

9. Sơn chống thấm xi măng

2. Sơn nước ngoại thất

10. Sơn giả đá Sơn giả ngọc

3. Sơn dầu

11. Sơn cách âm,sơn sần,sơn gai

4. Sơn lót

12. Sơn phủ bóng CLEAR


5. Sơn chống thấm

13. Sơn trang trí đặc biệt

1

12


6. Sơn công nghiệp

14. Sơn bột

7. Sơn phủ mầu nội thất

15. Sơn chịu nhiệt cho tường

8. Sơn phủ mầu ngoại thất

2.Phân tích hệ thống theo hướng đối tượng
2.1 Biểu đồ USE CASE
2.1.1 Biểu đồ Use case dành cho Quản trị viên

13


2.1.2 Biểu đồ Use case dành cho Khách hàng

14



2.1.3 Biểu đồ Use case dành cho Nhân viên

2.2 Phân tích các ca sử dụng của bài tốn
2.2.1 Ca sử dụng Đăng nhập
Đặc tả:
Khi người dùng muốn sử dụng một chức năng nào đó u cầu quyền thì cần
phải đăng nhập

-

Người dùng: Truy cập vào trang chủ, Chọn Đăng nhập.
Hệ thống: Hiển thị ra form đăng nhập
Người dùng: Điền thông tin đang ký và chọn Đăng nhập.
Hệ thống: sẽ kiểm tra thông tin.Nếu thông tin sai sẽ báo lỗi,ngược lại sẽ đăng
nhập thành công

15


Biểu đồ hoạt động Đăng nhập

16


Biểu đồ lớp tham gia ca sử dụng Đăng nhập

17



Biểu đồ trình tự Đăng nhập

18


2.2.2 Ca sử dụng Đăng ký
Đặc tả:
Khi người dùng muốn làm thành viên của website thì

-

Người dùng: Truy cập vào trang chủ, Chọn Đăng ký.
Hệ thống: Hiển thị ra form đăng ký
Người dùng: Điền thông tin đang ký và chọn Đăng ký.
Hệ thống: sẽ kiểm tra thông tin.Nếu thông tin sai sẽ báo lỗi,ngược lại sẽ đăng ký
thành công

Biểu đồ hoạt động đăng ký

19


Biểu đồ lớp tham gia ca sử dụng Đăng ký

Biểu đồ trình tự Đăng ký

20



2.2.3 Ca sử dụng Thêm sản phẩm vào giỏ hàng
Đặc tả
Khi muốn mua một sản phẩm nào đó, trước tiên người dùng cần phải thêm sản
phẩm vào giỏ hàng trên trang chủ.

-

Người dùng: Chọn sản phẩm cần mua
Hệ thống: Hiển thị ra chi tiết sản phẩm
Người dùng: Chọn Thêm hàng vào giỏ
Hệ thống: Hiển thị ra giỏ hàng

Biểu đồ hoạt động Thêm sản phẩm vào giỏ hàng

21


Biểu đồ lớp tham gia ca sử dụng Thêm sản phẩm vào gỏ hàng

22


Biểu đồ trình tự Thêm sản phẩm vào giỏ hàng

23


2.2.4 Ca sử dụng Đặt hàng
Đặc tả
Khi muốn đặt hàn một sản phẩm nào đó:


- Người dùng: Sau khi thêm những sản phẩm muốn mua vào giỏ hàng.Người
dùng chọn Tiếp tục mua hàng
- Hệ thống: Hiển thị ra form điền thông tin
- Người dùng: Điền những thông tin cần thiết và nhấn Đặt hàng
- Hệ thống: Kiểm tra thông tin và thông báo

Biểu đồ hoạt động Đặt hàng

24


Biểu đồ lớp tham gia ca sử dụng Đặt hàng

Biểu đồ trình tự Đặt hàng

2.2.5 Ca sử dụng Xem chi tiết sản phẩm
Đặc tả

25


×