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

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

45 1,5K 15

Đ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 45
Dung lượng 2,62 MB

Nội dung

- 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ốnbán/trao đổi với các thông tin: tên sách, loại sách ti

Trang 1

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

Hà Nội, 11-2012

Trang 2

MỤC LỤC

MỤC LỤC 1

LỜI NÓI ĐẦU 2

PHÂN CÔNG THÀNH VIÊN TRONG NHÓM 5

CHƯƠNG 1 KHẢO SÁT, ĐẶC TẢ YÊU CẦU BÀI TOÁN 7

1.1 Mô tả yêu cầu bài toán 7

1.2 Biểu đồ use case 7

1.3 Đặc tả use case 9

CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ BÀI TOÁN 15

2.1 Biểu đồ trình tự 15

2.2 Biểu đồ lớp 22

2.4 Thiết kế Cơ sở dữ liệu 30

CHƯƠNG 3 CÔNG NGHỆ VÀ THUẬT TOÁN SỬ DỤNG 35

CHƯƠNG 4 XÂY DỰNG CHƯƠNG TRÌNH MINH HỌA 38

4.1 Kết quả chương trình minh họa

4.2 Giao diện chương trình

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Trang 3

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ớisinh 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ọnphươ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 haymua 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ốnké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 chomượ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ênsá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óatrước Nhưng nếu giải quyết được nhược điểm này, đây có thể là phương án tốtnhấ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áchngoà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ậycho 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ữngphá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ựchiệ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í:

Trang 4

- 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ốnbá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ánhoặc trao đổi với những quyển sách mà họ có Và người dùng cũng có thể chọnphươ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íchthiế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

Trang 5

Ban đầu,với vốn kiến thức chưa nhiều,các thành viên trong nhóm đã gặpphả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ũngnhư 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 chochương trình.Việc trao đổi thông tin liên quan được tiến hành qua việc online trêngroup facebook riêng của nhóm.Trao đổi tài liệu cần thiết cho nhau qua gmail.Cácchứ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 testlạ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ủachươ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ìnhlớ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ứcnă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

Trang 6

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ệuchương trình

 Tìm kiếm tài liệu liên quan1.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ế DatabaseHoàn thiện thiết kế giao diện

Trang 7

1.3 Giai đoạn 3:

 Xử lý sự kiện người dùng tại màn hìnhchơi,màn hình, màn hình default (sau khilogin )

 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ữ

Trang 8

chương trình, database,kiểm thử tổngquan…

 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

- Đăng sách lên để bán hoặc trao đổi (upload sách): hoạt động này chỉ dànhcho người sử dụng khi đã đăng ký là thành viên của trang web Để đăng mộtcuố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ácthô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ộtphiê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ìmkiếm ra sẽ có các thông tin về người đăng bán cuốn sách đó và nó có trongkho của hệ thống hay không Nếu trong kho thì người sử dụng tới kho để

Trang 9

 Kết quả khảo sát:

1.2 Biểu đồ use case

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

Trang 10

 Tim kiem sach: Người dùng hoặc khách muốn trao đổi sách thì sẽ dùngchứ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êngiao 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ý:

Trang 11

 Bước 1: Người dùng nhấn vào link đăng ký,hệ thống sẽ chuyển đếntrang đă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àikhoả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

Trang 12

Bước 1: Người dùng chọn link login,hệ thống sẽ tự chuyển sang tranglogin,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 đúngbáo đăng nhập thành công

c Đặc tả chức năng thêm sách

Trang 13

 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êucầ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ưuvà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ựachọ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ọnxó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ếuchọ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ốntrao đổi với sách của bạn,nếu đồng ý thì nhấn vào link,hệ thống sẽ tự động

Trang 14

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 mailvớ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

Trang 15

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

Trang 16

 Bước 1: Sau khi người dùng thực hiện phiên trao đổi,hệ thống sẽ tự động gửimail 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

Trang 17

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

Trang 18

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

Trang 19

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

Trang 20

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

Trang 21

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

Trang 22

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

Trang 23

2.2 Biểu đồ lớp

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

I.namespace Controllers

Trang 24

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

 public ActionResult Register()

[ HttpPost ]

public ActionResult Register( Register ctm)

Chức năng : Để người dùng đăng kí toài khoản ở hệ thố, ng.

 public ActionResult Login()

[ HttpPost ]

public ActionResult Login( Login ctm)

Chức Năng : Để người dùng đăng nhập vào hệ thố, ng.

 [ HttpGet ]

public ActionResult InfoAccount()

Chức Năng : Để người dùng xem thống tin tài khoản cuả mình.

Trang 25

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

 public ActionResult Index()

Chức năng : Hiển thị trang chủ

 public ActionResult Seảrch()

Chức năng : Tìm kiếm sách

 public ActionResult ViewCảtegory()

Chức năng : Hiện thị sách theo chủ đề

 public ActionResult chitietsảch()

Chức năng : Hiển thị chi tiết cuốn sách theo bookID

 public ActionResult Giohảng()

Chức năng : quản lý giỏ hàng của người dùng chưa đăng nhập

 public ActionResult XoảMotSảnPhảmGioHảng( UploảdBook uploảd)

Chức năng : xóa 1 sản phẩm trong giỏ hàng

 publicvoid loảdgiohảng()

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

 public ActionResult uploảdBook()

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

 public ActionResult ViewMyProduct()

Chức năng :hiển thị những cuốn sách người dùng

 public ActionResult Delete( UploảdBook uploảd)

Chức năng : xóa sách của mình

 public ActionResult ThảnhToảnGioHảng()

Trang 26

Chức năng : khi tìm những cuốn sách muốn trao đổi, người dùng thanh toán giỏ hàng của mình thực hiện trao đổi.

 public ActionResult DongYBảnHảng()

Chức năng: Khi người dùng nhận 1 email từ hệ thống có giao dịch cuốn sách này, Nếu người dùng đồng ý bán, cuốn sách sẽ được đánh dấu là bánhàng, và không xuất hiện ở trên trang web nữa

 public ActionResult DảMuảHảng_Vote()

Chức năng: người mua hàng Vote độ tin cậy cho chủ sách

II NameSapec Models

1.NameSpace Models.entity :Các thực thể từ cơ sở dữ liệu

Trang 27

2 Namespace Models.DB : chức năng kết nối cơ sở dữ liệu

Trang 29

III NameSpace Models.CheckInput

Chức năng của các Lớp này là kiểm tra dữ liệu đầu vào đúng hay sai

Ví dụ để kiểm tra độ dữ liệu Số điện thoại khi người dùng đăng ký thì

[ Required (ErrorMessảge = "Vui lòng nhấp Số, điện thoại" )]

[ RegulảrExpression ( "[0-9]{10,11}" , ErrorMessảge = "Số, điện thoại có 10, 11

Trang 30

IV NameSpace Model

1.Class Tiện ích : chức năng gửi mail, Tạo chuỗi ngẫu nhiên dùng để đăng kí tài khoản, khôi phục mật khẩu, chuyển đổi String có dấu thành không dấu trong chức năng tìm kiếm

publicstảticbool guimảil( string toi, string chude, string noidung);

publicstảticstring CheckSum();

publicstảticstring convertString( string s)

2.Clảss Gio hàng: lưu trữ gio hàng người dùng

Ngày đăng: 30/12/2015, 20:27

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w