Các lớp mới sẽ được bổ sung để tạo thành một hạ tầng cơ sở kỹthuật: Giao diện người dùng, các chức năng để lưu trữ các đối tượng trong ngân hàng dữ liệu, giao tiếp với các hệ thống khác,
Trang 1MỤC LỤC
LỜI CẢM ƠN 6
CHƯƠNG I: ĐẶT VẤN ĐỀ 7
I GIỚI THIỆU ĐỀ TÀI 7
II XÁC ĐỊNH NỘI DUNG CỤ THỂ CỦA ĐỒ ÁN VÀ MỤC ĐÍCH CẦN ĐẠT ĐƯỢC 8
1 Nội dung cụ thể của đồ án 8
2 Mục tiêu cần đạt được 8
III CÔNG CỤ SỬ DỤNG ĐỂ PHÂN TÍCH THIẾT KẾ HỆ THỐNG VÀ CÀI ĐẶT CHƯƠNG TRÌNH 9
1 Lý do sử dụng công cụ 9
1.1 Công cụ phân tích thiết kế hệ thống 9
1.2 Công cụ cài đặt chương trình PHP & MySQL 10
2 Giới thiệu về sơ lược công cụ 11
2.1 Công cụ thiết kế và đặc tả hệ thống – UML 11
2.1.1 Khái niệm về UML 11
2.1.2 UML trong phân tích thiêt kế hệ thống 12
2.1.3 UML và các giai đoạn phát triển của hệ thống 13
2.1.4 UML và các giai đoạn phát triển của hệ thống 14
2.2 Công cụ xây dựng cơ sở dữ liệu - MySQL 15
2.3 Công cụ lập trình - PHP 15
CHƯƠNG II: PHÂN TÍCH 17
I BIỂU ĐỒ USE CASE 17
1 Biểu đồ Use case tổng thể của hệ thống 17
2 Biểu đồ Use case cuả Login Package 19
3 Biểu đồ Use case cho System Manager package 19
3.1 Biểu đồ Use case cho Feedback Manager Package 21
3.1 Biểu đồ Use case cho News-Car Manager Package 21
3.3 Biểu đồ Use case cho News Manager Package 22
3.4 Biểu đồ Use case cho User Manager Package 23
NguyÔn V¨n Hêng - Líp 47PM1
Trang 24 Biều đồ Use case User Servies Package 25
4.1 Biểu đồ Use case User’s News-Car Manager Package 26
4.2 Biểu đồ Use case User’s News Manager Package 27
II BIỀU ĐỒ LỚP THỰC THỂ CỦA HỆ THỐNG 29
III BIỂU ĐỒ TUẦN TỰ VÀ BIỂU ĐỒ CỘNG TÁC 31
1 Login package 32
1.1 Biểu đồ lớp cho chức năng đăng nhập và đăng ký 32
1.2 Biểu đồ tuần tự cho chức năng đăng nhập 32
1.3 Biểu đồ cộng tác cho chức năng đăng nhập 33
1.4 Biểu đồ tuần tự cho chức năng đăng ký 34
1.5 Biểu đồ cộng tác cho chức năng đăng ký 36
2 Feedback package 37
2.1 Biểu đồ lớp cho chức năng góp ý 37
2.2 Biểu đồ tuần tự cho chức năng gửi góp ý 37
2.3 Biểu đồ cộng tác cho chức năng gửi góp ý 39
2.4 Biểu đồ tuần tự cho chức năng xóa góp ý 39
2.5 Biểu đồ cộng tác cho chức năng xóa góp ý 40
2.6 Biểu đồ tuần tự cho chức năng xem góp ý 40
2.7 Biểu đồ cộng tác cho chức năng xem góp ý 41
3 News Manager package 42
3.1 Biểu đồ lớp chức năng quản lý tin tức 42
3.2 Biểu đồ tuần tự cho chức năng thêm tin mới 43
3.3 Biểu đồ cộng tác cho chức năng thêm tin mới 44
3.4 Biểu đồ tuần tự cho chức năng sửa tin 44
3.5 Biểu đồ cộng tác cho chức năng sửa tin 45
3.6 Biểu đồ tuần tự cho chức năng xóa tin 46
3.7 Biểu đồ cộng tác cho chức năng xóa tin 47
3.8 Biểu đồ tuần tự cho chức năng hiển thị tin trên website 48
3.9 Biểu đồ cộng tác cho chức năng cho hiển thị tin trên website 49
2
NguyÔn V¨n Hêng - Líp 47PM1
Trang 3Biểu đồ tuần tự cho chức năng không cho hiển thị tin trên website 50
3.10 Biểu đồ cộng tác cho chức năng không cho hiển thị tin trên website 51
3.11 Biểu đồ tuần tự cho chức năng xét 1 tin thành tin nóng 51
3.12 Biểu đồ cộng tác cho chức năng xét 1 tin thành tin nóng 52
4 Buying News-Car Manager Package 53
4.1 Biểu đồ lớp cho chức năng quản lý tin rao cần mua ô tô 53
4.2 Biểu đồ tuần tự cho chức năng thêm tin rao cần mua ô tô 54
4.3 Biểu đồ cộng tác cho chức năng thêm tin rao cần mua ô tô 56
4.4 Biểu đồ tuần tự cho chức năng xóa tin rao cần mua ô tô 56
4.5 Biểu đồ cộng tác chức năng xóa tin rao cần mua ô tô 57
4.6 Biểu đồ tuần tự cho chức năng sửa tin rao cần mua ô tô 58
4.7 Biểu đồ cộng tác hoạt động sửa tin rao cần mua ô tô 59
4.8 Biểu đồ tuần tự cho chức năng xét thành tin cần mua ô tô gấp 59
4.9 Biểu đồ cộng tác cho chức năng xét thành tin cần mua ô tô gấp 60
4.10 Biểu đồ tuần tự cho chức năng bỏ tin cần mua ô tô gấp 61
4.11 Biểu đồ cộng tác chức năng bỏ tin cần mua ô tô gấp 62
5 Selling News-Car Manager Package 63
5.1 Biểu đồ lớp chức năng quản lý tin rao cần bán ô tô 63
5.2 Biểu đồ tuần tự cho chức năng thêm tin rao cần bán ô tô 64
5.3 Biểu đồ cộng tác cho chức năng thêm tin rao cần bán ô tô 66
5.4 Biểu đồ tuần tự cho chức năng xóa tin rao cần bán ô tô 67
5.5 Biểu đồ cộng tác cho chức năng xóa tin rao cần bán ô tô 67
5.6 Biểu đồ tuần tự cho chức năng sửa tin rao cần bán ô tô 68
6 Biểu đồ cộng tác cho chức năng sửa tin rao cần bán ô tô 69
6.1 Biểu đồ tuần tự cho chức năng xét thành tin cần bán xe gấp. 70
6.2 Biểu đồ cộng tác cho chức năng xét thành tin cần bán ô tô gấp 71
6.3 Biểu đồ tuần tự hoạt động bỏ tin cần bán ô tô gấp 72
6.4 Biểu đồ cộng tác cho chức năng bỏ tin cần bán ô tô gấp 72
III BIỂU ĐỒ HOẠT ĐỘNG 73
NguyÔn V¨n Hêng - Líp 47PM1
Trang 41 Biểu đồ hoạt động cho chức năng đăng nhập 73
2 Biểu đồ hoạt động cho chức năng đăng ký thành viên 74
Biểu đồ hoạt động cho chức năng gửi góp ý 75
3 Biểu đồ hoạt động cho chức năng thêm tin tức thị trường mới 76 4 Biểu đồ hoạt động cho chức năng xóa, sửa một tin tức về thị trường ô tô Việt Nam 77
5 Biểu đồ hoạt động cho chức năng thêm tin rao bán hoặc cần mua xe ô tô 78
6 Biểu đồ hoạt động cho chức năng xóa, sửa tin rao bán hoặc cần mua xe ô tô 79
CH¦¥NG III: THIÕT KÕ Vµ X¢Y DùNG CH¦¥NG TR×NH 80
I THIẾT KẾ CƠ SỞ DỮ LIỆU 80
1 Cấu trúc dữ liệu các bảng của hệ thống 80
1.1 Bảng thành viên – user 80
1.2 Bảng hãng xe – automaker 81
1.3 Bảng chủng loại xe – kind 83
1.4 Bảng tin rao bán ô tô – sellcar 83
1.5 Bảng tin rao mua ô tô – buycar 85
1.6 Bảng thông tin liên hệ người mua, người bán – customer 86
1.7 Bảng tin tức thị trường – news 87
1.8 Bảng thư góp ý - feedback 88
2 Sơ đồ quan hệ giữa các bảng 90
II GIỚI THIỆU CÁC CHỨC NĂNG VÀ GIAO DIỆN XỬ LÝ CHÍNH CỦA CHƯƠNG TRÌNH 91
1 Giao diện chính của website 91
2 Giao diện đăng ký thành viên 92
3 Giao diện đăng nhập 92
4 Chức năng xem thông tin cá nhân 94
4
NguyÔn V¨n Hêng - Líp 47PM1
Trang 55 Chức năng thay đổi mật khẩu 95
16 Giao diện đăng tin tức về thị trường ô tô Việt Nam 96
17 Giao diện đăng tin rao vặt cần bán xe 96
18 Giao diện đăng tin rao vặt cần mua xe 97
19 Quản trị tin tức về thị trường của bạn 99
20 Quản lý tin rao cần bán xe của bạn 100
21 Quản lý tin rao cần mua xe của bạn 100
22 Giao diện chức năng gửi góp ý 101
23 Chức năng thêm hãng xe mới , hiển thị danh sách hãng xe(chỉ dành cho admin) 101 24 Chức năng thêm hãng xe mới , hiển thị danh sách hãng xe(chỉ dành cho admin) 102 25 Chức năng thêm hãng xe chủng loại xe , hiển thị danh sách chủng loại xe(chỉ dành cho admin) 103
15 Chức năng tìm kiếm thành viên (chỉ dành cho admin) 104
CHƯƠNG IV: ĐÁNH GIÁ & KẾT LUẬN 106
1 Những công việc đã làm được 106
1.1 Về mặt lý thuyết 106
1.2 Về mặt ứng dụng 106
2 Khó khăn và hạn chế 106
2.1 Những khó khăn trong quá trình thực hiện đề tài 106
2.2 Những hạn chế của đồ án 106
3 Hướng phát triển của đề tài 107
TÀI LIỆU THAM KHẢO 108
NguyÔn V¨n Hêng - Líp 47PM1
Trang 6Article I LỜI CẢM ƠN
Sau hơn ba tháng tìm hiểu và thực hiện đề tài "Xây dựng website giới thiệu và
quản bá thị trường ô tô Việt Nam" đã cơ bản hoàn thành Để đạt được kết quả
này, em đã nỗ lực hết sức đồng thời cũng nhận được rất nhiều sự quan tâm, giúp
đỡ, ủng hộ của các thầy cô, bạn bè và gia đình
Trước hết, em xin được chân thành gửi lời cảm ơn sâu sắc tới các thầy cô giáo
trong trường Đại học Xây dựng Hà Nội nói chung và các thầy cô trong khoa
Công nghệ Thông tin, bộ môn Công nghệ phần mềm nói riêng đã tận tình
giảng dạy, truyền đạt cho em những kiến thức, những kinh nghiệm quý báu trong
suốt 5 năm học tập và rèn luyện tại trường Đại học Xây dựng Hà Nội
Em xin được gửi lời cảm ơn đến thầy Phan Hữu Trung - Giảng viên bộ
môn Công nghệ phần mềm, khoa Công nghệ Thông tin, trường Đại học Xây
dựng Hà Nội đã hết lòng giúp đỡ, hướng dẫn và chỉ dạy tận tình trong quá trình
em làm đồ án tốt nghiệp
Cuối cùng, em xin được gửi lời cảm ơn chân thành tới gia đình, bạn bè đã
động viên, chăm sóc, đóng góp ý kiến và giúp đỡ trong quá trình học tập, nghiên
cứu và hoàn thành đồ án tốt nghiệp
Hà Nội, ngày 06 tháng 01 năm 2007
Nguyễn Văn Hường Sinh viên lớp Công nghệ phần mềm – K47 Khoa Công nghệ Thông tin - Đại học Xây dựng Hà Nội
6
NguyÔn V¨n Hêng - Líp 47PM1
Trang 7CHƯƠNG I: ĐẶT VẤN ĐỀ
Article II GIỚI THIỆU ĐỀ TÀI
Trong những năm gần đây, xu hướng hội nhập toàn cầu đã tạo ra những động lựcphát triển rất lớn cho nhân loại nhưng đồng thời cũng đặt ra nhiếu thách thức cần giảiquyết nhằm đáp ứng nhu cầu sử dụng tài nguyên một cách hiệu quả Đối với ngànhCông nghệ Thông tin, sự bùng nổ của Internet cùng với một loạt công nghệ tiên tiếnkhác ra đời đã làm biến đổi hoàn toàn tư duy, tầm nhìn của cộng đồng Công nghệThông tin nói riêng cũng như của toàn xã hội nói chung về tiềm năng và cả những vấn
đề mang tính đột phá trong sự phát triển của ngành khoa học này
Cùng với sự ra đời và lớn mạnh của nền công nghệ thông tin thế giới và Việt Nam
đã thúc đẩy nền kinh tế hàng hóa đa thành phần phát triển, kèm theo đó là các dịch vụthương mại điện tử phát triển Sự phát triển mạnh mẽ của các dịch vụ Internet dần làmcho nhu cầu con người ngày càng đòi hỏi cao hơn Họ chỉ cần một chiếc máy tính cánhân và một đường truyền internet là có thể ngồi tại nhà tìm hiểu về tất cả các lĩnh vựckhoa học và cuộc sống không chỉ trong đất nước của họ mà trên toàn thế giới Một xuhướng mới của các nhà hoạt động kinh doanh là tại sao không mở một cánh cửa chomọi người, một cánh cửa mới của một kỷ nguyên internet Lúc đó không chỉ là tìmhiểu về thế giới rộng lớn mà là kinh doanh ngay trên internet, kinh doanh ngay tại nhà,trao đổi mua bán ngay tại nhà Một công ty, một tổ chức hay một cá nhân họ kinhdoanh một mặt hàng nào đó và họ xây dựng một website để giới thiệu, để quảng bá sảnphẩm của họ tới hàng triệu triệu người dùng internet
Sau khi Việt Nam gia nhập WTO (World Trade Organization) khiến cho nền kinh
tế Việt Nam có những chuyển biến mới Kinh tế phát triển, cuộc sống con người ngàycàng được nâng cao, hàng hóa xuất nhập khẩu ngày càng nhiều, giao thông thuận tiện.Khi đó để sở hữu một chiếc ô tô làm phương tiện đi lại với gia đình Việt Nam sẽkhông là điều khó khăn Con người có nhu cầu đi lại bằng các phương tiên đắt tiền trởnên bình thường hơn Ô tô sẽ là mộ trong các phương tiện phổ biến, trong khi người sửdụng lại ít biết về thông tin của nó Khi họ cần mua hay cần bán một chiếc xe họ cầnphải tìm hiểu ở đâu, giao bán qua các trung gian mà số lượng người biết về thông tin
xe của họ lại rất ít Hoặc họ cần tìm hiểu thị trường xe hơi Việt Nam để mua một chiếc
xe họ có thể tìm hiểu ở đâu một cách nhanh nhất Đưa ra những quyết định và lựa chọnmột chiếc xe ưng ý, phù hợp với túi tiền và thẩm mĩ cũng như điều kiện giao thông,thời tiết Việt Nam
NguyÔn V¨n Hêng - Líp 47PM1
Trang 8Đề tài “Xây dựng website giới thiệu và quảng bá thị trường ô tô Việt Nam” là mộtcách giải quyết cho bài toán trên Lúc này họ chỉ cần ngồi tại nhà vơi chiếc máy tính
và đường truyền internet truy cập vào website để tìm kiếm, xem các thông tin về thịtrường ô tô Việt Nam Họ có chiếc xe cần bán, website cũng có dịch vụ cung cấp cho
họ đưa thông tin về chiếc xe đó cho hàng triệu người sử dụng internet Khi kinh tế củagia đình bạn khá hơn và nảy sinh nhu cầu mua một chiếc xe để phục vụ đi lại của cảgia đình, lúc này để có thể mua được một chiếc xe tốt, giá cả phù hợp…bạn chỉ cầnđăng tin cần mua xe với các tiêu chí về chiếc xe cần mua như hãng xe, loại xe, giákhoảng bao nhiêu, màu sắc thế nào… trên website Khi đó có hàng ngàn các nhà cungcấp xe hơi, những người có xe cần bán sẽ liên hệ với bạn, cung cấp cho bạn các mẫu
xe tương ứng nhất với yêu cầu mà bạn đặt ra
Article III XÁC ĐỊNH NỘI DUNG CỤ THỂ CỦA ĐỒ
ÁN VÀ MỤC ĐÍCH CẦN ĐẠT ĐƯỢC
Article IV Nội dung cụ thể của đồ án
Website sau khi được xây dựng sẽ đảm bảo mô tả một cách tốt nhất về sự sôiđộng của thị trường ô tô Việt Nam Người sử dụng khi vào website sẽ tìm hiểuđược các thông tin về thị trường ô tô Việt Nam, tìm kiếm mua bán xe
Người sử dụng là thành viên của website sẽ chính là những người mua, ngườibán, nhà cung cấp xe hơi cho khách hàng
Article V Mục tiêu cần đạt được
Cần giới thiệu và quảng bá được tình hình thị trường ô tô Việt Nam trong thờiđại mới, trong thời đại kinh tế phát triển cạnh tranh trong môi trường WTO
Hệ thống cho phép người sử dụng có thể tìm kiếm thông tin về thị trường ô tôViệt Nam Tìm kiếm các tin rao vặt về mua, bán xe ô tô tại các tỉnh thành củaViệt Nam
Hệ thống cho phép đăng ký thành viên, thành viên của website có quyền đăngtin rao bán ô tô, cần mua ô tô, tham gia đóng góp ý kiến tới ban quản trị củawebsite
8
NguyÔn V¨n Hêng - Líp 47PM1
Trang 9Article VI CÔNG CỤ SỬ DỤNG ĐỂ PHÂN TÍCH
THIẾT KẾ HỆ THỐNG VÀ CÀI ĐẶT CHƯƠNG TRÌNH
Lý do sử dụng công cụ
Công cụ phân tích thiết kế hệ thống
Ngôn ngữ mô hình hợp nhất UML (Unified Modeling Language) là một ngônngữ trực quan cung cấp cho các nhà phân tích và thiết kế hướng đối tượng một cáchhình dung ra các hệ thống phần mềm, mô hình hoá các tổ chức nghiệp vụ và sử dụngcác hệ thống phần mềm này; cũng như xây dựng chúng và làm tài liệu về chúng.Ngôn ngữ ơ đây không phải là ngôn ngữ giống với ngôn ngữ tự nhiên hay ngôn ngữlập trình Tuy nhiên nó cũng có một tập các qui luật xác định cách sử dụng
Kĩ thuật phát triển phần mềm hướng đối tượng trải qua 3 giai đoạn:
- Các ngôn ngữ lập trình hướng đối tượng được phát triển và bắt đầu được sử dụng
- Các kĩ thuật phân tích và thiết kế hướng đối tượng được tạo ra nhằm giúp đỡcông việc mô hình hoá nghiệp vụ, phân tích các yêu cầu, và thiết kế các hệ thốngphần mềm Những kĩ thuật này ngày càng phát triển rộng rãi
- UML được thiết kế nhằm kết hợp các đặc điểm tốt nhất của một số các kĩ thuật
và kí hiệu trong phân tích thiết kế để tạo ra một tiếu chuẩn công nghiệp
Các phần tử trong UML hầu hết là các đối tượng đồ hoạ : đường thẳng, hình chữnhật, Oval chúng được đặt nhãn để cung cấp thông tin Tuy nhiên , các phần tử đồhoạ UML chỉ biểu diễn các phần cần mô hình dưới dạng hình ảnh Ta cũng có thểtạo ra một mô hình UML dưới dạng thuần dữ liệu Tuy nhiên cách biễu diễn dữ liệubằng hình ảnh vẫn giúp mô hình dễ hiểu và trực quan hơn
Các qui luật trong UML:
- Cú pháp trừu tượng: được biểu diễn như các biểu đồ và ngôn ngữ tự nhiên Xácđinh bằng cách dùng kí hiệu metamodel.Kí hiệu này là tập con của tập các kí hiệuUML , chúng ta dung class diagram để xác đinh các phần tử của các mô hình UML
và quan hệ giữa chúng
- Luật Well-formedness(Luật hình thức): nằm trong ngôn ngữ ràng buộc đối tượngOCL (Object Contraint Language) Luật được biễu diễn như biểu đồ sẽ dùng mộttập các kí hiệu con của UML để xác định các kết hơp giữa các phần tử
- Ngữ nghĩa:Mô tả các thuật ngữ trong UML
NguyÔn V¨n Hêng - Líp 47PM1
Trang 10Do vậy dùng UML để phân tích thiết kế và đặc tả hệ thống
Công cụ cài đặt chương trình PHP & MySQL
Lý do sử dụng PHP
Khi sử dụng PHP, người dùng sẽ có được tốc độ nhanh hơn nhiều so với cácngôn ngữ kịch bản khác, bởi PHP là phần mềm mã nguồn mở, được hỗ trợ bởi nhiềulập trình viên giỏi, có số lượng người dùng đông đảo Ngoài ra PHP chạy được trênnhiều hệ điều hành khác nhau
Rút ngắn thời gian phát triển PHP cho phép bạn tách phần HTML code và phầnscript, do đó có thể độc lập giữa công việc phát triển mã và thiết kế Điều này vừagiúp lập trình viên dễ dàng hơn vừa có thể làm cho chương trình mềm dẻo hơn trongviệc thay đổi giao diện
Lý do sử dụng MySQL
MySQL là cơ sở dữ liệu được sử dụng cho các ứng dụng Web có quy mô vừa vànhỏ
MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng
MySQL có tính khả chuyển, hoạt động trên nhiều hệ điều hành (Unix, FreeBSD,NetBSD, Linux, Novell NetWare, SGI Irix, Solaris, SunOS, Windows)
Qua nhiều năm phát triển, hiện tại MySQL cung cấp một hệ thống lớn các hàmtiện ích rất mạnh
10
NguyÔn V¨n Hêng - Líp 47PM1
Trang 11 Với tốc độ và tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truycập CSDL trên internet.
Tương ứng với kịch bản này, cơ sở dữ liệu MySQL cũng là một hệ cơ sở dữ liệu
mã nguồn mở Khi viết PHP và MySQl trên môi trường Windows có thể triển khaichúng trên môi trường Linux
MySQL là phần mềm mã nguồn mở nên được rất nhiều nhà chuyên gia tập trung
để phát triển Hiện nay nó là hệ quản trị cơ sở không giới hạn người dùng và nó trởthành một hệ cơ sở dữ liệu rất mạnh
Đặc biệt là khi ta làm việc với PHP & MySQL ta không còn lo lắng về bản
quyền vì nó là những phần mềm mở
Article VII Giới thiệu về sơ lược công cụ
Section VII.1 Công cụ thiết kế và đặc tả hệ thống – UML
(a) Khái niệm về UML
Ngôn ngữ mô hình hóa thống nhất (Unifield Modeling Language – UML) là mộtngôn ngữ để biểu diễn mô hình theo hướng đối tượng được xây dựng bởi ba tác giảtrên với chủ đích là:
Mô hình hoá các hệ thống sử dụng các khái niệm hướng đối tượng
Thiết lập một kết nối từ nhận thức của con người đến các sự kiện cần mô hìnhhoá
Giải quyết vấn đề về mức độ thừa kế trong các hệ thống phức tạp, có nhiều ràngbuộc khác nhau
Tạo một ngôn ngữ mô hình hoá có thể sử dụng được bởi người và máy
a) UML là ngôn ngữ dùng cho mô hình hóa trực quan
Giúp cho việc suy nghĩ về cài đặt và bản cài đặt thực tế được nhất quán
Giúp lập trình viên, phân tích viên: dễ dàng trao đổi những mô hình trong phầnmềm với nhau, hiểu rõ toàn bộ hệ thống và vai trò của mình trong hệ thống.Thông tin được lưu trữ rõ ràng, dễ tra cứu quản lý
b) UML là ngôn ngữ dùng cho đặc tả
Đặc tả giúp cho xây dựng các mô hình chính xác,rõ ràng, không nhập nhằng, đầyđủ
UML giúp giải quyết các vấn đề phân tích,thiết kế, cài đặt được rõ ràng, thôngsuốt trong quá trình phát triển phần mềm
NguyÔn V¨n Hêng - Líp 47PM1
Trang 12c) UML là ngôn ngữ dùng cho xây dựng
Các mô hình UML có thể ánh xạ sang một ngôn ngữ lập trình như Java, C++, Visual Basic, một bảng trong CSDL quan hệ (RDBMS), một lưu trữ bền vững
của CSDL HĐTg (OO-DBMS).
d) UML là ngôn ngữ dùng làm tài liệu
UML giúp ghi chép, tài liệu hóa lại kiến trúc của hệ thống
- Mô tả các yêu cầu (Requirements)
- Các bộ kiểm thử (Tests)
- Mô hình hóa các hoạt động, lập lịch của project giảm khó khăn cho cộng việcquản lý
(b) UML trong phân tích thiêt kế hệ thống
UML có thể được sử dụng trong nhiều giai đoạn, từ phát triển, thiết kế cho tới thựchiện và bảo trì Vì mục đích chính của ngôn ngữ này là dùng các biểu đồ hướng đốitượng để mô tả hệ thống nên miền ứng dụng của UML bao gồm nhiều loại hệ thốngkhác nhau như:
Hệ thống thống tin (Information System): Cất giữ, lấy, biến đổi biểu diễn thông
tin cho người sử dụng Xử lý những khoảng dữ liệu lớn có các quan hệ phức tạp ,
mà chúng được lưu trữ trong các cơ sở dữ liệu quan hệ hay hướng đối tượng
Hệ thống kỹ thuật (Technical System): Xử lý và điều khiển các thiết bị kỹ thuật
như viễn thông, hệ thống quân sự, hay các quá trình công nghiệp Đây là loạithiết bị phải xử lý các giao tiếp đặc biệt , không có phần mềm chuẩn và thường làcác hệ thống thời gian thực (real time)
Hệ thống nhúng (Embeded System): Thực hiện trên phần cứng gắn vào các thiết
bị như điện thoại di động, điều khiển xe hơi, … Điều này được thực hiện bằngviệc lập trình mức thấp với hỗ trợ thời gian thực Những hệ thống này thườngkhông có các thiết bị như màn hình đĩa cứng, …
Hệ thống phân bố ( Distributed System): Được phân bố trên một số máy cho
phép truyền dữ liệu từ nơi này đến nơi khác một cách dễ dàng Chúng đòi hỏi các
cơ chế liên lạc đồng bộ để đảm bảo toàn vẹn dữ liệu và thường được xây dựngtrên một số các kỹ thuật đối tượng như CORBA, COM/DCOM, hay Java Beans/RMI
12
NguyÔn V¨n Hêng - Líp 47PM1
Trang 13 Hệ thống Giao dịch (Business System): Mô tả mục đích, tài nguyên (con người,
máy tính, …), các quy tắc (luật pháp, chiến thuật kinh doanh, cơ chế, …), vàcông việc hoạt động kinh doanh
Phần mềm hệ thống (System Software): Định nghĩa cơ sở hạ tầng kỹ thuật cho
phần mềm khác sử dụng, chẳng hạn như hệ điều hành, cơ sở dữ liệu, giao diệnngười sử dụng
(c) UML và các giai đoạn phát triển của hệ thống
Preliminary Investigation: use cases thể hiện các yêu cầu của người dùng Phần
miêu tả use case xác định các yêu cầu, phần diagram thể hiện mối quan hệ vàgiao tiếp với hệ thống
Analysis: Mục đích chính của giai đọan này là trừu tượng hóa và tìm hiểu các cơ
cấu có trong phạm vi bài toán Class diagrams trên bình diện trừu tượng hóa cácthực thể ngoài đời thực được sử dụng để làm rõ sự tồn tại cũng như mối quan hệcủa chúng Chỉ những lớp (class) nằm trong phạm vi bài toán mới đáng quan tâm
Design: Kết quả phần analysis được phát triển thành giải pháp kỹ thuật Các lớp
được mô hình hóa chi tiết để cung cấp hạ tầng kỹ thuật như giao diện, nền tảngcho database, … Kết quả phần Design là các đặc tả chi tiết cho giai đoạn xâydựng phần mềm
Development: Mô hình Design được chuyển thành code Programmer sử dụng
các UML diagrams trong giai đoạn Design để hiểu vấn đề và tạo code
Testing: Sử dụng các UML diagrams trong các giai đoạn trước Có 4 hình thức
kiểm tra hệ thống:
- Unit testing (class diagrams & class specifications): kiểm tra từng đơn thể, được
dùng để kiểm tra các lớp hay các nhóm đơn thể
- Integration testing (integration diagrams & collaboration diagrams) : kiểm tra
tích hợp là kiểm tra kết hợp các component với các lớp để xem chúng hoạt độngvới nhau có đúng không
- System testing (use-case diagrams) : kiềm tra xem hệ thống có đáp ứng được
chức năng mà người sử dụng yêu cầu hay không
- Acceptance testing: Kiểm tra tính chấp nhận được của hệ thống, thường được
thực hiện bởi khách hàng, việc kiểm tra này thực hiện tương tự như kiểm tra hệthống
UML và các giai đoạn phát triển của hệ thống
NguyÔn V¨n Hêng - Líp 47PM1
Trang 14a Giai đoạn nghiên cứu sơ bộ
UML đưa ra khái niệm Use Case để nắm bắt các yêu cầu của khách hàng (người sử
dụng) UML sử dụng biểu đồ Use case (Use Case Diagram) để nêu bật mối quan hệcũng như sự giao tiếp với hệ thống
Qua phương pháp mô hình hóa Use case, các tác nhân (Actor) bên ngoài quan tâmđến hệ thống sẽ được mô hình hóa song song với chức năng mà họ đòi hỏi từ phía hệthống (tức là Use case) Các tác nhân và các Use case được mô hình hóa cùng các mốiquan hệ và được miêu tả trong biểu đồ Use case của UML Mỗi một Use case được mô
tả trong tài liệu, và nó sẽ đặc tả các yêu cầu của khách hàng: Anh ta hay chị ta chờ đợiđiều gì ở phía hệ thống mà không hề để ý đến việc chức năng này sẽ được thực thi rasao
b Giai đoạn phân tích
Giai đoạn phân tích quan tâm đến quá trình trừu tượng hóa đầu tiên (các lớp và cácđối tượng) cũng như cơ chế hiện hữu trong phạm vi vấn đề Sau khi nhà phân tích đãnhận biết được các lớp thành phần của mô hình cũng như mối quan hệ giữa chúng vớinhau, các lớp cùng các mối quan hệ đó sẽ được miêu tả bằng công cụ biểu đồ lớp(class diagram) của UML Sự cộng tác giữa các lớp nhằm thực hiện các Use case cũng
sẽ được miêu tả nhờ vào các mô hình động (dynamic models) của UML Trong giaiđoạn phân tích, chỉ duy nhất các lớp có tồn tại trong phạm vi vấn đề (các khái niệm đờithực) là được mô hình hóa Các lớp kỹ thuật định nghĩa chi tiết cũng như giải pháptrong hệ thống phần mềm, ví dụ như các lớp cho giao diện người dùng, cho ngân hàng
dữ liệu, cho sự giao tiếp, trùng hợp, v.v , chưa phải là mối quan tâm của giai đoạnnày
c Giai đoạn thiết kế
Trong giai đoạn này, kết quả của giai đoạn phân tích sẽ được mở rộng thành mộtgiải pháp kỹ thuật Các lớp mới sẽ được bổ sung để tạo thành một hạ tầng cơ sở kỹthuật: Giao diện người dùng, các chức năng để lưu trữ các đối tượng trong ngân hàng
dữ liệu, giao tiếp với các hệ thống khác, giao diện với các thiết bị ngoại vi và các máymóc khác trong hệ thống, Các lớp thuộc phạm vi vấn đề có từ giai đoạn phân tích sẽđược "nhúng" vào hạ tầng cơ sở kỹ thuật này, tạo ra khả năng thay đổi trong cả haiphương diện: Phạm vi vấn đề và hạ tầng cơ sở Giai đoạn thiết kế sẽ đưa ra kết quả làbản đặc tả chi tiết cho giai đoạn xây dựng hệ thống
d Giai đoạn xây dựng
14
NguyÔn V¨n Hêng - Líp 47PM1
Trang 15Trong giai đoạn xây dựng (giai đoạn lập trình), các lớp của giai đoạn thiết kế sẽđược biến thành những dòng code cụ thể trong một ngôn ngữ lập trình hướng đốitượng cụ thể (không nên dùng một ngôn ngữ lập trình hướng chức năng!) Phụ thuộcvào khả năng của ngôn ngữ được sử dụng, đây có thể là một công việc khó khăn hay
dễ dàng Khi tạo ra các mô hình phân tích và thiết kế trong UML, tốt nhất nên cố gắng
né tránh việc ngay lập tức biến đổi các mô hình này thành các dòng code Trong nhữnggiai đoạn trước, mô hình được sử dụng để dễ hiểu, dễ giao tiếp và tạo nên cấu trúc của
hệ thống; vì vậy, vội vàng đưa ra những kết luận về việc viết code có thể sẽ thành mộttrở ngại cho việc tạo ra các mô hình chính xác và đơn giản Giai đoạn xây dựng là mộtgiai đoạn riêng biệt, nơi các mô hình được chuyển thành code
e Thử nghiệm
Như đã trình bày trong phần Chu Trình Phát Triển Phần Mềm, một hệ thống phầnmềm thường được thử nghiệm qua nhiều giai đoạn và với nhiều nhóm thử nghiệmkhác nhau Các nhóm sử dụng nhiều loại biểu đồ UML khác nhau làm nền tảng chocông việc của mình: Thử nghiệm đơn vị sử dụng biểu đồ lớp (class diagram) và đặc tảlớp, thử nghiệm tích hợp thường sử dụng biểu đồ thành phần (component diagram) vàbiểu đồ cộng tác (collaboration diagram), và giai đoạn thử nghiệm hệ thống sử dụngbiểu đồ Use case (use case diagram) để đảm bảo hệ thống có phương thức hoạt độngđúng như đã được định nghĩa từ ban đầu trong các biểu đồ này
Article VIII Công cụ xây dựng cơ sở dữ liệu - MySQL
MySQL (My Ess Que Ell) là hệ quản trị cơ sở dữ liệu
MySQL là hệ quản trị cơ sở dữ liệu quan hệ
MySQL là PMNM
- Bạn có thể download phần mềm và mã nguồn của MySQL qua internet, có thểsửa đổi MySQL theo nhu cầu của mình MySQL tuân theo giấy phép GNU GPL(http://www.fsf.org/licenses/)
- Ngoài phiên bản sử dụng GPL, bạn có thể mua bản thương mại của MySQL(https://order.mysql.com/)
2.3 Công cụ lập trình - PHP
PHP được phát triển từ ngôn ngữ kịch bản (script) với mục đích xây dựng trangWeb cá nhân (Personal Home Page) Sau đó đã được phát triển thành một ngôn ngữhoàn chỉnh và được ưa chuộng trên toàn thế giới trong việc phát triển các ứng dụngWeb based
NguyÔn V¨n Hêng - Líp 47PM1
Trang 16 PHP (PHP: Hypertext Perprocessor) là ngôn ngữ kịch bản lập trình phía máy chủ(server-side) phổ biến nhất thế giới.
PHP thường hoạt động theo thứ tự sau:
- Người dùng gửi yêu cầu lên máy chủ
- Máy chủ xử lý yêu cầu (Thông dịch mã PHP và chạy chương trình, mã PHP cóthể truy xuất CSDL, tạo hình ảnh, đọc ghi file, tương tác với máy chủ khác )
- Máy chủ gửi dữ liệu về cho người dùng (thường là dưới dạng HTML)
- Bạn có thể download phần mềm PHP tại địa chỉhttp://www.php.net/downloads.php
- Trên website http://www.php.net/downloads.php cũng có tài liều về PHP để bạntham khảo
16
NguyÔn V¨n Hêng - Líp 47PM1
Trang 17CHƯƠNG II: PHÂN TÍCH
Article IX BIỂU ĐỒ USE CASE
Qua việc phân tích nội dung cụ thể của bài toán “Xây dựng website giới thiệu vàquảng bá thị trường ô tô Việt Nam”, ta xác định được 3 tác nhân chính của hệ thống
Tác nhân thứ nhất là (Customer) : Người dùng viếng thăm website, tác nhân nàytham gia vào hệ thống để đọc tin tức, tìm kiếm các mục tin, bài viết, thẩm địnhchương trình
Tác nhân thứ 2 là (User): Người dùng viếng thăm website sau khi đã đăng kýlàm thành viên của website Họ được phân cho các quyền:
- Đăng bài tin tức về thị trường ô tô Việt Nam
- Đăng tin và tự quản lý bài viết giao bán xe ô tô của họ trên website
- Đăng tin và tự quản lý bài viết cần mua xe ô tô của họ trên website
- Gửi bài góp ý tới ban quản trị của website
Tác nhân thứ 3 là (Admin ): Người quản trị website Đây là tác nhân quản lýchung của hệ thống Quản lý tất cả các tin, bài và các thành viên trên website vàphân quyền truy nhập hệ thống…
Xuất phát từ các tác nhân của hệ thống ta có các Use Case của hệ thống như sau:
Các dịch vụ, chức năng dành cho khách viếng thăm (Customer) gọi chung làCustomer Services Use Case
Các dịch vụ, chức năng dành cho thành viên của website (User) gọi chung làUser Services
Các dịch vụ, chức năng quản lý hệ thống của Người quản trị hệ thống gọi chung
là System Manager Use Case
Chức năng đăng nhập hệ thống dành cho thành viên và người quản trị hệ thônggọi là Login Use Case
Article X Biểu đồ Use case tổng thể của hệ thống
Dưới đây là biểu đồ Use Case tổng thể của hệ thống Biểu diễn các chức năng của
hệ thống Biểu đồ Use Case cho biết trạng thái tĩnh của các Use Case của hệ thống,đồng thời cho biết mối quan hệ các tác nhân với các Use Case Vì use case biểu diễnyêu cầu hệ thống từ góc độ người dùng, cho nên use case là các chức năng mà hệ
NguyÔn V¨n Hêng - Líp 47PM1
Trang 18thống phải có Cụ thể trong biểu đồ này có các tác nhân và các use case chung nhưđược phân tích ở trên.
Hình 1: Biểu đồ Use case tổng thể của hệ thống
Hệ thống được chia làm 4 Package:
Trang 19Section X.1 Biểu đồ Use case cuả Login Package
Gói Login được chia làm hai use case là:
Use case Register: Có chức năng cho khách hàng đăng ký là thành viên củawebsite Biểu diễn sự tương tác giữa khách hàng và hệ thống đăng ký
Use case Login: Có chức năng cho thành viên và người quản trị của hệ thốngđăng nhập hệ thống
Hình 2: Biểu đồ Use case gói đăng nhập
(i) Biểu đồ Use case cho System Manager package
Gói System Manager được chia làm 6 Use case và 4 package nhỏ Các Use case vàPackage này được quản lý bởi quyền của người quản trị hệ thống
Các Use case:
Tìm kiếm tin, bài và tìm kiếm thành viên (Search Item, Users)
Phân quyền (Dêcntralization): Phân quyền truy nhập website cho thành viên
NguyÔn V¨n Hêng - Líp 47PM1
Trang 20 Quản lý góp ý của thành viên (Feedback Manager)
Quan lý tin rao vặt (tin cần mua và cần bán) ô tô (News-Car Manager)
Quan lý tin tức về thị trường ô tô Việt Nam (News Manager)
Quản lý thành viên (User Manager) có nhiệm vụ quản lý các thành viên,thay đổi quyền truy cập website của thành viên bởi việc thay đổi cấp độ củathành viên hoặc khóa thành viên không cho đăng nhập website
Các Package:
Feedback Manager (Gói quản lý thư góp ý)
News-Car Manager (Gói quản lý tin rao vặt mua, bán ô tô)
News Manager (Gói quản lý tin tức thị trường ô tô)
User Manager (Gói quản lý thành viên)
Hình 3: Biểu đồ Use case gói quản lý hệ thống
20
NguyÔn V¨n Hêng - Líp 47PM1
Trang 21Dưới đây là các biểu đồ biểu diễn chi tiết các Package có trong biểu đồ Use Case góiSystem Manager.
Article XI Biểu đồ Use case cho Feedback Manager Package
Gói Feedback Manager chia làm ba Use case Sau khi đăng nhập hệ thống thì cáctác nhân mới có quyền sử dụng chức năng này Những ý kiến của thành viên giúp choban quản trị website củng cố lại các chức năng ngày càng hoàn thiện hơn Ngoài ra đócũng là các ý kiến để giúp nhà phát triển phần mềm nâng cấp và phát triển thêm cácchức năng, tiện ích cho hệ thống
Gửi góp ý tới Ban quản trị website, chức năng này dành cho cả các thành viên(Create)
Sửa, Xóa góp ý, chức năng này chỉ dành cho người quản trị hệ thống (Modify,delete) Quản lý các góp ý của thành viên bởi việc xem, sửa xóa đồng thời đưa ratrả lời cho các thắc mắc của thành viên trong quá trình sử dụng hệ thống
Hình 4: Biểu đồ Use case gói quản lý thư góp ý
Article XII Biểu đồ Use case cho News-Car Manager Package
Gói News-Car Manager chia làm 3 use case, sau khi đăng nhập hệ thống ngườiquản trị hệ thống (tác nhân) được thực hiện các chức năng này
Viết tin rao vặt mua, bán ô tô (write news-car)
Sửa tin rao vặt mua, bán ô tô (modify news-car)
NguyÔn V¨n Hêng - Líp 47PM1
Trang 22 Xóa tin rao vặt mua bán ô tô (delete news-car)
Hình 5: Biểu đồ Use case gói quản lý tin rao vặt mua, bán ô tô
Section XII.1 Biểu đồ Use case cho News Manager Package
Gói News Manager được chia làm 5 Use case Tác nhân người quản trị hệ thốngđăng nhập hệ thống được quyền truy nhập và quản lý tin tức về thị trường ô tô ViệtNam
Viết tin mới (Create News) Để website ngày càng cung cấp cho thành viên vàkhách hàng viếng thăm wesite có nhiều thông tin về thị trường ô tô Việt Nam thìngười quản trị website cần phải thương xuyên cập nhập tin tức cho website từngngày, từng giờ
Xóa tin (Delete News) ) Nhằm quản lý một cách triệt để hệ thống, chức năngnày giúp cho người quản trị giải phóng bớt dữ liệu (Nếu quá nhiều) hoặc nội dungtin tức không phù hợp với mục tiêu và định hướng phát triển của website
Thay đổi nội dung tin tức (Modify News) Chỉnh sửa lại nội dung website chochính xác và đầy đủ giúp người dùng có thông tin hữu ích về thị trường ô tô ViệtNam
Cho phép tin tức được hiển thị trên website vì mặc định tin tức khi được tạomới sẽ chưa được hiển thị trên website (Show News)
22
NguyÔn V¨n Hêng - Líp 47PM1
Trang 23 Không cho tin được phép hiển thị trên website (UnShow News) Chức năng nàygiúp giải quyết: Những tin tức mà người quản trị không muốn hiển thị trên website
và cũng không muốn xóa hẳn khỏi website
Xét một tin thành tin nóng về thị trường ô tô Việt Nam (Hot News) Giúp chongười dùng cập nhật các thông tin nổi bật hay các sự kiện về thị trường ô to ViệtNam
Bỏ một tin nóng thành tin bình thường (Not Hot News)
Hình 6: Biểu đồ Use case gói quản lý tin tức thị trường ô tô Việt Nam
Article XIII Biểu đồ Use case cho User Manager Package
Việc quản lý thành viên giúp người quản trị hệ thống quản lý website một cáchchặt chẽ và hiểu quả hơn
Tác nhân người quản trị hệ thống đăng nhập vào hệ thống có quyền quản lý cácthành viên của website
Các Use case của gói User Manager gồm có:
Xóa User (Delete User)
NguyÔn V¨n Hêng - Líp 47PM1
Trang 24 Khóa User (Block User), khóa không cho một user nào nào không được truynhập vào website vì một lý do nào đó như User đó đưa các thông tin không đúngvới mục tiêu và định hướng phát triển của website, các tin và bài viết không có ýnghĩa hoặc gây hư hại cho website.
Mở khóa cho User đã bị khóa (UnBlock User)
Website ngày càng phát và cần thêm nhiều người quản trị hệ thống, giúp giảmbớt quá trình quản lý công việc của người quản trị hệ thống (Set Admin)
Xem thông tin cá nhân thành viên (View User’s Profile)
Thay đổi thông tin thành viên, giúp cập nhật đầy đủ các thông tin về thành viên(Modify User’s Profile)
Tìm kiếm thành viên (Search User)
Hình 7: Biểu đồ Use case gói quản lý thành viên
Section XIII.1 Biều đồ Use case User Servies Package
Gói User Services cung cấp các dịch vụ cho thành viên Gói này được chia 6 usecase và 2 package
24
NguyÔn V¨n Hêng - Líp 47PM1
Trang 25 Các use case:
Thành viên phải đăng nhập để sử dụng các chức năng này
Tìm kiếm tin rao vặt ô tô hoặc tin tức về thị trường ô tô Việt Nam Giúp thànhviên tìm được các thông tin đang cần một cách nhanh chóng nhất
User’s News-Car Manager: Thành viên tự quản lý tin giao vặt của họ
User’s News Manager: thành viên tự quản lý tin tức về thị trường ô tô ViệtNam mà họ đã đăng trên website
Login: Đăng nhập để sử sụng các chức năng của hệ thống dành cho thành viên
Gửi góp ý tới quản trị website, chỉ có thành viên mới có quyền sử dụng chứcnăng này Chức năng này giúp thành viên
Các package:
User’s News Manager
User’s News-Car Manager
NguyÔn V¨n Hêng - Líp 47PM1
Trang 26Hình 8: Biểu đồ Use case gói dịch vụ (chức năng) dành cho thành viên
Section XIII.2 Biểu đồ Use case User’s News-Car Manager Package
Gói User’s News-Car Manager bao gồm các chưc năng cho thành viên tự quản lýtin rao vặt mua và bán ô tô của mình
Các Use case gồm có:
Viết một tin rao vặt mới có thể là tin cần mua, có thể là tin cần bán ô tô.Thành viên nhập các thông tin về xe cần bán hoặc các thông tin về xe cần mua vàgửi bài Bài viết sẽ được hiển thị trên website cho tất cả các người dùng xem(write news-car)
26
NguyÔn V¨n Hêng - Líp 47PM1
Trang 27 Sửa thông tin rao vặt Sau khi đã gửi thông tin về xe cần mua hoặc cần bánlên website, thành viên có quyền thay đổi (modify your news-car) tin rao vặt củamình hoặc
Xóa thông tin rao vặt trên website (delete your news-car)
Hình 9: Biểu đồ Use case gói quản lý tin rao mua, bán ô tô
Section XIII.3 Biểu đồ Use case User’s News Manager Package
Gói User’s News Manager gồm có các chức năng cho thành viên tự quản lý thông tin
về thị trường mà họ đăng lên website
Sau khi đăng nhập vào hệ thống, thành viên có quyền sử dụng các chức năng sau:
Viết tin tức về thị trường mới, nhằm giúp website ngày càng có nội dungphong phú và tăng số lượng bài viết Như vậy sẽ cung cấp đầy đủ hơn cho cácngươi dùng khác các thông tin sống động của thị trường ô tô Việt Nam (writenews)
Sửa nội dung bài viết, gúp người dùng sửa chữa lại các lỗi của bài viết trongquá trình đăng tin (modify your news)
Xóa bài viết của họ (delett your news)
NguyÔn V¨n Hêng - Líp 47PM1
Trang 28Hình 10: Biểu đồ Use case gói quản lý tin tức thị trường ô tô Việt Nam.
5. Biều đồ Use case Customer Service Package
Các dịch vụ dành cho khách viếng thăm website, Khách viếng thăm website cóquyền:
Đăng ký để trở thành thành viên của website nhằm sử dụng các chức năng củawebsite dành cho thành viên
Xem tin tức về thị trường ô tô Việt Nam
Xem tin rao vặt mua, bán ô tô tại Việt Nam Phù hợp cho các khách hàng vàotìm kiếm người mua, người bán xe
Tìm kiếm nhanh tin tức, tin rao vặt theo các tiêu chí về nội dung thị trường,thông tin về xe cần mua, cần bán có trên website
Hình 11 biểu diễn các Use case của gói này
28
NguyÔn V¨n Hêng - Líp 47PM1
Trang 29Hình 11: Biểu đồ Use case dịch vụ cho khác viếng thăm.
Article XIV BIỀU ĐỒ LỚP THỰC THỂ CỦA HỆ
Trang 31Hình 12: Biểu đồ lớp thực thể của hệ thống.
NguyÔn V¨n Hêng - Líp 47PM1
Trang 32Article XV BIỂU ĐỒ TUẦN TỰ VÀ BIỂU ĐỒ CỘNG
TÁC
Ý nghĩa của biểu đồ tuần tự
Miêu tả các đối tượng tương tác và giao tiếp với nhau như thế nào
Giao tiếp giữa chúng là các thông điệp
Biểu đồ tuần tự nhấn mạnh đến trình tự thời gian của các thông điệp đượcchuyển qua lại giữa các đối tượng
Ý nghĩa của biểu đồ cộng tác
Miêu tả tương tác giữa các đối tượng nhưng tập trung chủ yếu vào việc tổchức cấu trúc của đối tượng gửi và nhận thông điệp
Tập trung vào các sự kiện hoặc thông điệp tương tác giữa các đối tượng
32
NguyÔn V¨n Hêng - Líp 47PM1
Trang 33Section XV.1 Login package
Section XV.2 Biểu đồ lớp cho chức năng đăng nhập và đăng ký
Cho biết mối quan hệ giữa các đối tượng thuộc lớp (Hình 13)
Hình 13: Biểu đồ lớp cho chức năng đăng nhập và đăng ký thành viên
Section XV.3 Biểu đồ tuần tự cho chức năng đăng nhập
Biểu đồ tuần tự đăng nhập miêu tả tuần tự quá trình đăng nhập vào hệ thống củathành viên website
Vào giao diện đăng nhập của hệ thống thì thành viên nhập vào “Tên đăng nhập” và
“Mật khẩu” của mình và nhấn nút “Đăng nhập” Hệ thống sẽ kiểm tra tính hợp lệ của
“Tên đăng nhập” và “Mật khẩu” sau đó sẽ trả về kết quả của quá trình đăng nhập cho
NguyÔn V¨n Hêng - Líp 47PM1
Trang 34người dùng Người dùng sẽ nhận được thông báo đăng nhập thành công hoặc đăngnhập có lỗi bởi lý do nào đó.
Nhìn vào biểu đồ dưới đây (Hình 14 - nhìn từ bên trái sang bên phải và từ trênxuống) ta sẽ thấy trình tự lần lượt các bước của quá trình đăng nhập hệ thống
Tác nhân tham gia là User
Lớp giao diện là Login-Boundary hiển thị giao diện đăng nhập
Lớp điều khiển Login-Control điều khiển quá trình đăng nhập
Lớp thực thể Users thao tác với cơ sở dữ liệu
Hình 14: Biểu đồ tuần tự cho chức năng đăng nhập
Section XV.4 Biểu đồ cộng tác cho chức năng đăng nhập
Biểu đồ này tập trung chủ yếu vào cấu trúc của đối tượng gửi và nhận thông điệpcủa quá trình login và các sự kiện, các thông điệp tương tác giữa các đối tượng nhưhình 15
34
NguyÔn V¨n Hêng - Líp 47PM1
Trang 35Hình 15: Biểu đồ cộng tác cho chức năng đăng nhập.
Article XVI Biểu đồ tuần tự cho chức năng đăng ký
Biểu đồ tuần tự đăng ký thành viên miêu tả tuần tự quá trình đăng ký làm thànhviên của hệ thống
Vào giao diện đăng ký thành viên của hệ thống thì khách viếng thăm website nhậpvào các thông tin bắt buộc: “Tên đăng nhập”, “Mật khẩu”, “Nhập lại mật khẩu” và
“Email” Ngoài ra điền thêm các thông tin khác không bắt buộc là: “Chọn tỉnh/thànhphố”, “Nhập số điện thoại”, ”Chọn các sở thích về xe ô tô” của mình và nhấn nút
“Đăng ký” Hệ thống sẽ kiểm tra tính hợp lệ của các thông tin nhập vào Nếu thông tinnhập vào không xuất hiện lỗi thì hệ thống sẽ thông báo đăng ký thành công và lúc đóngười dùng có thể đăng nhập vào hệ thống website Nếu có lỗi trong quá trình đăng kýthì hệ thống sẽ thông báo lỗi và yêu đăng ký lại
Nhìn vào biểu đồ dưới đây (Hình 16 - nhìn từ bên trái sang bên phải và từ trênxuống) ta sẽ thấy trình tự lần lượt các bước của quá trình đăng ký làm thành viên củawebsite
Tác nhân tham gia là khách viếng thăm website
Các lớp: Register-Boundary (lớp giao diện), Register-Control (lơp điều khiển),Users (lớp thực thể)
NguyÔn V¨n Hêng - Líp 47PM1
Trang 36Hình 16: Biểu đồ tuần tự chức năng đăng ký thành viên.
36
NguyÔn V¨n Hêng - Líp 47PM1
Trang 37Section XVI.1 Biểu đồ cộng tác cho chức năng đăng ký
Hình 17 biểu diễn gửi nhận thông điệp giữa các đối tượng trong quá trình đăng kýthành viên
Hình 17: Biểu đồ cộng tác cho chức năng đăng ký thành viên
NguyÔn V¨n Hêng - Líp 47PM1
Trang 38Section XVI.2 Feedback package
Section XVI.3 Biểu đồ lớp cho chức năng góp ý
Biểu đồ lớp gói Feedback ( Hình 18 ) cho biết các thao tác của tác nhân với lớp củagói Feedback
Hình 18: Biểu đồ lớp cho chức năng gửi thư góp ý tới ban quản trị website
Section XVI.4 Biểu đồ tuần tự cho chức năng gửi góp ý
Biểu đồ tuần tự hoạt động gửi góp ý cho biết tuần tự quá trình gửi góp ý tới banquản trị website
Vào giao diện gủi góp ý thành viên nhập vào các thông tin bắt buộc: “Tiêu đề”,
“Người gửi”, “Email” và “Nội dung” sau đó nhấn nút “Gửi” Hệ thống sẽ kiểm tra tính
38
NguyÔn V¨n Hêng - Líp 47PM1
Trang 39hợp lệ của các thông tin nhập vào Nếu thông tin nhập vào không xuất hiện lỗi thì hệthống sẽ thông báo góp ý đã gửi thành công Nếu có lỗi trong quá trình đăng ký thì hệthống sẽ thông báo lỗi và mở cửa sổ cho thành viên gửi lại.
Nhìn vào biểu đồ dưới đây (Hình 19 - nhìn từ bên trái sang bên phải và từ trênxuống) ta sẽ thấy trình tự lần lượt các bước của quá trình gửi góp ý tới ban quản trị củawebsite
Tác nhân tham gia là User
Các lớp: Feedback-Boundary (lớp giao diện), Feedback -Control (lơp điềukhiển), FeedBack (lớp thực thể)
Hình 19: Biểu đồ tuần tự cho chức năng gửi thư góp ý
NguyÔn V¨n Hêng - Líp 47PM1
Trang 40Section XVI.5 Biểu đồ cộng tác cho chức năng gửi góp ý
Hình 20: Biểu đồ cộng tác cho chức năng gửi thư góp ý
Section XVI.6 Biểu đồ tuần tự cho chức năng xóa góp ý
Biểu đồ tuần tự cho hoạt động xóa (Hình 21) cho biết quá trình một góp ý được yêucầu xóa và hệ thống sẽ thực hiện xóa đi như thế nào
Tác nhân tham gia là Admin
Các lớp: Feedback-Boundary (lớp giao diện), Feedback -Control (lơp điềukhiển), FeedBack (lớp thực thể)
Hình 21: Biểu đồ tuần tự cho chức năng xóa thư góp ý
40
NguyÔn V¨n Hêng - Líp 47PM1