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

ĐỀ TÀI :XÂY DỰNG WEBSITE TRAO ĐỔI SÁCH CŨ

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 (1.85 MB, 46 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
──────── * ───────

BÀI TẬP LỚN PROJECT 1

ĐỀ TÀI :XÂY DỰNG WEBSITE TRAO ĐỔI
SÁCH CŨ
Giảng viên hướng dẫn Vũ Thị Hương Giang
Nguyễn Ngọc Dũng
Nhóm Sinh viên thực hiện Nhóm 04

Hà Nội, 11-2012


MỤC LỤC

NHÓM 4 – DT12

2


LỜI NÓI ĐẦU
Nhu cầu về giáo trình học tập, sách tham khảo trong năm học mới đối với
sinh viên là rất lớn. Để giải quyết vấn đề này, đa số sinh viên đều phải lựa chọn
phương án mua sách mới, chỉ một số ít sinh viên mượn sách từ thư viện trường hay
mua lại sách cũ từ các sinh viên khóa trước.
Với phương án mua sách mới, ta có thể nhận ra ngay là phương án này khá là tốn
kém so với hai phương án mượn sách từ thư viện và mua lại sách cũ.
Với phương án mượn sách từ thư viện, tuy phương án này là phương án kinh tế
nhất trong số ba phương án, nhưng nó vẫn có một số hạn chế như: thư viện cho


mượn với số lượng nhất định, giới hạn thời gian mượn sách, không thể ghi chú trên
sách…
Với phương án còn lại, mua lại sách từ các sinh viên khóa trước, tuy rằng phương
án này có nhược điểm là đòi hỏi sinh viên phải quen biết với các sinh viên khóa
trước. Nhưng nếu giải quyết được nhược điểm này, đây có thể là phương án tốt
nhất để giải quyết nhu cầu về sách của sinh viên.
Ngoài ra, đối với tất cả các loại sách khác như sách khoa học, văn học, truyện…
trong xã hội thì việc đưa vào lưu thông trở lại giúp tránhlãng phí cũng không hề
đơn giản.Trong khi nhu cầu sử dụng sách của mọi người là rất lớn.
Đứng trước những khó khăn nêu trên, thành viên trong nhóm thảo luận và quyết
định nhanh chóng ngay từ những tuần đầu tiên là chọn đề tài:xây dựng website
mua bán sách cũ.Website sẽ là cầu nối liên kết giữa người cung cấp sách cũ và
người cần sách.
Cùng với sự hoạt động trên internet, website còn kết hợp hoạt động với kho sách
ngoài đời thực, giúp cho việc lưu thông sách được dễ dàng hơn và tạo sự tin cậy
cho người dùng hơn.
Rất nhiều ý kiến đóng góp đã được đưa ra nhằm đưa đề tài từ chỗ chỉ là những
phác thảo trên giấy thành những dòng code trên máy.Mục tiêu của nhóm khi thực
hiện đề tài này đó là xây dựng được một phần mềm đảm bảo được các tiêu chí:

NHÓM 4 – DT12

3


- Mỗi người dùng có thể đăng ký 1 tài khoản với email của họ và
password.
- Người dùng có thể thêm vào danh sách những quyển sách muốn
bán/trao đổi với các thông tin: tên sách, loại sách (tiểu thuyết, tin học, kinh tế, ...),
tác giả, năm xuất bản, giá trị sách, mục đích bán (kèm giá bán) hay trao đổi (có thể

đưa vào các quyển sách muốn trao đổi).
- Đưa ra danh sách các sách theo chủ đề.
-Tìm sách theo tên sách, theo tác giả
-Nếu người dùng tìm thấy quyển sách mong muốn, có thể yêu cầu bán
hoặc trao đổi với những quyển sách mà họ có. Và người dùng cũng có thể chọn
phương thức mua bán, trao đổi (gặp trực tiếp, qua bưu điện, chuyển khoản, v...v).
-Vote về độ tin cậy của người dùng khi trao đổi/mua bán sách theo thang
từ 1 (rất tệ, không đáng tin cậy) đến 5 (rất tốt, rất có uy tín).
* Cơ sở lý thuyết của đề tài: Các tài liệu về cấu trúc dữ liệu và giải thuật, phân tích
thiết kế hướng đối tượng, các kỹ thuật xây dựng ứng dụng với giao diện đồ họa
 Nội dung công việc được xác định bao gồm:
 Khảo sát ,đặc tả yêu cầu.
 Phân tích,Thiết kế phần mềm theo phương pháp hướng đối tượng (sử
dụng ngôn ngữ UML).
 Xây dựng chương trình theo mô hình MVC (Model-View-Control)
 Sử dụng công cụ hỗ trợ :
• IDE :Visual studio 2010
• Hệ quản trị cơ sở dữ liệu : SQL server 2008
 Kiểm thử , sửa lỗi với bộ dữ liệu thực.
 Viết tài liệu, báo cáo.

NHÓM 4 – DT12

4


Ban đầu,với vốn kiến thức chưa nhiều,các thành viên trong nhóm đã gặp
phải không ít khó khăn,trở ngại.Nhưng bằng việc học hỏi ở thầy cô và bạn bè cũng
như nỗ lực của bản thân,các thành viên trong nhóm dần bắt nhịp với công việc và
định hình được những vấn đề cần giải quyết.Rất nhiều những buổi họp nhóm đã

được tiến hành và cả nhóm đã cùng nhau trực tiếp xây dựng và hoàn thiện dần cho
chương trình.Việc trao đổi thông tin liên quan được tiến hành qua việc online trên
group facebook riêng của nhóm.Trao đổi tài liệu cần thiết cho nhau qua gmail.Các
chức năng cũng như giao diện của hệ thống ngày một được nâng cấp và được test
lại cẩn thận nhằm cố gắng tối ưu hóa chương trình.
Sau rất nhiều cố gắng,thời gian cũng như công sức,phần mềm demo của
chương trình đã được hoàn tất sẵn sàng đưa vào chạy thử nghiệm.Đề tài được cả
nhóm hoàn thành theo đúng tiến độ được giao.Mặc dù chúng em đã rất cố gắng để
xây dựng phần mềm này nhưng vì là lần đầu làm một chương một chương trình
lớn,cũng như lần đầu làm đề tài theo nhóm nên còn nhiều bỡ ngỡ nên vài chức
năng vẫn chưa được ưng ý và hoạt động tốt.Chúng em rất mong nhận được những
sự đánh giá,góp ý của thầy và cô để tiếp tục hoàn thiện website của mình.Chúng
em xin chân thành cám ơn và sẽ tiếp thu ý kiến của thầy cô.

Hà Nội tháng 11 năm 2012
Nhóm 4 đề tài 12

NHÓM 4 – DT12

5


PHÂN CÔNG CÔNG VIỆC TRONG NHÓM
Giai
đoạn

Thời gian

Công Việc


1

Tuần 4-> 6

Phân tích yêu cầu bài toán, tìm tài liệu tham
khảo

2

Tuần 6->8

Hoàn thành thiết kế, giao diện chương trình

3

Tuần 8->12

Lập trình,xây dựng chương trình

4

Tuần 12->13

Hoàn thiện toàn bộ chương trình, viết báo cáo

1.1

Giai đoạn 1 :
 Đưa ra thiết kế khung chương trình
 Tìm hiểu,thiết kế giao diện chương trình

 Tìm hiểu việc liên kết, tổ chức dữ liệu
chương trình
 Tìm kiếm tài liệu liên quan

1.2

Giai đoạn 2:
 Tiếp tục hoàn thiện thiết kế chương trình
 Hỗ trợ thiết kế Database
 Thiết kế Database
 Hoàn thiện thiết kế giao diện

NHÓM 4 – DT12

6


1.3

Giai đoạn 3:
 Xử lý sự kiện người dùng tại màn hình
chơi,màn hình, màn hình default (sau khi
login )
 Xử lý menu chính chương trình
 Hoàn thiện thiết kế Object Ô chữ để hiển thị
trên màn hình
- Xây dựng các class trong gói Model
- Viết xử lý tính điểm cho chức năng giải ô
chữ
- Xử lý sự kiện màn hình tạo ô chữ

- Tạo các gói câu hỏi với dữ liệu thực
- Xử lý sự kiện màn hình login

1.4

Giai đoạn 4 :
 Hoàn thiện code chương trình
.
 Vẽ biểu đồ lớp, báo cáo lại phần việc của
mình đã làm .
 Hoàn thiện use case,đặc tả use case,biểu đồ
trình tự

NHÓM 4 – DT12

7


 Chịu trách nhiệm kiểm tra, rà soát lỗi
chương trình, database,kiểm thử tổng
quan…
 Báo cáo lại phần việc đã làm .

CHƯƠNG 1:KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN
1.1. MÔ TẢ YÊU CẦU BÀI TOÁN
 Các chức năng chính:
- Người sử dụng có thể đăng ký làm thành viên của trang web hoặc không.
Khi đăng ký thành viên, người sử dụng phải cung cấp đầy đủ các thông tin
cá nhân như họ tên, email, địa chỉ liên hệ, số điện thoại... Trong đó, Email là
bắt buộc phải có để kích hoạt tài khoản cũng như dùng nó để đăng nhập vào

website và để người sử dụng khác có thể liên hệ với thành viên này nếu cần
thiết.
- Đăng sách lên để bán hoặc trao đổi (upload sách): hoạt động này chỉ dành
cho người sử dụng khi đã đăng ký là thành viên của trang web. Để đăng một
cuốn sách, thành viên cần phải cung cấp các thông tin về cuốn sách đó như
tiêu đề, tác giả, nhà xuất bản, năm xuất bản, số trang, giá bìa,giá bán lại,
hình ảnh của sách....
- Tìm kiếm theo tên sách,tên tác giả(Không bắt buộc là thành viên): Người sử
dụng nhập tên sách,hoặc tên tác giả để tìm kiếm.Trong kết quả trả về có các
thông tin của sách như: Tên sách,tên tác giả, giá bìa, giá bán.Người dùng sẽ
thấy nút trao đổi dưới mỗi quyển sách.Nếu tìm thấy quyển sách muốn trao
đổi hoặc mua thì người dùng nhấn vào nút trao đổi này để thực hiện một
phiên trao đổi (Chỉ áp dụng với thành viên).
- Tìm kiếm sách cần trao đổi hoặc mua (không bắt buộc là thành viên) : người
sử dụng sẽ nhập các thông tin về cuốn sách cần mua. Trong các kết quả tìm
kiếm ra sẽ có các thông tin về người đăng bán cuốn sách đó và nó có trong
kho của hệ thống hay không. Nếu trong kho thì người sử dụng tới kho để
mua, Ngược lại, người sử dụng sẽ liên hệ với người bán để mua sách thông
qua các thông tin mà trang web cung cấp.

NHÓM 4 – DT12

8


- Vote độ tin cậy của người dùng khác:qua mỗi phiên giao dịch người dùng có
thể đánh giá độ tin cậy của người mình trao đổi theo thang điểm từ 1(rất
tệ,không đáng tin cậy) đến 5 (rất tốt,rất có uy tín)
 Kết quả khảo sát:
1.2. Biểu đồ use case

1.2.1. Biểu đồ use case tổng quan

Hệ thống bao gồm:
 Hai tác nhân:
 Nguoi dung: sử dụng các use case tìm kiếm sách,vote người dùng,trao
đổi,thay đổi thông tin tài khoản ,đăng nhập,đăng xuất,quản lý sách
 Khách: sử dụng các use case:đăng ký,tìm kiếm sách
 Các use case:
NHÓM 4 – DT12

9


 Login: người dùng sau khi đăng ký dùng tài khoản để đăng nhập vào hệ
thống để sử dụng được các use case chỉ dành cho thành viên
 Dang xuat: người dùng thoát khỏi hệ thống kết thúc phiên làm việc
 Tim kiem sach: Người dùng hoặc khách muốn trao đổi sách thì sẽ dùng
chức năng tìm kiếm để tìm ra cuốn sách mà mình cần trao đổi,khi tìm
được cuốn sách ưng ý thì sẽ tiến hành phiên trao đổi
 Thêm vào giỏ hàng: Khi chọn được sách muốn đổi thì người dùng sẽ
thêm vào giỏ hàng,tại đây lưu tất cả các cuốn sách đã thêm trong phiên
giao dịch của mình
 Trao đổi: người chọn sách muốn trao đổi và nhấn nút trao đổi,form trao
đổi được hiện ra,tại đây người dùng sẽ nhập thông tin sách muốn trao đổi
và gửi đi,hệ thống sẽ gửi thông báo đến chủ cuốn sách
 Vote: Sau mỗi phiên giao dịch,hệ thống sẽ gửi mail đến mail của 2 người
và tại đây người dùng sẽ vote về độ tin cậy của người kia theo thang
điểm từ 1 đến 5
 Thay đổi thông tin tài khoản: Người dùng muốn chỉnh sửa thông tin như
mật khẩu,địa chỉ,số điện thoại thì sẽ dùng chức năng này

 Thêm sách:Người dùng có sách cũ muốn bán hoặc trao đổi thì sẽ upload
sách lên hệ thống,đưa thông tin về cuốn sách như: tên sách,tên tác giả,giá
bìa,giá muốn bán,thể loại sách, hình ảnh sách
 Xóa sách: Khi không muốn trao đổi hoặc sách đã bán rồi thì người dùng
có thể xóa sách của mình ra khỏi hệ thống
 Sửa thông tin sách: Dùng khi khách hàng muốn đính chính thay đổi
thông tin về sách của mình
 Đăng ký: khách hàng ghé thăm trang web muốn trao đổi hoặc up sách để
bán thì sẽ phải đăng ký thành viên
1.3. Đặc tả use case
a. Đặc tả chức năng đăng ký:

NHÓM 4 – DT12

10


 Bước 1: Người dùng nhấn vào link đăng ký,hệ thống sẽ chuyển đến
trang đăng ký
 Bước 2: Người dùng nhập thông tin cần để đăng ký gồm email,họ tên,
mật khẩu, địa chỉ,số điện thoại.Hệ thống sẽ kiểm tra thông tin tài
khoản trong cơ sở dữ liệu,nếu thông tin chưa có ai đăng ký thì hệ
thống sẽ lưu thông tin đăng ký vào cơ sở dữ liệu và chuyển về trang
đăng nhập thành công

b. Đặc tả chức năng đăng nhập

NHÓM 4 – DT12

11



Bước 1: Người dùng chọn link login,hệ thống sẽ tự chuyển sang trang
login,tại đó,người dùng nhập đầy đủ thông tin tài khoản của mình
Bước 2: Hệ thống kiểm tra sự đúng đắn của thông tin tài khoản,nếu đúng
báo đăng nhập thành công
c. Đặc tả chức năng thêm sách

NHÓM 4 – DT12

12


 Bước 1: Người dùng nhấn vào link upload.Hệ thống sẽ chuyển về
trang upload sách
 Bước 2: Người dùng nhập các thông tin về sách mà form upload yêu
cầu (tên sách,tên tác giả,giá bìa,giá bán,hình ảnh,mô tả sơ lược.....).Hệ
thống kiểm tra tính đúng đắn của dữ liệu nhập vào,nếu đúng thì lưu
vào cơ sở dữ liệu và hiện thông báo upload thành công
d. Đặc tả chức năng trao đổi

 Bước 1: Người dùng tìm thấy quyển sách mình muốn trao đổi hoặc mua,sau
đó chọn thêm vào giỏ hàng
 Bước 2: Hệ thống chuyển đến trang giỏ hàng,tại đây người dùng có 3 lựa
chọn, xóa sách khỏi giỏ hàng, tiếp tục mua hàng, thanh toán.Với lựa chọn
xóa sách thì sách sẽ bị xóa khỏi giỏ hàng.Lựa chọn tiếp tục mua hàng thì hệ
thống sẽ chuyển về trang chủ để người dùng tiếp tục tìm thêm sách. Còn nếu
chọn thanh toán thì hệ thống sẽ chuyển đến trang thanh toán.
 Bước 3: Người dùng nhập các thông tin trong form thanh toán,sau đó nhấn
đồng ý

 Hệ thống sẽ gửi mail đến cả hai người (cả người mua và người chủ sách),
với người chủ sác thì hệ thống sẽ thông báo với chủ sách là có người muốn
trao đổi với sách của bạn,nếu đồng ý thì nhấn vào link,hệ thống sẽ tự động
NHÓM 4 – DT12

13


xóa sách ra khỏi hệ thống. Còn đối với người mua sách thì sẽ có một mail
với nội dung là: Bạn đã trao đổi với người dùng abc hãy nhấn vào link để
vote độ tin cậy cho người dùng này
e. Đặc tả chức năng tìm theo tên tác giả
ng

f. Đặc tả chức năng tìm theo tên sách

NHÓM 4 – DT12

14


g. Đặc tả chức năng vote

NHÓM 4 – DT12

15


 Bước 1: Sau khi người dùng thực hiện phiên trao đổi,hệ thống sẽ tự động gửi
mail cho người dùng yêu cầu người dùng vote độ tin cậy cho người kia

 Bước 2: Người dùng nhấn vào link để vote,hệ thống sẽ tự động chuyển đến
trang vote
 Bước 3: Người dùng chọn mức vote và nhấn gửi đi,hệ thống tự động lưu
thông tin vote vào cơ sở dữ liệu

CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ BÀI TOÁN
2.1. Biểu đồ trình tự
a. Biểu đồ trình tự chứng năng đăng ký

b. Biểu đồ trình tự chức năng đăng nhập

NHÓM 4 – DT12

16


c. Biểu đồ trình tự chức năng tìm theo tên tác giả

NHÓM 4 – DT12

17


d. Biểu đồ trình tự chức năng tìm theo tên sách

NHÓM 4 – DT12

18



e. Biểu đồ trình tự tìm theo tên tác giả

NHÓM 4 – DT12

19


f. Biểu đồ trình tự thêm sách

NHÓM 4 – DT12

20


g. Biểu đồ trình tự vote điểm

NHÓM 4 – DT12

21


h. Biểu đồ trình tự chức năng trao đổi

NHÓM 4 – DT12

22


2.2. Biểu đồ lớp
Biểu đồ lớp khái quát


NHÓM 4 – DT12

23


I.namespace Controllers

1.Lớp AccountController : là tầng trung gian giữa Model và View, là
thành phần dùng để quản lý tương tác với người dùng, luồng ứng
dụng tổng thể và các logic ứng dụng cụ thể.
a. Thuộc tính :private Customer customer


b. Các ActionResult

publicActionResult Register()
[HttpPost]
publicActionResult Register(Register ctm)
Chức năng : Để người dùng đăng kí toài khoản ở hệ thống.



publicActionResult Login()
[HttpPost]
publicActionResult Login(Login ctm)
Chức Năng : Để người dùng đăng nhập vào hệ thống.




[HttpGet]
publicActionResult InfoAccount()
Chức Năng : Để người dùng xem thông tin tài khoản của mình.



publicActionResult Logout()

NHÓM 4 – DT12

24


Chức Năng : Để người dùng đăng xuất khỏi hệ thống

2. Lớp HomeController Điều khiển những người dùng chưa đăng nhập vào hệ
thống có các chức năng : hiển thị sách theo chủ đề, tìm kiếm sách, Cho vào giỏ
hàng.
a. Các thuộc tính : private
Product : tạo đối tượng sách.
productDB: kết nối với cơ sở dữ liệu.
listpd: tạo danh sách những cuốn sách.
gh : Lưu trữ giỏ hàng của người dùng.
b. Các ActionResult
• publicActionResult Index()
Chức năng : Hiển thị trang chủ.
• publicActionResult Search()
Chức năng : Tìm kiếm sách.
• publicActionResult ViewCategory()
Chức năng : Hiện thị sách theo chủ đề.

• publicActionResult chitietsach()
Chức năng : Hiển thị chi tiết cuốn sách theo bookID.
• publicActionResult Giohang()
Chức năng : quản lý giỏ hàng của người dùng chưa đăng nhập.
• publicActionResult XoaMotSanPhamGioHang(UploadBook upload)
Chức năng : xóa 1 sản phẩm trong giỏ hàng.


publicvoid loadgiohang()

Chức năng tạo session giỏ hàng.
3.Lớp CustomerController :Điều khiển người dùng đã đăng nhập vào hệ thống
gồm các chức năng có ở HomeController và thêm sách, xóa sách, quản lý sách,
xem thông tin tài khoản,thực hiện giao dịch trao đổi, vote.
a. Các thuộc tính : private
Product : tạo đối tượng sách.
productDB: kết nối với lớp ProductDB.
exchangeDB : kết nối với lớp ExchangeDB.
gh : Lưu trữ giỏ hàng của người dùng.
b. Các ActionResult
• publicActionResult uploadBook()
Chức năng: người dùng upload những cuốn sách mà mình muốn trao đổi
vào hệ thống.
NHÓM 4 – DT12

25


×