BO GIAO DUC & DAO TAO CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
ĐẠI HỌC DL KỸ THUẬT CÔNG NGHỆ TP.HCM ĐỘC LẬP ~ TỰ DO - HẠNH PHÚC
144/24 Điện Biên Phủ - Q Bình Thạnh — TP.HCM o0o
ĐT : 5120254 - 5120294 - ` „
NHIỆM VỤ THỰC HIỆN ĐỒ ÁN TỐT NGHIỆP
Kha à«eeeeeeceeeeereee Chú ý : Sinh viên phải dán bản nhiệm vụ này vào trang thứ nhất
trong tập báo cáo đồ án tốt nghiệp !
Họ và tên : Tôn Thất Minh Lộc c2osecscccee MSSV : TH2_099
Họ và tên : Nguyễn Văn 'Thảo occsSccccceererkee MSSV : TH2_103
Ngành : Công nghệ thông tỉn ieree Lớp : 01TH21
1 Đầu để đồ án tốt nghiệp :
Ứng dụng công nghệ JSP & Servlet xây dựng ứng dụng web để hỗ trợ qui trình bán hàng,
thu chỉ và nhập xuất tồn kho cho công ty FPT
2 Nhiệm vụ :
a Dữ liệu ban đầu :
e _ Hệ thống thông tin (1S) hiện có tại công ty EPT
e Các qui trình bán hàng của công ty EPT
b Nội dung :
»> Phần tìm hiểu công nghệ :
o_ Tìm hiểu công nghé Java Servlet va JSP
o Tim hiéu web server Tomcat Jakarta
o_ Tìm hiểu công cụ phân tích thiết kế hệ thống hướng đối tượng UML
> Phần phân tích, thiết kế & xây dụng ứng dung mỉnh họa :
Phân tích, thiết kế hệ thống thông tin và xây dựng ứng dựng Web site giới
thiệu sản phẩm và hổ trợ việc bán hàng qua mạng, thu chỉ và tổn kho cho công
Trang 2
28/02/2005
4 Ngày hòan thành nhiệm vụ :
21/05/2005
Nội dung và yêu cầu để án tốt nghiệp đã thông qua GIÁO VIÊN HƯỚNG DẪN CHÍNH
TP.HCM, ngày thẳng năm 2003 (Ký và ghỉ rõ họ tên)
Trang 3
BO GIAO DUC VA DAO TAO
TRUONG DAI HOC DAN LAP KY THUAT CONG NGHE
KHOA CONG NGHE THONG TIN
ko sở oF
LUẬN VĂN TỐT NGHIỆP
XÂY DỰNG HỆ THỐNG QUẢN LÝ DỊCH VỤ
BÁN HÀNG QUA MẠNG VÀ THU CHI NHẬP XUẤT TỒN KHO HÀNH HÓA
Nhóm Sinh viên thực hiên:
1 Tôn Thất Minh Lộc TH2_099
2 Nguyễn Văn Thảo TH2_103
TRUONG DHOL ~K TC Ni GVAD: NGO THỊ BÍCH PHƯỢNG
THU VIEN |
Số 10400111 | 4 TP.HO CHi MINH
Nam 2005
Trang 4BỘ MÔN: a’ ^~“ a A z nw A
PHIEU CHAM DIEM DO AN TOT NGHIỆP
(Dành cho giáo viên hướng dẫn)
"Sa ắốốD Mã số SV: cuc
"1"
TT Công việc Thang
điểm
1 | Mức độ thời sự của đổ án, mức độ khó của đồ án /1.5
2 | Tinh ding dan và hợp lý của thiết kế, của giải pháp được nêu ra trong đồ án /4.5
Mức độ hòan thành công việc của sinh viên
3 | Tỉnh thần và thái độ làm việc: chăm chỉ, cần cù, nghiêm túc và tinh thân tự lập /1.5
trong khi làm việc
4 | Khả năng đọc sách ngoại ngữ tham khảo 10.5
5 | Khả năng tổng hợp kiến thức, viết báo cáo /1.0
6 | Hình thức trình bày báo cáo 10.5
7 | Thdi gian hoan thành vànộp báo cáo 10.5
Điểm tổng cộng: /10 _ Điểm bằng chữ: "— `
(Ghi chú: Điểm phải được làm tròn theo qui tắc làm tròn số học
Giáo viên hướng dẫn
(Ký và ghỉ rõ họ tên)
Trang 5TRƯỜNG ĐHDL KỸ THUẬT CÔNG NGHỆ KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN: .iiiiiiree we ~“ 2 A> ^Z ^
PHIEU CHAM DIEM DO AN TOT NGHIEP (Dành cho giáo viên hướng dẫn)
II 0n Mã số SV: -ce TO G6 1 3
TT Công việc Thang
điểm
1] Mức độ thời sự của đồ án, mức độ khó của đồ án 1.5 2_| Tính đúng đắn và hợp lý của thiết kế, của giải pháp được nêu ra trong đỗ án /4.5
Mức độ hòan thành công việc của sinh viên
3 | Tinh thần và thái độ làm việc: chăm chỉ, cần cù, nghiêm túc và tinh thần tự lập /1.5
trong khi làm việc
4 | Kha nang đọc sách ngoại ngữ tham khảo /0.5
5 | Khả năng tổng hợp kiến thức, viết báo cáo /1.0
6 | Hình thức trình bày báo cáo 10.5
7 | Thời gian hoàn thành vànộp-báo cáo 10.5
Điểm tổng cộng: /10 — Điểm bằng chữ: s.~cnrnrsrrxrrrererrrrrrkrrki
(Ghi chú: Điểm phải được làm tròn theo qui tắc làm tròn số học)
Trang 8FARRAR AAR AU AAPA LOI M6 DAU
Bán hàng qua mạng là một trong những phương thức kinh doanh và
quảng bá sản phẩm mà các doanh nghiệp sản xuất và thương mại đã và
đang áp dụng khá thành cơng trên tồn thế giới hiện nay Cùng với Tài chính và Marketing, bán hàng qua mạng là một trong những loại hình kinh doanh mang lại hiệu quả khá thành công cho doanh nghiệp Bán hàng qua
mạng ảnh hưởng trực tiếp đến kết quả hoạt động kinh doanh của doanh
nghiệp
Trong nền kinh tế thị trường, để có được lợi nhuận các doanh nghiệp
cạnh tranh với nhau về chất lượng, giá cả và thời gian Vì thế việc áp dụng
phương thức kinh doanh bán hàng qua mạng nhằm tiết kiệm các chi phi trong kinh doanh và làm tăng sức cạnh tranh sản phẩm cho doanh nghiệp
Chính vì thế, các doanh nghiệp sản xuất kinh doanh cần phải tiến hành tổ chức, xây dựng, áp dụng tin học vào lĩnh vực quần lý sản xuất kinh doanh
song song với quản trị doanh nghiệp hầu nắm bắt, cập nhật những thông tin mới nhất có liên quan để kịp thời xử lý các hoạt động phát sinh trong quá
trình sản xuất kinh doanh, đồng thời đáp ứng đủ, nhanh và mang tính kinh tế
trước những yêu cầu ngày một đa dạng của thị trường
Mục đích của để tài là xây dựng Hệ thống tin học hoá nhằm đáp ứng
được vấn đề: “kinh doanh mọi lúc mọi nơi” Trong luận văn này chúng em đã sử dụng ngôn ngữ UML (Umjfied Miodeling Language —- Ngôn ngữ mô
hình hợp nhất) là một công cụ “chuyên biệt” để phân tích và triển khai theo
qui trình phát triển phần mềm Raiional Rose, trên cổ sở lưu trữ dữ liệu data
base 14 MS SQL 2000 và thực hiện trên chương trinh Java JSP & Servlet
Trang 9— LOI CAM ON nn PENIS PPP PIP III IVI POA IIAP IVI A UL, jae
Trong suốt quá trình học tập cũng như khi thực hiện luận văn này, chúng em đã được sự giúp đỡ rất lớn từ Khoa công nghệ thông tin - Trường ĐH dân lập kỹ thuật công nghệ TP.HCM, lòng nhiệt tình cùng sự tận tâm yêu nghề của
các Thầy Cô Bên cạnh đó là sự trợ giúp, lòng thương mến, sự chia sẻ và cảm
thông của người thân và bè bạn đã là nguồn động viên, khuyến khích, hỗ trợ chúng em rất nhiều để có kết quả ngày hôm nay
Trước hết chúng em rất cám ơn Khoa công nghệ thông tin và các Thầy Cô đã tạo mọi điều kiện thuận lợi nhất để chúng em có thể đạt được những kiến
thức vững chắc làm nền tảng cho việc hoàn thành tốt luận văn cũng như để áp
dụng trong công việc sau này,
Chúng em xin chân thành cảm ơn Cô Ngô Thị Bích Phượng, mặc dù Cô
rất bận bịu với công tác giảng dạy tại trường, ấy thế mà Cô đã không quản ngại về
mổ kiến thức còn bập bẹ và non nớt của chúng em, đã tận tình hướng dẫn, chỉ bảo
ic
và ủng hộ chúng em hoàn thành luận văn này
Chúng em xin kính chuyển đến Ban Lãnh đạo và toàn thể các Anh, Chị
trong Công Ty Chỉ nhánh giải pháp phần mềm thuộc Công ty cổ phần phát |
triển đầu tư công nghệ FPT lòng biết ơn sâu sắc cùng những tình cảm chân thành
và niềm kính phục Các Anh, Chị đã giúp đỡ phương tiện, tạo điều kiện thuận lợi, dẫn dắt và truyền đạt kiến thức cùng những kinh nghiệm quý báu để chúng em thực hiện và hoàn thành luận văn này
Chúng tôi mong muốn gửi lời cảm ơn đến tất cả những người thân và bạn
bè — nhất là những bạn bè và các Anh, Chị trong công ty chỉ nhánh giải pháp
phần mềm - đã luôn động viên, giúp đỡ chúng tôi một cách nhiệt tình và vô tư trong suốt quá trình học tập, thực tập và hoàn thành luận văn Chính những bức xúc, thắc mắc, sự sẻ chia cùng niềm đam mê học hỏi của các Anh, Chị và các bạn đã là sự khuyến khích thật mạnh mẽ để chúng tơi hồn tất luận văn này một cách
tốt đẹp nhất
tất cả những Quý Vị trên đây, vì không có họ thì luận văn của nhóm không thể hoàn thành một cách suông sẻ như thế này
TP.Hồ Chí Minh, Tháng 5 năm 2005
Nhóm thực hiện Luận văn
Một lần nữa, nhóm thực hiện luận văn này hết sức trân trọng thịnh tình của
LATATIA AA RADTAATAARARARATLAR ALAA AAA AR AR ARPA AAR AAA AR ARARARARAR RRA A ARAL
Trang 10
MỤC LỤC va ĐI œ Nhận xét của Giáo viên hướng dẫn Lời mở đầu Lời cảm ơn Mục lục Trang LOG MG 0 1 08/8 2
Phần I: Giới thiệu và lựa chọn công nghệ - 5555 sscreeererree 3
Chương I: Cơ sở lựa chọn đề tài và công nghệ triển khai đề tài 4 LT Lua chon 78 4
1I Lựa chọn công nghỆ - à Sàn s41 12 kg 4
Chương II: Giới thiệu khái quát một số công cụ thực hiện hệ thống 6
con 0ì 7n 6
Il Giới thiệu về JSP/Servlet - 5-55 rsirserrres 7 Ill Giới thiệu về SQL Server 2000 c2 ccseekeereree 11
IV Giới thiệu về UML, . -55S+5Strteeeeereerersrreree 15 Chương IHII: Giới thiệu công ty FPT - eihehHHaHreieeeeeeerexe 18
Phần II: Triển khai ứng dụng -. -55- 55c ssScserereeerre 23
Chương I: Mô hình secase và hiện thc SCQĐ5 .ũ côcseeeeeeeeeereee 24
I Tổng quan mô hình se case - :-cc+s+ccsssterrererrrer 24
Trang 116 Use case <<Chon hang de mua>> - nành 28 T Use case <<LOBOP>> - chen 441.12 me rth 31 8 Use case <<Dat hang truc tuyen>> (Checkout) 31 II Hién thuc Use case trong gói Online syst€m 33
1 Lược đồ cộng tác và tuần tự trong Use case <<Duyet xem
hang hoa>>- . sc sen nehehtnrertrerirrirriiirrireririrrrerer 35
2, Lược đổ cộng tác và tuần tự trong Úse case <<Chon hang de iìr >5 37 3 Lược đổ cộng tác và tuần tự trong Use case << Dat hang (TÚC †UY€TĐ> cành HH 11812101119 39 4 Lược đổ cộng tác và tuần tự trong Use case << Dang Ky W0 1> .ố ố 40
IV Lược đổ Use case trong gói Management system 41 1 Actor <<Logistic Manager>> -cc+eeeehnrherrerrrrrrr 41 2 Actor <<AccOounfanfS>> che he nh 41 3 Use case <<Xu ly danh MUCH> cece ereeeereseeeneeneeneens 41 4 Use case << Xu ly OnlineOrder >> .cceece esses reset eserseees 46 5 Use case << Xu ly phieu nhap >> eceseesssceseeeeeeseeeeeneeens 48
6 Use case << Lap phieu thu >> - - sen 52
7 Use case << Lap phieu chỉ >> - set 53 V Hiện thực Use case trong gói Management system 54
1 Lược đồ cộng tác và tuần tự trong Use case <<Xu ly danh
i5 55
2 Lược đổ cộng tác và tuần tự trong se case <<Xu ly phieu nhap>> à cà chen the 01221101111101nn01rre 58
Trang 12Chương II: Thiết kế cơ sở đữ liỆU vec ececceseceseseneneteeeeteeeetetensesteeneeaeseeeenenennes 64
I Mô hình đối tượng (Object Model) -c-cccccccee 64
1 Lược đổ lớp của Mô hình đối tượng . - 64
2 Danh sách các Đối tượng và các thuộc tính của các Đối 002010777 — ố 64 II Mô hình đối tượng đữ liệu (Data Model) 70
1 Lược đồ Đối tượng dữ liệu (Data Model Diagram) 70
2 Các Bảng dữ liệu và đặc tả của bảng dữ liệu 71
Ill Lược đồ quan hệ và các bảng dữ liệu vật lý 79
0718/87 /888888nnEE 81
1 Lược đồ gói các thành phần lớp của ứng dụng 81
2 Lược đồ lớp ứng dụng ShoppingCart - - -s>c++ 82 3 Lược đổ lớp tham gia cau tao trang home page 82
4 Lược đổ lớp thể hiện các lớp tham gia vào quá trình tạo danh sách các hàng hóa và duyệt xem chi tiết hàng hóa 83
5 Lược đồ lớp thể hiện các lớp tham gia vào quá trình tìm kiến các hàng hóa theo yêu cầu và duyệt xem chỉ tiết hàng hóa 84
6 Các lớp tham gia vào qúa trình bổ sung hàng hóa vào Shopping Cart và sửa đổi nội dung Shopping Cart 85
7 Lược đồ lớp trang chuẩn bị đặt hàng : :+-+>tse+ 86 § Lược đổ lớp thể hiện trang lấy thêm thông tin đơn đặt hàng và tạo mới đơn hàng khách hàng đã đặt . 87
9 Lược đồ lớp trang đăng ký người dùng . - 88
10.Lược đổ lớp trang login -¿ -scsesesrerersrsrirrrrirrrrrier 88 11.Quan hệ giữa Lớp Header và các Lớp hiển thị giao diện 89
12.Lược đổ Lớp ứng dụng Quản Lý hỗ trợ Nhập-Xuất hàng 009 01 90
Chương IV: Chương trình ứng dụng web .-eằeehiererrerrrrrer 118 II.) , he 118
Trang 13Phần IH: Nhận xét và Kết luận -. -:- -552c+=+setterrersrrerrrerrre 161 TL 08 c1 162 II — Các hướng phát triển trong tương lai - - 162 IẮnãn‹ 5 .4 163 I7 80 164
1 Môi trường cài đặt - ch 1.116 165
Trang 14
LỜI MỞ ĐẦU
Internet phát triển một cách vượt bậc, từ mục đích phục vụ nghiên
cứu đã mở rộng ra cho lĩnh vực toàn cầu về thương mại Các nhà khoa học có thể sử dụng Internet để tìm kiếm tài liệu và thảo luận với nhau Học sinh, sinh viên có thể tìm kiếm các tài liệu, phần mềm phục vụ cho việc học tập,
giải trí Các nhà kinh doanh sử dụng Internet như một phương tiện để quảng
cáo, giao dịch thương mại Những người bình thường có thể sử dụng Internet để xem tin tức và mua hàng
Nhằm giảm thiểu việc lưu thông trên đường phố, giảm thiểu tiếng ổn,
ô nhiễm môi trường mọi người có thể vừa làm việc vừa mua hàng mà không phải đi đâu cả, điều này phục vụ cho mọi người có thể làm và nghiên
cứu đạt kết quả tốt hơn Và bài toán “Xây dựng hệ thống quản lý dịch vụ bán
hàng qua mạng và thu chỉ nhập xuất hàng hóa” là một thể hiện những ý
tưởng trên để phục vụ cho xã hội trong tương lai gần đây Đề tài gỗm hai phân:
e_ Phần một; Giới thiệu và lựa chọn công nghệ e Phần hai: Triển khai ứng dụng
Trang 15
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
YÊU CẦU CỦA ĐỀ TÀI
1 Về mặt ứng dung:
Xây dựng hệ thống phục vụ bán hàng trên mạng, trong đó hệ thống cho phép khách hàng đăng ký vào xem và thực hiện việc mua hàng trực
tuyến trên mạng Mỗi khách hàng sẽ có một account riêng trong hệ thống,
họ có thể chọn lựa các mặt hàng có sẵn trên hệ thống, thay đổi những đơn
đặt hàng của khách hàng thông qua hệ thống Đối với những khách hàng vào hệ thống để mua hàng, hệ thống phải hỗ trợ sao cho khách hàng có thể
tìm kiếm, chọn và đặt hàng một cách dễ dàng Khi khách hàng đặt mua sản
phẩm, hệ thống sẽ chuyển đơn đặt hàng này đến dịch vụ bán hàng Việc
giao và nhận hàng được quản lý trực tiếp trên mạng sau khi khách hàng đã
điển đầy đủ các thông tin cân thiết để mua hàng
Đối với công ty hệ thống sẽ cho phép các nhân viên cập nhật, quản
lý, theo đõi việc bán hàng qua mạng, thu chi và nhập xuất tồn kho hàng hóa
2 Về mặt kỹ thuật:
Bài toán đòi hỏi hệ thống phải có những khả năng về kỹ thuật như sau:
Ứng dụng triển khai trên môi trường Web
Hỗ trợ nhiều hệ điều hành (cho phía client và cả server)
Hỗ trợ nhiều trình duyệt (như IE, Netscape ) Hỗ trợ nhiều người dùng
Dung lượng:
s_ Số lượng người truy xuất: không giới hạn
s_ Số lượng công ty/dịch vụ: không giới hạn
" Số lượng sản phẩm tối đa cho mỗi công ty/dịch vụ: không giới hạn 3 Một số yêu cầu khác: Ngoài các yêu cầu trên, ứng dụng có thể: e_ Hỗ trợ tiếng Việt e Dễ dàng cài đặt e Dé dang sử dụng
e Dé dang nang cap và mở rộng
Như vậy, trước những yêu cầu của bài toán đặt ra như trên, ta cần khảo
sát công nghệ và lựa chọn giải pháp thích hợp để có thể triển khai ứng dụng
theo yêu cầu của bài toán
Trang 17
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
CHƯƠNG 1: CƠ SỞ LỰA CHỌN ĐỂ TÀI VÀ CÔNG
NGHỆ TRIỂN KHAI ĐỀ TÀI
I Liva chon dé tai:
Cùng với sự phát triển mau lẹ của Internet và hệ thống mạng toàn
cầu, việc mua bán trực tuyến trên mạng đã và đang trở nên sôi động trên
phạm vi cả thế giới lẫn trong khu vực ASEAN Ở nước ta vấn để này vẫn
còn là một lĩnh vực khá mới mẽ Tuy nhiên cũng “không thể né tránh “
trong xu thế hội nhập khu vực và tồn cầu
Cơng ty Cổ Phần Phát Triển Đầu Tư Công Nghệ FPT được xem là đơn vị có doanh số cao nhất VN hiện nay và là công ty tin học hàng đầu tại VN Kinh doanh chủ yếu của Công ty là các hàng hóa, dịch vụ thuộc lĩnh
vực tinh học và các hàng hóa thuộc lĩnh vực viễn thông Các showroom của công ty được trãi dài khắp các quận huyện trong TPHCM và các tỉnh thành
để phục vụ cho việc kinh đoanh của mình Công ty đã đầu tư lớn vào các trang web để quảng bá về Công ty, tuy nhiên cũng chỉ mới dừng lại ở việc
quảng bá và giới thiệu chứ chưa có trang web nào bán hàng trực tuyến cả Do nhu cầu phải phát triển thị trường và đáp ứng ngày càng cao nhu
cầu của khách hàng, Công ty cần có trang web bán hàng trực tuyến Trang
web này cần đáp ứng các nhu cầu cơ bản sau:
œ Khách hàng có thể vào xem và mua sản phẩm trực tiếp qua mạng Cho phép Công ty quản lý việc xuất hàng hóa kịp thời theo đơn đặt hàng của khách hàng, Thu chỉ tiền bán hàng đối với các hoạt động bán hàng qua mạng
« Cho phép Công ty quản lý việc nhập hàng hóa để phục vụ nhu cầu bán hàng qua mạng, thực hiện được giao dịch thanh toán tiền mua
hàng cho nhà cung cấp đối với các hàng hóa được sử dụng để bán
hàng qua mạng
Định hướng trong tương lai của Công ty là sẽ thành lập một bộ phận riêng biệt chuyên trách mọi hoạt động kinh doanh qua mạng
II Lựa chọn công nghệ:
Với nhu cầu để tài được nêu trên, nhóm thực hiện để tài quyết định lựa
chọn công nghệ JSP/Servlet lam nén tang để triển khai hiện thực đề tài; do các ưu điểm sau:
% Công nghệ JSP là một cách tiếp cận mở: Công nghệ JSP được thiết
kế độc lập với nên tảng hệ điều hành và Web Server, được xây dựng với sự hỗ trợ rộng rãi của nhiều nhà cung cấp công cụ, cung cấp Web server và hệ điều hành cơ sở dữ liệu
Trang 18
s% Độc lập hệ điều hành và Web Server: Công nghệ JSP trung thành với
triết ký “Write Once, Run Anywhere” Thay vì gắn với một môi trường
xác định, công nghệ JSP có thể triển khai trên bất kỳ Web Server nào và
được hỗ trợ bởi rất nhiều nhà cung cấp khác nhau
s* Hỗ trợ cho người phát triển: JSP cung cấp các thành phần dựa trên
công nghệ JavaBean và các nhãn JSP
* Khả năng dùng lại với đa nền
Dễ duy trì: Các ứng dụng JSP dễ dàng duy trì hơn các ứng dụng ASP Bởi ASP sử dụng các ngôn ngữ scrip, đây là ngôn ngữ hoạt động tốt cho
những ứng dụng nhỏ, còn Java là ngôn ngữ có cấu trúc nên Java là ngôn ngữ lý tưởng để xây dựng và duy trì những ứng dụng có quy mô lớn Hơn
nữa vì công nghệ JSP là một kiến trúc mở, đa nên, độc lập với Web
Server, hệ điều hành và các thành phần khác Nên có thể dễ dàng nâng cấp hay chuyển đổi Điều này làm cho JSP thích hợp hơn với thế giới thực, nơi mà sự biến đổi luôn diễn ra
Để tìm hiểu mô hình hoạt động cũng như quá trình xây dựng một ứng dụng có tính chất thương mại điện tử trực tuyến, chúng em xin giới thiệu đề
tài “Xây đựng hệ thống quản lý dịch vụ bán hàng qua mạng, thu chỉ, nhập
xuất và tôn kho hàng hóa” là đề tài nghiên cứu cho luận văn tốt nghiệp này
Với lượng thời gian hạn chế, việc tìm hiểu và xây dựng một ứng dụng
trên công nghệ Java (một công nghệ hoàn toàn mới) đối với chúng em rất khó khăn Do đó, ứng dụng này chỉ đừng ở mức minh họa, khó có thể áp
dụng vào thực tế Dù vậy, ứng dụng cũng đã triển khai được phần lớn các yêu cầu chính mà một ứng dụng thương mại điện tử cần đáp ứng Chúng em hy vọng rằng sẽ học được nhiều kinh nghiệm hơn sau để tài này Đồng thời,
có được nhiễu ý kiến nhận xét quý báu của quý thầy cô và các anh chị đi
trước
Trang 19
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
CHƯƠNG II: GIỚI THIỆU KHÁI QUÁT MỘT SỐ CONG CU THUC HIEN HE THONG
I Giới thiệu Java:
Thập kỷ 90 chứng kiến một sự phát triển như vũ bão của mạng
Internet, kèm theo đó là vô vàn các ứng dụng trên các môi trường, hệ điều hành (OS) và các hệ xử lý (CPU) khác nhau Tuy nhiên có một
điểm hạn chế lớn là người lập trình phải rất vất vả khi chuyển đối các
ứng dụng của mình để các hệ thống khác có thể sử dụng được
Ngày 23/5/1995, công ty máy tính Sun Microsystems đã giới thiệu
một công cụ lập trình mới - ngôn ngữ Java - nhằm khắc phục những khó
khăn đó Đặc điểm nổi bật nhất của Java là nó không phụ thuộc vào hệ
điều hành và bộ xử lý Điều này cho phép một ứng dụng viết bằng Java có thể được thực hiện trên bất kỳ hệ điều hành và hệ xử lý nào có hỗ trợ lava Do vậy, người lập trình chỉ cần viết ứng dụng bằng Java đúng
một lần, sau đó có thể sử dụng ứng dụng này trên các hệ điều hành khác nhau nhu Windows95, WindowsNT, Mac OS, Unix, theo phương
châm: "viết một lần, sử dụng ở bất kỳ đâu"
Có thể định nghĩa một cách chính xác hơn về Java: "là ngôn ngữ lập
trình hướng đối tượng, được thiết kế độc lập với hệ điều hành, cho phép người lập trình viết chương trình một lần và có thể sử dụng tại bất kỳ
đâu"
Không chỉ giới thiệu ngôn ngữ lập trình, Sun Microsystems còn đưa ra
hàng loạt công cụ hỗ trợ người lập trình phát triển các ứng dụng bằng
Java, nhu Java Developer Kit, JavaBeans, HotJava
Ngôn ngữ Java có cú pháp rất giống với ngôn ngữ C/C++ (là một
ngôn ngữ rất mạnh được dùng phổ biến hiện nay), tuy nhiên nó đã được
thay đổi khá nhiều để đáp ứng khả năng độc lập với hệ điều hành Nền
tang của ngôn ngữ Java là cdc class Cac class déng vai trò như những đối tượng, người lập trình khi xây dựng ứng dụng sẽ sử dụng một số class chuẩn của hệ thống, đồng thời có thể tự mình xây dựng c/ass khác
đáp ứng yêu cầu công việc
Java là ngôn ngữ dễ học, nó lược bớt những lệnh thừa và rườm rà của
C/C++ để người lập trình chú trọng vào việc viết chương trình Đồng
Trang 20thời, nó còn hạn chế người lập trình không can thiệp quá sâu vào hệ
thống
Hiện nay Java được ứng dụng rất rộng rãi, chủ yếu là các ứng dụng được viết trên Internet nhằm khai thác tối đa khả năng của nó trong lĩnh
vực viễn thông, truyền hình, mạng, và các máy tính đơn lẻ Hiện tại các
ứng dụng viết bằng Java khi thực hiện còn chậm hơn so với các ứng
dụng được xây dựng thông thường, tuy nhiên hầu hết các nhà phát triển
phần mềm đều cho rằng tốc độ sẽ được cải thiện và Java sẽ là ngôn ngữ lập trình của tương lai
Có thể nói rằng sự ra đời của Java đánh dấu một cuộc cách mạng mới
trong lĩnh vực Công Nghệ Thông Tin Cuộc cách mạng này kéo theo
một loạt những thay đổi: các ứng dụng dẫn được thay thế bằng Java, các
thế hệ máy tính sử dụng những vi mạch có khả năng hỗ trợ Java, Làm
quen với Java sẽ giúp chúng ta tiếp cận được với những công nghệ mới
nhất của Công Nghệ Thông Tin
HH Giới thiêu JSP/@Servlet:
Java Server Pages (JSP) là sự mở rộng của công nghệ JavaServlet,
một thành phần trong chuẩn J2EE của Sun Với JavaServlet, bạn phải xử lý đầu vào HTTP và đầu ra HTML trong lớp Java, bạn cần có kiến thức lập trình để xây dựng các ứng dụng phức tạp Với JSP bạn có thể tách riêng lớp hiển thị HTML ra khỏi lớp Java xử lý nghiệp vụ phức tạp Điều
này có nghĩa là người phát triển có kinh nghiệm ngôn ngữ kịch bản, hay
thậm chí người thiết kế web có thể viết mã lệnh hiển thị đơn giản, trong khi người phát triển có kiến thức về Java tập trung viết JavaServlet hay
JavaBean đề giải quyết các nghiệp vụ phức tạp
Tương tự ASP, JSP cũng thực hiện phép trộn nội dung HTML tĩnh với mã lệnh kịch bản thực thi ở môi trường server để tạo ra kết quả động JSP dùng ngôn ngữ kịch bản mặc định là Java; tuy nhiên theo đặc tả kỹ thuật thì cũng có thể dùng các ngôn ngữ khác JSP có ưu điểm so với
ASP là sau lần thực thi đầu tiên thì mã biên dịch (Servlet) của trang JSP được lưu lại trong bộ nhớ của máy chủ web và sẵn sàng đáp ứng cho các
yêu cầu truy cập sau đó (trang ASP/VBSCRIPT hay Asp/jscript phai
được dịch lại với mỗi yêu cầu) Lợi thế của ISP là sử dụng được toàn bộ
sức mạnh của ngôn ngữ Java với các tính năng uyến chuyển, chạy được
trên nhiều nên tảng hệ thống và máy chủ web, mã lệnh hướng đối tượng,
bảo mật an toàn
Trang 21
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
Hiện chưa có nhiều dịch vụ đặt web hỗ trợ JSP Tuy Java miễn phí nhưng các công cụ phát triển Java và phần mềm máy chủ Java khá đắt Các công cụ phát triển trang JSP tốt là Borland Jbuilder, IBM
WebSphere Studio Một số phần mềm máy chủ Java hỗ trợ JSP miễn phí
nhu Tomcat, JONAS
Servlet được phát triển dựa trên những điểm mạnh của Java platform
nhằm giải quyết vấn để của CGI và trình chủ server API Nó là một API đơn giản hỗ trợ tất cả các Web server và thậm chí các ứng dụng máy chủ
dùng để kiểm tra và quản lý các công việc trên server (load -balancing)
Nó giải quyết vấn để thực thi bằng việc thực hiện tất cả các yêu cầu như
những thread trong một xử lý, hoặc trên một hệ thống load-balancing sẽ là mỗi xử lý trên một server trong kết chùm cluster Các servlet dễ dàng chia sé tai nguyên
Trong định nghĩa servlet, bảo mật được cải tiến theo nhiễu cách
Trước hết, hiếm khi thực thi lệnh trên shell với dữ liệu cung cấp bởi người dùng khi Java API đã cung cấp truy cập đến tất cả những hàm sử dụng thông dụng Có thể sử dụng lavaMail để đọc và gởi mail, Java
DataBase Connect (DBC) để truy cập các database, lớp File và những
lớp quan hệ để truy cập hệ thống file, RMI, CORBA, Enterprise lava
Beans (EJB) để truy cập các hệ thống kế thừa
Servlet thật sự là một mẫu chương trình viết bằng ngôn ngữ Java được trình chủ Web triệu gọi sản sinh ra kết quả kết xuất phù hợp trả về
cho trình khách
Cơ chế hoạt động của Servlet :
Trình khách gửi lệnh HTTP GET (hay POST ) lên máy chủ yêu cầu
địch vụ Web (HTTP Web Service ) cung cấp một tài nguyên Tài nguyên mà trình khách yêu cầu có thể là một tập tin (.html hay hình ảnh ) Tài nguyên cũng có thể ở dạng thông tin động do servlet sinh ra
Nếu bạn yêu cầu tài nguyên là một tập tin, trình chủ Web Server sẽ
dùng một chương trình servlet nhỏ gọi là File Servlet đọc nội dung tập
tin trên đĩa cứng sau đó trả về cho trình khách Nếu bạn yêu cầu một
trình servlet khác (user servlet ) thực thi để sinh ra thông tin động thì sử
dung Invoker Servlet triệu goi servlet ma ban mong muốn Kết quả sinh ra sau đó cũng sẽ được gửi về trình khách tương tự như cơ chế đọc tài nguyên trên đĩa cứng mà File Servlet thực hiện
“+ So sanh giifa JSP va Servlet :
Đặc tả JSP cung cấp rất nhiều thẻ cho phép người dùng tuỳ biến khi
nhúng lệnh Java trong trang JSP Các thẻ này sẽ kết hợp với các lệnh
hay thẻ chuẩn HTML để tạo ra kết xuất cuối cùng trả về trình khách
Trang 22
Các chức năng của trang JSP hoàn toàn giống với servlet tuy nhiên bạn không cần phải biên dịch trang JSP bằng tay Trình chủ Web server sẽ thực hiện công việc này hộ bạn Như vậy, viết trang JSP đơn giản hơn
viết servlet Nếu đem so sánh bạn sẽ thấy rằng, khi viết servlet bạn phải tự tạo đối tượng luồng xuất java.io.PrintWriter out = resp.getWriter ( ); để kết xuất kết quả trả về cho trình khách Trong khi đó nếu viết trang JSP thì không cần phải thực hiện điều này Bộ diễn dịch JSP đã tạo sẵn
đối tượng out cho bạn sử dụng Thật ra thì trang JSP được biên dịch thành
servlet phía sau hậu trường, kết xuất của trang JSP thật ra là kết xuất của servlet Tuỳ theo mỗi trình chủ khác nhau mà sẽ có các tập tin diễn dịch jsp ra servlet khác nhau Theo cơ chế của JSP, bạn không cần phải quan tâm đến những tập tin phụ này Nếu bạn xoá các tập tin này đi,
trình chủ sẽ tự động tạo mới lại Theo cơ chế này thì trang JSP có thể
phải thực hiện chậm hơn servlet thuần tuý, nhưng chỉ là lân đầu khi trang
JSP được biên dịch Ở lần triệu gọi kế tiếp từ máy khách, trình chủ
không cần dịch lại trang JSP nữa (trừ khi có thay đối nội dung trang JSP)
Mã JSP lúc này là mã Java nhị phân (byte-code) được gọi thực thi trực
tiếp Chính vì lý do này, trang jsp xét về tốc độ sẽ nhanh hơn hẳn các trang web thực hiện cơ chế dién dịch như asp (Active Server Page) cuả
Microsoft hay pl của trình CGI Perl Đây là lý do mà đề tài chọn công nghé JSP
Viết trang JSP đơn giản hơn viết Servlet và bạn hoàn toàn có thể tận
dụng mọi chức năng của Servlet bên trong trang JSP Tuy nhién ,servlet
thường được xem như những đối tượng thành phần (component ) nhúng vào trình chủ (tương tự đối tượng ActiveX hay COM của Microsoft ) Chính vì vậy servlet thường được dùng cho các chức năng xử lý phức tạp như: giao tiếp với Applet phía trình khách, thực hiện bảo vệ tài nguyên,
chứng thực mật khẩu Trong khi đó trang JSP được dùng cho các thao
tác truy xuất hay xử lý đơn giản như trình bày giao diện, định dạng trang HTML, triệu gọi các thành phần JavaBean hay servlet khác Như vậy,
kết hợp JSP và Servlet là cách tốt nhất khi bạn chọn phát triển ứng dụng Web bằng Java phía máy chủ
Các thẻ lênh của JSP -
JSP cung cấp các thẻ lệnh giúp tạo trang web Cũng tương tự như thẻ
HTML, thẻ lệnh JSP bao gồm thẻ mở và thẻ đóng Thực sự các thẻ JSP được xây dựng theo đặc tả và chuẩn XML ( Extension Markup Language ) nên có hơi khác với thẻ HTML vì chuẩn XML không xem chữ hoa và
Trang 23
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
Thẻ này cho phép đặt các đoạn mã lệnh Java ở giữa cặp thẻ tương
tự một chương trình java thông thường
b- Thẻ khai báo và thực hiện biểu thức <%!, <%=:
Thẻ này dùng để khai báo một biến dùng cho toàn trang jsp Biến
khai báo phải đúng theo cú pháp của ngôn ngữ lava Thẻ <%= được dùng để hiển thị một biểu thức
c- Thẻ nhúng mã nguồn <%®@ include file %>:
Với thể này có thể nhúng một trang html vào trang jsp hiện hành
Thẻ này tương tự chỉ dẫn #include trong ngôn ngữ C Cú pháp đầy du ctia thé nay 14 :<%@ include file = “URL or FilePath “ %>
d- Thé chi dan bién dich trang <%@ page %>:
Thẻ này chỉ dẫn một số tính chất biên dịch áp dụng cho toàn trang
jsp Có thể sử dụng thẻ này để khai báo các thư viện import của java, chỉ định tuỳ chọn trang jsp có cần giữ trên cache bộ nhớ của trình chủ
để tăng tốc hay không
e- Thẻ chuyển hướng <jsp:forward>:
Thẻ này giúp chuyển hướng trang Web sang địa chỉ khác Ví dụ
khi xử lý trang nhận dữ liệu đăng nhập (login page ) bạn kiểm tra mật
khẩu, nếu hợp lệ bạn chuyển người dùng đến trang tài nguyên cho phép truy cập Nếu không hợp lệ, bạn chuyển người dùng đến trang thông báo lỗi
f- Thẻ sử dụng thành phần Bean <jsp:useBean>:
Bạn có thể tự tạo các lớp đối tượng Java và triệu gọi chúng từ bên
trong trang jsp Hướng theo công nghệ thành phần (component ) Java gọi những đối tượng có thể gắn vào những ứng dụng là thành phần Bean
g- Thé dat thudc tinh cho Bean <jsp:setProperty>:
Thẻ này được sử dụng để triệu gọi một phương thức nào đó của
Bean
h- Thẻ lấy thuộc tính của Bean <jsp:getProperty>:
Ngược với thẻ <jsp:setProperty, thể <jsp:getProperty> dùng để lấy
về nội dung của một thuộc tính
Các đối tương mặc định của trang JSP :
e Trang diễn dịch JSP cho phép sử dụng một số đối tượng đã khai báo trước Điều này giúp viết mã lệnh trong trang jsp nhanh
hon servlet
e Đối tượng out: xuất phát từ lớp PrintWriter Bạn có thể sử dụng đối tượng này để định dạng kết xuất gửi về máy khách Ví
dụ:<% out.println(“Result”+7*3;%>
Trang 24
e Đối tượng request: xuất phát từ lớp HttpServletRequest.Đối tượng này giúp lấy về các tham số hay dữ liệu do trình khách
chuyển lên
e Đối tượng response: tương tự đối tượng out, đối tượng response
dùng để đưa kết xuất trả về trình khách Tuy nhiên, đối tượng
out được dùng thường xuyên hơn Out hỗ trợ thêm luồng đệm để
tăng tốc kết xuất
e Đối tượng session: xuất phát từ lớp HttpSesssion Sử dụng đối tượng session để theo dõi kết nối và lưu vết một phiên làm việc giữa trình khách và trình chủ
s* Truy xuất cơ sở dữ liệu trong trang JSP :
Có thể dễ dàng dùng trình JDBC để truy xuất cơ sở dữ liệu của hệ quản trị cơ sở dữ liệu SQL Server
II Giới thiệu SOQL Server phiên bản 2000 (Struture Query
Language):
1 Tổng quan:
Vào những năm 1970, hãng IBM đã phát minh ra ngôn ngữ máy
tính được thiết kế đặc biệt dùng cho việc truy vấn cơ sở đữ liệu được
gọi là SEQUEL (Structured English Query Language) Theo thời gian, ngôn ngữ này đã được bổ sung dần đến mức nó không chỉ là một ngôn ngữ dùng cho truy vấn mà còn có thể tạo ra các cơ sở dữ liệu và luầẩn
lý tính năng báo mật của hệ thống cơ sở dữ liệu IBM đã công bố
SEQUEL rộng rãi, và nó được biết đến với tên gọi là SQL
Microsoft — SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ mạnh có tính mở, đáng tin cậy, là hệ quản trị cơ sở đữ liệu theo mô hình Client/Server và có thể dễ dàng phát triển theo mô hình dữ liệu phân tán
Microsoft — SQL Server cung cấp đây đủ các công cụ để:
- Dễ dàng xây dựng một cơ sở dữ liệu quan hệ lớn mỗi cơ sở dữ liệu có
thể chứa 2 tỷ quan hệ và mỗi quan hệ có thể chứa đến 1024 thuộc tính
- Giải quyết tình trạng va chạm giữa các user khi cùng truy xuất một dữ
liệu tại cùng một thời điểm
- Bảo đảm các ràng buộc toàn vẹn trên cơ sở dữ liệu
- Bảo vệ an toàn cơ sở đữ liệu (quản lý nhiều mức độ để truy cập vào cơ
sở dữ liệu)
Trang 25
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
- Truy vấn dỡ liệu nhanh
2 Những vấn đề mới so với các phiên bản 6.X: v v v Tự động quản lý việc cấp phát bộ nhớ hoạt động (Memory) và vùng nhớ (Disk Space):
Khi sử dụng các phiên bản 6.X trở về trước để xây dựng cơ sở đữ liệu
(CSDL - Døabase) trên SQL Server ta phải thực hiện lần lược các công việc:
Tạo Data Device để chứa các đữ liệu của các Database
Tạo Log Device dùng làm nơi diễn ra các giao dịch (Transaction) cia
Database
Tao Database voi Data Device chứa dữ liệu và Log Device nơi diễn ra các giao dịch
Để nó làm việc tốt ta cần phải ước lượng trước và xác định kích
thước vùng nhớ cho Data Device, Log Device sao cho chúng có thể đáp ứng tốt yêu cầu của các Database liên quan Tuy nhiên, trên thực
tế việc cấp phát tối ưu là rất khó khăn, và nếu xảy ra việc các Device
bị đầy thì các hoạt động đối với các Database liên quan sẽ bị gián đoạn Việc quần trị CSDL trên SQL 2000 dễ dàng hơn bởi nó tự động quản lý việc cấp phát bộ nhớ hoạt động (Memory) và vùng đĩa lưu trữ dữ liệu (Disk Space)
SQL Server 2000 có thể tự động tăng và giảm số lượng Memory và
Disk Space theo yêu cầu, nó tích hợp chặt chẽ với hệ điều hành và
căn cứ vào các đòi hỏi về tranh chấp hệ thống mà nó có thể sẽ tự
động tăng số Handle khi Database tăng hoạt động và tự động giảm
khi mức độ hoạt động của Database giảm
SQL Server 2000 sử dụng các tập tin hệ điểu hành (Operation
Sysfem Files) thay vì như trước đây sử dụng các Device để chứa các Database
V6i SQL Server 2000 ta dé dang:
Trang 26v v v v v
Đăng ký Server, tạo các Database, các Table, các chỉ mục, các Stored Procedure, các trang Web, v.v và tính năng đặc biệt hơn hẳn
SQL Server 6.X là nó giúp dễ dàng thực hiện các thao tác import, export dữ liệu
Cung cấp công cụ giao diện đỗ hoạ phân tích các câu lệnh dùng truy vấn dữ liệu
Có thể cài đặt trên môi trường Windows 9X & 2K (các SQL Server 6.X
chỉ có thể chạy trên môi trường Windows NT) Cải thiện khả năng làm việc với cơ sở dữ liệu lớn
Hỗ trợ OLE DB (Object Linking and Embedding DataBase — Nhúng và liên kết đối tượng cơ sở đữ liệu)
Hỗ trợ kỹ thuật data Warehouse 3 Các thành phần của SỌL Server 2000: v v v v v v v v Books — Online: công cụ cung cấp thông tin dùng để tra cứu toàn diện về SQL Server 2000
Client network Utility: céng cụ dùng để thiết lập, tham khảo các cấu
hình mạng: giao thức truyền của client, các đường dẫn tham khảo đến
thư viện
Enterprise Manager: thanh phan chinh cia SQL Server ding dé: + Quản trị cdc database
+ Tạo Database và các thành phần bên trong database
+ Đăng ký làm việc với các SQL Server khác
Từ thành phần này ta có thể gọi thực hiện các thành phần khác của
SQL Server
Import and Export Data: céng cu hé trợ cho phép dễ dàng thực hiện
việc chuyển đữ liệu từ ngoài vào SQL Server và từ SQL Server ra, dữ liệu bao gồm các dạng Database, PreadSheet và Text File
Microsoft Distributed transaction Coordinator Administrative Console:
quan ly điểu phối các giao dịch phân tán
SQL Server Performance Monitor: ding dé biểu diễn các tiến trình đang thực hiện của server
SQL Server Profiler: là công cụ dạng đồ hoạ cho phép thực hiện việc
theo dõi và thu thập thông tin về các biến cố (Evens) xẩy ra trên Server, bao gồm:
+ Việc kết nối và ngắt kết nối đến Server
+ Các xử lý được thực thi bởi các lô xi ly Transact — SQL
Trang 27Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng + Sự thi biểu thức bên trong các Stored Procedure + Các trạng thái DeadLock
+ Các lỗi được ghi nhận trong số ghi trên SQL Servers
¥ Query Analyzer: céng cu ding để thi hành các câu lệnh hoặc các tập tin chứa các câu lệnh SQL Với giao điện đôổ hoạ thể hiện các phân tích giá thành khhi thực hiện truy vấn dữ liệu
¥ Server Network Utility: céng cu ding dé thiét lập lại các cấu hình cho server và hiển thị các thông tin đường dẫn tham chiếu thư viện làm
viéc
v Service Manager: ding dé khdéi động, tạm dừng, hoặc kết thúc các phục vụ của SQL Server
Y Uninstall SQL Server 2000: công cụ dùng để thực hiện việc loại bỏ SQL Server 2000 đã được cài đặt
4 Ý nghĩa sử dụng của SQL Server trong một ứng dung:
Một ứng dụng có thể chia thành 3 phần chủ yếu sau: Thành phần giao diện Thành phần xử lý Ỳ Thanh phần dữ liệu
Thành phần giao diện: là thành phần được xây dựng với mục đích giao tiếp giữa người dùng với máy tính Bạn không thể sử dụng SQL Server để xây dựng thành phần này mà thông thường chúng được xây
dựng bởi Visual Basic, MS Access, V.V
Thành phần xử lý: là thành phần được xây dựng nhằm mục đích thực hiện các thao tác xử lý tính toán, cập nhật dữ liệu, xử lý tính toán
theo yêu cầu và trả về kết quả Các xử lý này tùy thuộc vào việc tính toán cân nhắc dựa trên cơ sở cấu hình phần cứng các máy client/server, cấu hình hệ thống mạng, tần suất cập nhật, phát sinh dữ liệu mà chúng sẽ được quyết định đặt ở client hay ở Server SQL
Sever với các đối tượng Trigger, Stored Procedure cho phép thực hiện các xử lý tại Server Đây cũng chính là một trong các yếu tố
Trang 28
khiến SQL Server khác biệt và hơn hẳn so với MS Access, Visual Foxpro
Thành phân đữ liệu: là nơi lưu trữ và quản lý dữ liệu chúng có thể
được xây dựng trên SQL Server
IV Gidi thiéu UML (Unified Modeling Language):
Đầu những năm 1980, ngành công nghệ phần mềm chỉ có duy nhất một ngôn ngữ hướng đối tượng là Simula Sang nửa sau của thập kỷ
1980, các ngôn ngữ hướng đối tượng như Smalltalk và C++ xuất hiện
Cùng với chúng, nảy sinh nhu cầu mơ hình hố các hệ thống phần mềm theo hướng đối tượng Và một vài trong số những ngôn ngữ mơ hình hố xuất hiện những năm đầu thập kỷ 90 được nhiều người dùng là: Grady
Booch’s Booch Modeling Methodology, James Rambaugh’s Object Modeling Technique — OMT, Ivar Jacobson’s OOSE Methodology,
Hewlett- Packard’s Fusion, Coad and Yordon’s OOA and OOD
Mỗi phương pháp luận và ngôn ngữ trên đều có hệ thống ky hiệu riêng, phương pháp xử lý riêng và công cụ hỗ trợ riêng, khiến nảy ra
cuộc tranh luận phương pháp nào là tốt nhất Đây là cuộc tranh luận khó
có câu trả lời, bởi tất cả các phương pháp trên đều có những điểm mạnh và điểm yếu riêng Vì thế, các nhà phát triển phần mềm nhiều kinh
nghiệm thường sử dụng phối hợp các điểm mạnh của mỗi phương pháp cho ứng dụng của mình Trong thực tế, sự khác biệt giữa các phương
pháp đó hầu như không đáng kể và theo cùng tiến trình thời gian, tất cả
những phương pháp trên đã tiệm cận lại và bổ sung lẫn cho nhau Chính hiện thực này đã được những người tiên phong trong lĩnh vực mơ hình
hố hướng đối tượng nhận ra và họ quyết định ngồi lại cùng nhau để tích
hợp những điểm mạnh của mỗi phương pháp và đưa ra một mô hình
thống nhất cho lĩnh vực công nghệ phần mềm 1 Sự ra đời của UML:
Trong bối cảnh trên, người ta nhận thấy cần thiết phải cung cấp
một phương pháp tiệm cận được chuẩn hoá và thống nhất cho việc mơ hình hố hướng đối tượng Yêu cầu cụ thể là đưa ra một tập hợp
chuẩn hoá các ký hiệu (Notation) và các biểu đồ (Diagram) để nắm
bắt các quyết định về mặt thiết kế một cách rõ ràng, rành mạch Đã
có ba công trình tiên phong nhắm tới mục tiêu đó, chúng được thực hiện dưới sự lãnh đạo của James Rumbaugh, Grady Booch va Ivar
Jacobson Chính những cố gắng này dẫn đến kết quả là xây dựng
Trang 29
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
được một Ngơn Ngữ Mơ Hình Hố Thống Nhất (Unifeld Modeling
Language — UML)
UML là một ngôn ngữ mơ hình hố thống nhất có phần chính bao gồm những ký hiệu hình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả các thiết kế của một hệ thống Nó là
một ngôn ngữ để đặc tả, trực quan hoá, xây dựng và làm sưu liệu cho
nhiều khía cạnh khác nhau của một hệ thống có nồng độ phần mềm
cao UML có thể được sử dụng làm công cụ giao tiếp giữa người
dùng, nhà phân tích, nhà thiết kế và nhà phát triển phần mềm Trong quá trình phát triển có nhiều công ty đã hỗ trợ và khuyến khích phát triển UML có thể kể tới như : Hewlett Packard, Microsoft,
Oracle, IBM, Unisys
2 UML (Unifield Modeling Language):
Ngôn ngữ mô hình hóa thong nhat (Unifield Modeling Language —
UML) là một ngô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ình hoá
»> Giải quyết vấn dé về mức độ thừa kế trong các hệ thống
phức tạp, có nhiều ràng buộc khác nhau
> Tạo một ngơn ngữ mơ hình hố có thể sử dụng được bởi người và máy
3 Phương pháp và các ngôn ngữ mơ hình hố:
Phương pháp hay phương thức (method) là một cách trực tiếp cấu
trúc hoá sự suy nghĩ và hành động của con người Phương pháp cho
người sử dụng biết phải làm gì, làm như thế nào, khi nào và tại sao
(mục đích của hành động) Phương pháp chứa các mô hình (model), các
mô hình được dùng để mô tả những gì sử dụng cho việc truyền đạt kết quả trong quá trình sử dụng phương pháp Điểm khác nhau chính giữa
một phương pháp và một ngôn ngữ mơ hình hố (modeling language)
Trang 30
là ngôn ngữ mô hình hố khơng có một tiến trình (process) hay các câu lệnh (nstruction) mô tả những công việc người sử dụng cần làm
Một mô hình được biểu điễn theo một ngôn ngữ mơ hình hố Ngơn ngữ mơ hình hố bao gồm các ký hiệu - những biểu tượng được dùng trong mô hình — và một tập các quy tắc chỉ cách sử dụng chúng Các
quy tắc này bao gồm:
> Syntactic (Cú pháp): cho biết hình dạng các biểu tượng và cách
kết hợp chúng trong ngôn ngữ
> Semantic (Ngữ nghĩa): cho biết ý nghĩa của mỗi biểu tượng,
chúng được hiểu thế nào khi nằm trong hoặc không nằm trong ngữ cảnh của các biểu tượng khác
> Pragmatic : định nghĩa ý nghĩa của biểu tượng để sao cho mục đích của mô hình được thể hiện và mọi người có thể hiểu được Ngày nay, phần lớn các hệ thống thông tin đều được phân tích, thiết
kế theo phương pháp hướng đối tượng và lập trình trên các ngôn ngữ
lập trình hướng đối tượng như Java, CỶ” Tuy nhiên dữ liệu lại thường
được lưu trữ trong các CSDL quan hệ Vì thế, việc chuyển đổi từ mô
hình UML(mô hình phân tích thiết kế hướng đối tượng thông dụng nhất) sang mô hình thực thể - mối quan hệ là một vấn đề rất cần thiết trong quá trình phát triển phần mềm Từ mô hình thực thể - mối quan
hệ có thể dễ dàng chuyển sang mô hình dữ liệu quan hệ Do sự đơn
giản của mô hình thực thể- mối quan hệ, một số thành phần và ký hiệu
của UML như các thao tác, tầm nhìn (visibiHty) của các lớp và một vài chú giải gắn Hển với vai trò của quan hệ được bỏ qua trong quá trình
chuyển đổi Tuy nhiên, các phần cốt lõi của biểu đổ lớp UML đều có thể được biểu diễn thông qua mô hình thực thể - mối quan hệ
Trang 31
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
CHƯƠNG III: GIỚI THIỆU CÔNG TY FPT
I Hình thức doanh nghiệp và tư cách pháp nhân:
Công ty Phát triển Đầu tư Công nghệ (FPT Corporation) là doanh
nghiệp nhà nước thuộc Bộ Khoa học Công nghệ và Môi trường được
thành lập theo QD sé 85 - 92 QDTC/ VCN
Ngày 28/02/2002 Thủ tướng chính phủ ký quyết định số 178/QĐ- TTg chính thức chuyển Công ty Phát triển Đầu tư Công nghệ FPT
thành Công ty Cổ phần Phát triển Đầu tư Công nghệ (FPT)
Ngày thành lập: Ngày 13 tháng 9 năm 1988 ĐIA CHỈ: Ẩ® Ha Noi: Tổng côngty: 89 Láng Hạ, Hà Nội Điện thoại: 84 4 856 0300 Fax: 84 4 856 2765 Công ty Giải pháp Phần Mềm: Toà nhà 51 Lê Đại Hành Quận Hai Bà Trưng, TP Hà Nội Điện thoại: 8449745476 Fax: 8449745475 wr TP HCM: Chi nhánh HCM 41 Sương Nguyệt Ánh, Quận 1 Điện thoại: 84-8-925 2545 Fax: 84-8-925 2546 „ Chi nhánh Giải pháp phẩn mềm tại TP.HCM 41 Sương Nguyệt Anh, Quan 1 Điện thoại: 84-8-925 2545 Fax: 84-8-925 5717 Chi nhánh Giải pháp phần mềm tại Đà Nẵng 178 Trần Phú, Q.Hải Châu, Đà Nẵng Điện thoại: 84-511-562 666 Fax: 84-511- 562 662 Website : Http://www.fpt.com.vn
BAN LANH DAO:
Tổng giám đốc: PGS.TS Trương Gia Bình
Giám đốc chi nhánh HCM: Ks Hoàng Minh Châu
Trang 32
CHỨC NĂNG KINH DOANH:
" Nghiên cứu, thiết kế, sản xuất chuyển giao hệ thống tích hợp công
nghệ thông tín
" Gia công xuất khẩu phân mềm và phát triển các sản phẩm tin học tại
Việt Nam
" Cung cấp dịch vụ Internet
" Xuất nhập khẩu ủy thác và kinh doanh các thiết bị, giải pháp công
nghệ trong viễn thông
Nghiên cứu phát triển sản xuất kinh doanh, tư vấn đầu tư chuyển giao công nghệ trong lĩnh vực môi trường
" Tư vấn đầu tư nước ngồi
® Dich vu đào tạo lập trình viên chuyên nghiệp
Trong đó lĩnh vực kinh doanh chủ yếu của công ty là lĩnh vực tin học và chuyển giao công nghệ
H Giới thiệu về Công ty giải pháp phần mềm - Cty FPT:
Công ty Giải pháp Phân mềm FPT (tên tiếng Anh là FPT Software
Solutions, gọi tắt là FSS) được thành lập và chính thức đi vào hoạt động
từ tháng 1/2004, trên cơ sở sát nhập 2 trung tâm chuyên làm phần mềm
cho thị trường nội địa của FPT tại Hà Nội và Thành phố Hỗ Chí Minh
Với việc thành lập này, FSS đã trổ thành 1 trong 6 Công ty chi nhánh của Tập đồn FPT
Cơng ty Giải pháp Phần mềm FPT chuyên cung cấp những giải pháp
hiệu quả trong các lĩnh vực Ngân hàng - Tài chính, Bộ Tài chính - Thuế - Kho bạc, Quản lý Doanh nghiệp, Chính phủ điện tử, Viễn thông, Bảo
hiểm - Y tế và Dầu khí Khách hàng của FSS chủ yếu là các cơ quan thuộc chính phủ và các doanh nghiệp lớn
Với mong muốn trở thành nhà tư vấn tin cậy của Khách hàng trong việc triển khai các giải pháp và dịch vụ phần mềm, Công ty Giải pháp
Phần mềm FPT có đội ngũ trên 300 nhân viên có trình độ, năng động,
tâm huyết trong lĩnh vực phần mềm Lập trình viên của công ty không
những giỏi về kỹ thuật mà còn nắm vững nghiệp vụ của khách hàng, đang trở thành những chuyên gia trong lĩnh vực Ngân hàng, Chứng
khoán, Quản lý Thuế, quản lý Doanh nghiệp, Viễn thông và Chính phi điện tử Đội ngũ nhân viên của Công ty Giải pháp Phần mềm FPT đang
Trang 34
+ GHICHÚ:
EIS: Công ty Hệ thống Thông Tin FPT
Chức năng chính : Kinh doanh dự án máy tính và thiết bị tin
học cho các cơ quan chính phủ, doanh nghiệp nhà nước, các ban nghành chức năng
* FOX: Công ty Truyền Thông FPT
Chức năng chính : Kinh doanh đường truyền và các dịch vụ
Internet
" _ FSS: Công ty Giải pháp Phần mềm FPT
Chức năng chính : Kinh doanh các sản phẩm và dịch vụ phần
mềm trong nước
FES: Trung tâm dịch vụ Tư vấn ERP FPT
Chức năng chính : Kinh doanh các sản phẩm và dịch vụ phần
mềm ERP trong nước
EDC: Công Ty Phân Phối FPT
Chức năng chính : Kinh doanh phân phối các sản phẩm và dịch
vụ máy tính tin học
" FMB: Công Ty Công Nghệ Di Động FPT
Chức năng chính : Kinh doanh phân phối các sản phẩm và dịch
vụ viễn thông
s FSOFT: Công Ty Phần Mềm EPT
Chức năng chính : Kinh doanh các sản phẩm và dịch vụ phần
mềm ngoài nước
s _ FAI: Học Viện Quốc tế FPT
Trang 36
SVTH: Tôn Thất Minh Lộc - Nguyễn Văn Thảo Trang 23
Trang 37Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng
CHƯƠNG I: MO HINH USE CASE VA HIEN THUC USE CASE
I Tổng quan mô hình Use case:
Kiến trúc mô hình Use case gồm có 2 gói chính:
Gói <<Online System>>: bao chứa các use cases mô tả các họat động
liên quan đến bán hàng qua mạng, mối tương tác giữa actor
<<Customers>> với các use case của hệ thống và quan hệ giữa các use cases
Gói <<Management System>>: chứa các use cases mô tả tương tác giữa actor <<LogisticManager>> với các use cases liên quan đến các hoạt động nhập xuất hàng hóa của công ty, và chứa các use cases mô tả tương tác giữa actor <<Accountants> > với các use cases liên quan đến các hoạt
động thu chỉ của công ty
Trang 38H Lược đồ Use Case trong gói Online System: Z ™~ _ <<extend>> cư CD Te DưetXem hang hoa, _ _,Xem chi tiet hang hoa — Ñ- 7 „ OQ ao <<extend>> <<extend>> ; aE ` eee Customers “~~ C P Z \ ¬ <<extend>> (fom Actors) i N \ SN Chon hang de mua , Ị XS ị N oN ccanenod i N ¬ : ae NX ~ NL C ` oO — NI » “7 — wee — Dang ky Thanh vien Dat hang truc tuyen ¬ Ỷ ự " _«<Include>> CS 3 Tìm kiem hang hoa QL Log on Hình 3 : Lượt đồ Use cases trong gói <<Online System>> 1 Actor <<Customers>>:
Khách hàng là những người sẽ dùng các trình duyệt web (Iexplorer,
Opera, Netscape ) dé tim kiém cdc thông tin về sản phẩm của công ty
thông qua mạng Internet, họ có thể đặt mua hàng hóa trực tiếp trên web
site của công ty nếu muốn
2 Use case <<Dang ky thanh vien>>:
Mỗi khách hàng muốn mua hàng qua web site của công ty thì phải
đăng ký thành viên Use case này cho phép khách hàng đăng ký làm
thành viên của công ty
Trang 39
Luận văn tốt nghiệp Giáo viên hướng dẫn: Ngô Thị Bích Phượng > Dòng các sự kiện: \
/“Ÿeu cau dang ` ⁄ ‘Hien thi yeu cau cung N
\ —————>t cap thong tin i SN“ ` a a no Cung cap thong N ee >> Kiem tra hop le \ tin ) ¬— = N yes / Ố Capnha ` \ \ / NL a ma /⁄⁄ Thong bao da `, @ ` ` €apnhat _— /
Hình 4 : dòng các sự kiện se case <<Dang ky thanh vien>>
PostCondifion: Sau khi đã đăng ký thành viên thì khách hàng được phép mua hằng
3 Use case <<Duyet Xem hang hoa>>:
se case này cho phép Khách hàng duyệt xem các hàng hóa mà công ty cung cấp Khách hàng có thể xem hàng hóa thông qua việc chọn một
mặt hàng từ bảng Hệt kê danh mục các mặt hàng, hệ thống sau đó sẽ liệt
kê danh sách các hàng hóa thuộc mặt hàng đó để khách hàng tìm đúng hàng hóa mà họ có yêu cầu
Trang 40
> Dòng các sự kiện: +
/ Duyet den trang `, / Hien thi danh muc ~,
\ P [men <4 cac mathang — )
\ HomePage J ok Seema han
/ Chon mot mat “=~ — _{ Hien thi danh sach cac san N
\ hang can xem TT ek pham cua mat hang da chon J <n / ¬ ‘, / NN / ¬
/ Chon mua mot >, / Chon xem chi >, - Z Hien thí chí tiet san ^,
\ _ san pham / \ tiet rn ‘ pham )
"——_ ` ⁄
TS -
.Chuyen sang Actidty Diagram: - an sf
| Chon hang de mua / Main Hinh 5: dong su kién Use case <<Duyet xem hang hoa>> i @
4, Use case <<Tim kiem hang hoa>>:
Use case này cho phép Khách hàng tìm kiếm hàng hóa mà họ quan
tâm thông qua một số các tiêu chuẩn mà họ cung cấp cho hệ thống, hệ thống sẽ tìm kiếm và hiển thị một bảng liệt kê các hàng hóa đáp ứng với các tiêu chuẩn đã được cung cấp
SVTH: Tôn Thất Minh Lộc - Nguyễn Văn Thảo Trang 27