Webiste tìm kiếm bạn cũ, cho phép các thành viên tham gia có thể tìm kiếm bạn bè, trao đổi thông tin cũng như tham gia thảo luận về các chủ đề thông qua chức năng diễn đàn.
ĐỒ ÁN TỐT NGHIỆP MỤC LỤC DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT .2 1 DANH MỤC CÁC HÌNH VẼ .3 DANH MỤC CÁC BẢNG 4 LỜI CẢM ƠN 5 MỞ ĐẦU .6 CHƯƠNG I: TỔNG QUAN .7 1.1 GIỚI THIỆU HỆ THỐNG .7 1.2 CÁC CÔNG NGHỆ SỬ DỤNG 8 CHƯƠNG II: PHÂN TÍCH THIẾT KẾ .11 2.1 PHA PHÂN TÍCH: 11 .28 2.3 PHA THIẾT KẾ: .29 CHƯƠNG III: CÀI ĐẶT VÀ KIỂM THỬ 52 3.1 THIẾT KẾ CSDL VỚI SQL 2000 .52 3.2 TỔ CHỨC CHƯƠNG TRÌNH 60 3.3 CÀI ĐẶT ỨNG DỤNG WEBSITE TÌM BẠN CŨ 65 KẾT LUẬN 66 TÀI LIỆU THAM KHẢO 67 PHỤ LỤC .68 ĐỒ ÁN TỐT NGHIỆP DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT F FK Forgein Key Khóa ngoài H HTML Hyper Text Markup Language J JDK Java Development Kit JSP Java Server Page JDBC Java Database Connectivity O ODBC Open Database Connectivity Chuẩn kết nối cơ sở dữ liệu mở P PK Primary Key Khóa chính U UML Unified Modeling Language Ngôn ngữ mô hình hóa thống nhất ĐỒ ÁN TỐT NGHIỆP 1 DANH MỤC CÁC HÌNH VẼ ĐỒ ÁN TỐT NGHIỆP DANH MỤC CÁC BẢNG ĐỒ ÁN TỐT NGHIỆP LỜI CẢM ƠN Em xin chân thành cảm ơn các thầy, các cô khoa Công nghệ Thông tin Học viện Bưu chính Viễn Thông đã tận tình dạy dỗ, truyền đạt cho chúng em nhiều kiến thức quý báu. Em xin tỏ lòng biết ơn sâu sắc đến thầy giáo PGS.TS Trần Đình Quế - người trực tiếp hướng dẫn em trong toàn bộ quá trình thực hiện đồ án này. Xin chân thành cảm ơn toàn thể các bạn trong lớp HCD07-CNTT2 đã giúp đỡ, động viên tôi rất nhiều trong quá trình thực hiện đề tài. Hà Nội, ngày20 tháng 08 năm 2009 Sinh viên thực hiện Trần Anh Liêm ĐỒ ÁN TỐT NGHIỆP MỞ ĐẦU Lập trình Web là xu thể phát triển của công nghệ phần mềm đang thu hút rất nhiều nhà đầu tư cũng như người dùng Web. Không như mô hình lập trình Desktop truyền thống. Web thường gắn với Internet, nó đòi hỏi người lập trình phải học về những khái niệm cũng như phong cách lập trình mạng, thoát khỏi sự bó buộc cục bộ của những chương trình ứng dụng trước đây. Có rất nhiều kỹ thuật, ngôn ngữ cũng như môi trường phát triển phát triển ứng dụng Web đó là ASP, Perl, PHP, Coldfusion, JSP…. Trong đó, JSP/Servlet (nền tảng dựa trên ngôn ngữ lập trình Java) có thể nói là rất phù hợp với lập trình Web và là một trong những lựa chọn sáng giá nhất. Đề tài xây dựng website tìm bạn cũ sử dụng công nghệ JSP với cơ sở dữ liệu SQL 2000 nhằm mục đích xây dựng một website cho phép các thành viên tham gia có thể tìm kiếm bạn bè, trao đổi thông tin cũng như tham gia thảo luận về các chủ đề trong diễn đàn. Bố cục đồ án gồm 3 chương: • Chương I: TỔNG QUAN Giới thiệu tổng quan về website tìm bạn cũ và các công nghệ liên quan. • Chương II: PHÂN TÍCH THIẾT KẾ Phân tích thiết kế bài toán website tìm bạn cũ sử dụng ngôn ngữ UML với công cụ hỗ trợ Rational Rose. • Chương III: CÀI ĐẶT VÀ KIỂM THỬ Cài đặt kiểm thử webiste và giới thiệu một số màn hình giao diện chính của website. ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ CHƯƠNG I: TỔNG QUAN 1.1 GIỚI THIỆU HỆ THỐNG Webiste tìm kiếm bạn cũ, cho phép các thành viên tham gia có thể tìm kiếm bạn bè, trao đổi thông tin cũng như tham gia thảo luận về các chủ đề thông qua chức năng diễn đàn. Để sử dụng chức năng tìm kiếm thông tin trên webiste các thành viên tham gia website phải đăng ký một tài khoản trong hệ thống. Webiste bao gồm một số chức năng chính sau: • Các thành viên sau khi đăng ký tài khoản có thể sửa đổi, bổ xung thêm các thông tin cá nhân, các thông tin về quá trình học tập, công tác các thông tin này sẽ phục vụ cho quá trình tìm kiếm. • Thông tin về tỉnh thành phố, quận huyện, trường học nơi các thành viên đã từng tham gia học tập, công tác sẽ được chọn từ danh mục cơ sở dữ liệu chuẩn của website. Thông tin về các trường Đại học, Trung học và Tiểu học trong danh mục cơ sở dữ liệu sẽ được các thành viên hoàn thiện dần thông qua chức năng gửi yêu cầu thêm trường. Khi thành viên xác định trường nơi mình học tập không có trong danh mục trường, hoặc thông tin về trường không đầy đủ cần sửa đổi lại, website cung cấp chức năng gửi yêu cầu thêm trường. Các yêu cầu này sẽ được chuyển đến Admin quản lý website. Admin sẽ có trách nhiệm duyệt danh sách các yêu cầu. Khi một yêu cầu thêm trường được duyệt. Thông tin về trường sẽ được tự động thêm mới vào danh mục trường trong cơ sở dữ liệu. • Chức năng gửi, nhận tin nhắn để các thành viên có thể liên lạc trao đổi thông tin với nhau. Kèm theo chức năng gửi tin nhắn các thành viên có thể thiết lập các mối quan hệ bạn bè thông qua các tin nhắn mời kết bạn. • Chức năng quản lý danh sách bạn bè, các thành viên sử dụng chức năng này để quản lý danh sách những người bạn trong website, gửi yêu cầu kết bạn hoặc hủy bỏ kết bạn. • Chức năng viết lưu bút, cho phép các thành viên hoặc khách ghé thăm webiste có thể ghi chép lại những dòng lưu niệm, những cảm xúc, những tâm tình, những gợi nhớ về các kỷ niệm thời học sinh, kỷ niệm tuổi thơ mỗi khi ghé thăm website. ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ • Chức năng tìm kiếm bạn cũ, cho phép các thành viên tìm kiếm bạn bè theo nhiều tiêu chí khác nhau (theo thông tin về quá trình học tập, quá trình công tác hoặc thông tin cá nhân). Từ khóa tìm kiếm của các thành viên sẽ được hệ thống lưu lại vào cơ sở dữ liệu, phục vụ cho việc phân tích thông tin tìm kiếm. • Chức năng diễn đàn, cho phép các thành viên tham gia thảo luận hoặc đăng tin tìm kiếm bạn cũ theo các chủ đề. Các chủ đề này được quản lý bởi Admin. Ngoài ra website còn bao gồm một số chức năng khác khác như: • Chức năng cấp lại mật khẩu khi thành viên quên mật khẩu. • Chức năng Hủy tài khoản, khi thành viên muốn hủy bỏ tài mình đã đăng ký trên website. Khi một tài khoản được hủy bỏ, tất cả các thông tin liên quan đến tài khoản này sẽ được xóa bỏ khỏi cơ sở dữ liệu của website. • Chức năng quản trị thành viên dành cho Admin. 1.2 CÁC CÔNG NGHỆ SỬ DỤNG 1.2.1 Ngôn ngữ mô hình hóa hướng đối tượng UML UML (Unified Modelling Language) là ngôn ngữ mô hình hóa tổng quát được xây dựng để đặc tả, phát triển và viết tài liệu cho các khía cạnh trong phát triển phần mềm hướng đối tượng UML giúp người phát triển hiểu rõ và ra quyết định liên quan đến phần mềm cần xây dựng. UML bao gồm một tập các khái niệm, bác biểu đồ và hướng dẫn. UML hỗ trợ xây dựng hệ thống hướng đối tượng dựa trên việc nắm bắt các khía cạnh cấu trúc tĩnh và các hành vi động của hệ thống. - Các cấu trúc tĩnh định nghĩa các kiểu đối tượng quan trọng của hệ thống, nhằm cài đặt và chỉ ra mối quan hệ giữa các đối tượng đó. - Các hành vi động (dynamic behavior) định nghĩa các hoạt động của các đối tượng theo thời gian và tương tương tác giữa các đối tượng hướng tới đích. Các mục đích của ngôn ngữ mô hình hóa thống nhất UML: • Mô hình hóa các hệ thống sử dụng các khái niệm hướng đối tượng. • Thiết lập sự liên hệ từ nhận thức của con người đến các sự kiện cần mô hình hóa. • Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp voiứ nhiều ràng buộc khác nhau. • Tạo một ngôn ngữ mô hình hóa có thể sử dụng được bởi người và máy. ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ UML quy định một loạt các ký hiệu và quy tắc để mô hình hóa các pha trong quá trình phát triển phần mềm hướng đối tượng dưới dạng các biểu đồ. 1.2.2 Cơ sở dữ liệu SQL 2000 Để xây dựng một ứng dụng Web hoàn chỉnh, ta cần sử dụng cơ sở dữ liệu cho mục đích xử lí, cập nhật và lưu trữ thông tin. SQL server 2000 là một hệ cơ sở dữ liệu đa người dùng, chạy trên môi trường Windows 9x/XP, Windows NT, Windows 2000. Có khả năng xử lý một lượng lớn dữ liệu từ cơ sở dữ liệu của máy tính lớn (mainframe) cho đến dữ liệu dùng cho các máy tính cá nhân. 1.2.3 Ngôn ngữ: JSP JSP là một công công nghệ rất mạnh để tạo trang HTML động về phía trình chủ. JSP là phần mở rộng trực tiếp của Java Servlet. Bộ biên dịch JSP sẽ ánh xạ trực tiếp mã JSP thành Servlet. Viết JSP ta không cần phải trải qua quá trình biên dịch tập tin thực thi .class như trong Servlet. JSP cung cấp mô hình lập trình Web dễ dàng và tiện dụng hơn Servlet. Công việc biên dịch trang JSP được tự động thực hiện bởi trình chủ. 1.2.4 JDBC và trình điều khiển truy xuất cơ sử dữ liệu: Công việc lập trình ứng dụng mà JSP thường thực hiện nhất đó là lưu trữ và truy xuất cơ sở dữ liệu, cung cấp thông tin cho trình khách. Việc truy xuất dữ liệu trong JSP dựa vào trình truy xuất JDBC theo chuẩn Java. JDBC là các trình đạo diễn cho phép truy cập vào cơ sở dữ liệu của các hệ như Access, MS SQL Server, Oracle… bằng ngôn ngữ truy vấn SQL. Theo đặc tả của Sun có 4 kiểu JDBC nhau: • Kiểu 1: JDBC sử dụng cầu nối ODBC • Kiểu 2: JDBC kết nối trực tiếp với các trình điều khiển cư sở dữ liệu. • Kiểu 3: JDBC kết nối thông quá các ứng dụng mạng trung gian. • Kiểu 4: JDBC kết nối thông qua các trình điều khiển đặc thù ở xa. Trong bài toán Xây dựng website tìm bạn cũ sử dụng kiểu 1- JDBC sử dụng cầu nối ODBC. Kết nối ODBC(Open Database Connectivity) là cách kết nối tổng quát nhất đến mọi hệ cơ sở dữ liệu thông qua trình quản lý ODBC của Windows. Mỗi hệ CSDL dữ liệu một trình điều khiển có khả năng đọc hiểu được cơ sở dữ liệu của chúng. Trình điều khiển này sẽ sẽ được đăng ký với bộ quản lý ODBC. Tất các lệnh truy xuất cơ sở dữ liệu ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ sau đó được thực thi bằng lệnh SQL. Java cung cấp khả năng sử dụng JDBC để gọi ODBC và bằng cách này ta có thể kiểm soát rất nhiều hệ quản trị CSDL khác nhau. [...]... công tác, Xóa thông tin quá trình công tác, Sửa thông tin quá trình công tác ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Hình 2.6: Phân rã use case Cập nhật thông tin Use case Quản lý thông tin bạn bè được phân rã thành 2 use case với chức năng cụ thể: Mời kết bạn và Hủy bỏ kết bạn Hình 2.7: Phân rã use case: Quản lý thông tin bạn bè Use case tìm bạn được phân rã thành 2 use case với chức năng cụ. .. thể; Tìm bạn học và tìm đồng nghiệp ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Hình 2.8: Phân rã use case Tìm bạn Use case Tham gia diễn đàn được phân rã thành 3 use case nhỏ thực hiện các chức năng cụ thể: Thêm bài viết, Trả lời bài viết, Sửa bài viết Hình 2.9: Phân rã use case Tham gia diễn đàn Use case Quản lý tin nhắn được phân rã thành các use case mức nhỏ hơn với các chức năng cụ thể: Mời kết... CHƯƠNG II: PHÂN TÍCH THIẾT KÊ CHƯƠNG II: PHÂN TÍCH THIẾT KẾ 2.1 PHA PHÂN TÍCH: Phần này thiết lập một cách nhìn tổng quan rõ ràng về bài toán website tìm bạn cũ và các mục đích chính của hệ thống cần xây dựng Liệt kê các nhiệm vụ mà bài toán cần thực hiện thông qua các mô hình Yêu cầu của hệ thống bao gồm 2 nhóm chức năng chính sau: • Nhóm chức năng dành cho các thành viên • Nhóm chức năng quản trị website. .. Website tìm bạn cũ được thể hiện qua Sơ đồ lớp phân tích “xem Hình 2.11” Các thông tin chi tiết về các phương thức này sẽ được cụ thể hóa trong pha thiết kế ở phần sau ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Hình 2.11: Sơ đồ lớp phân tích của website tìm kiếm bạn cũ ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ 2.2.3 Biểu đồ trạng thái Dựa trên các lớp đã tìm ra trong mô hình lớp, biểu đồ trạng thái... tin tìm kiếm 2 Member nhập thông tin tìm kiếm, click vào nút Tìm kiếm 3 Hệ thống kiểm tra tính hợp lệ của thông tin 4 Hệ thống chuyển đến trang hiển thị kết quả tìm kiếm Ngoại lệ: 3.1 Hệ thống thông báo thông tin tìm kiếm không đầy đủ, yêu cầu Member bổ xung thông tin Bảng 2.7:Kịch bản Tìm bạn ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ 2.2.3 Xây dựng biểu đồ lớp trong pha phân tích Xem xét bài toán. .. các chức năng cụ thể là: Active/Inactive Member (Kích hoạt / không kích hoạt thành viên) và Xóa Member ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Hình 2.3: Phân rã use case Quản lý Member Use case Quản lý diễn đàn được phân rã thành 7 uses case nhỏ thực hiện các chức năng cụ thể: Thêm chủ đề, Xóa chủ đề, Sửa chủ đề, Thêm bài viết, Trả lời bài viết, Xóa bài viết, Sửa bài viết Hình 2.4: Phân rã use... II: PHÂN TÍCH THIẾT KÊ 2.3 PHA THIẾT KẾ: Dựa trên các kết quả của pha phân tích, nội dung phần này bao gồm : • Xây dựng các biểu đồ tương tác bao gồm biểu đồ tuần tự và biểu đồ cộng tác cho một số chức năng chính của bài toán dựa trên các sự kiện trong scenario của các chức năng đó • Thiết kế chi tiết : Xây dựng biểu đồ động cho các phương thức phức tạp trong các lớp và xây dựng các bảng thiết kế chi... chức năng Xóa thông tin quá trình học tập Hình 2.16: Biểu đồ tuần tự cho chức năng Xóa thông tin quá trình học tập Biểu dồ tuần tự chức năng Tìm bạn (Tìm bạn học, Tìm bạn công tác) Hình 2.17: Biểu đồ tuần tự chức năng Tìm bạn ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ 2.3.1.2 Các biểu đồ cộng tác Biểu đồ cộng tác cho chức năng Chấp nhận thêm trường Hình 2.18: Biểu đồ cộng tác chức năng Chấp nhận... dựng website tìm bạn cũ, từ các use case và scenario ta sẽ liệt kê các danh từ Dựa vào tập danh từ đó, bước đầu ta có thể xác định được một số lớp chính Dựa trên các lớp đã được xác định, xem xét các động từ đi kèm với danh từ biểu diễn lớp trong scenario và xem xét xem các động từ đó có thể trở thành các phương thức được không Các lớp chính và các phương thức chính cho bài toán Website tìm bạn cũ được... NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Biểu đồ tuần tự chức năng Thêm thông tin quá trình học tập: Hình 2.14: đồ tuần tự cho chức năng Thêm thông tin quá trình học tập ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Biểu đồ tuần tự chức năng Sửa thông tin quá trình học tập Hình 2.15: Biểu đồ tuần tự cho chức năng Sửa thông tin quá trình học tập ĐỒ ÁN TỐT NGHIỆP CHƯƠNG II: PHÂN TÍCH THIẾT KÊ Biểu đồ tuần . về website tìm bạn cũ và các công nghệ liên quan. • Chương II: PHÂN TÍCH THIẾT KẾ Phân tích thiết kế bài toán website tìm bạn cũ sử dụng ngôn ngữ UML với. THIẾT KÊ CHƯƠNG II: PHÂN TÍCH THIẾT KẾ 2.1 PHA PHÂN TÍCH: Phần này thiết lập một cách nhìn tổng quan rõ ràng về bài toán website tìm bạn cũ và các mục đích