T_KIOT_ONLINE PK ID NAME FK1 KIOT_TYPE_ID VALID_FROM VALID_TO STATUS T_KIOT_TYPE PK ID NAME TYPE T_CATEGORY PK,FK2 ID FK1 KIOT_ID NAME DESCRIPTION PARENT_ID DEPTH INDEX T_PRODUCT PK ID NAME PRICE DESCRIPTION LONG_DESCRIPTION T_CATEGORY_PRODUCT PK ID FK1 CATEGORY_ID FK2 PRODUCT_ID T_PRODUCT_TYPE PK ID NAME DESCRIPTION T_ATTRIBUTE PK TYPE ID NAME DISPLAY_NAME DEFAULT_VALUE IS_REQUEST IS_FILTER T_PRODUCT_TYPE_ATTRIBUTE PK ID FK1 PRODUCT_TYPE_ID FK2 ATTRIBUTE_ID FK2 TYPE T_PRODUCT_ATTRIBUTE PK ID FK1 PRODUCT_ID FK2 PRODUCT_TYPE_ID VALUE T_ACCOUNT PK ID FK1 USER_ID USERNAME PASSWORD T_USER PK ID FIRST_NAME LAST_NAME EMAIL FAX PHONE ADDRESS COMPANY_NAME ROLE_ID TYPE FK1 KIOT_OWER_ID T_ORDER PK ID FK1 USER_ID ORDER_NUMBER TOTAL SUB_TOTAL SHIPPING_COST DATE REQUIRE_DATE SHIPED_DATE SHIP_VIA SHIP_NAME SHIP_ADDRESS SHIP_CITY SHIP_REGION SHIP_PORTAL_CODE SHIP_COUNTRY SHIP_PHONE T_ORDER_ITEM PK ID FK1 ORDER_ID FK2 PRODUCT_ID SUM_PRODUCT TOTAL_PRICE DISCOUNT T_CONTACT PK ID FK1 KIOT_ID FK2 USER_ID PRICE NUMBER DATE Hình 3.30: Thiết kế database
CHƢƠNG 4
TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ 4.1. Lựa chọn môi trƣờng phát triển
4.1.1. Lựa chọn ngôn ngữ lập trình
Java là một công nghệ có tính cách mạng cho việc phát triển ứng dụng trên nền web. Phát triển các ứng dụng mạng hiện nay cũng nhƣ trong tƣơng lai có các đặc điểm nổi bật sau:
Không phụ thuộc vào môi trƣờng phát triển và triển khai ngƣời dùng có thể cài đặt trên các hệ điều hành khác nhau nhƣ: window, Linux …
Khi phát triển Java ứng dụng có khả năng mở rộng cao. Mã thực thi hiểu quả.
Dễ cài đặt.
Nhiều thƣ viện hỗ trợ khi trong quá trình phát triển. Tính phổ biến trên phát triển phần mềm.
Nhiều nhà cung cấp hosting.
Java là ngôn ngữ hƣớng đối tƣợng rất mạnh đƣợc hỗ trợ tất cả các cơ sở dữ liệu nhƣ: Oracle, SQL server, MySQL …Java có môi trƣờng lập trình thân thiện với nhiều công cụ cần thiết cho việc xây dựng các dự án lớn vừa và nhỏ.
Từ các lý do trên mà tôi lựa chọn ngôn ngữ Java cho phát triển ―hệ thống cho thuê kiot trên nền web‖.
4.1.2. Lựa chọn MVC
Struts là một mẫu thƣ viện MVC trong Java phục vụ phát triển các ứng dụng Web. Struts giải quyết rất nhiều các vấn đề liên quan đến các ứng dụng Web hƣớng nghiệp vụ đòi hỏi hiệu năng cao khi sử dụng Java. Việc lựa chọn Struts với lý do sau:
Struts là một mô hình MVC phổ biến và nhiều nhà phát triển sử dụng nhất để xây dựng ứng dụng web cùng Java.
Struts hỗ trợ nhiều thẻ giúp phát triển giao diện rất tiện lợi.
Hỗ trợ các điều khiển tốt dùng để xử lý các việc thao tác với các luồng nghiệp vụ.
-
Hình 4.1: Mô hình MVC cùng Struts
4.1.3. Lựa chọn mẫu Ajax
DWR là một thƣ viện Ajax cho các dự án java với cấu trúc thƣ viện RPC cho phép gọi các lớp Java từ JavaScript và ngƣợc lại gọi các hàm JavaScript từ Java (Reverse Ajax).
Hỗ trợ Java đồng bộ với javascript.
Hỗ trợ nhiều thƣ viện giúp triển khai giao diện trên web cùng Ajax. Hỗ trợ các thƣ viện Ajax khác nhƣ JQuery, Prototype.
4.2. Triển khai hệ thống
Database Server
Client : Web browser
KiotDatabase h tt p 1. Window Server 2008 2. Java 1.6 3. Tomcat 6 1. Window Server 2008 2. MySQL Server 5.x Webserver KiotSystem.war
Hình 4.3: Tiến trình làm mịn thiết kế POAD Để triển khai hệ thống yêu cầu các thành phần sau
Một máy chủ đƣợc cài đặt hệ điều hành Window server 2008 hoặc Linux và cài đặt môi trƣờng Java 1.6.x. cùng với một ứng dụng máy chủ cho Java ví dụ: Tomcat, Jboss, Orion …Trên đó đƣợc cấu hình ứng dụng hệ thống Kiot với 3 gói chức năng chính sau: Website cung cấp cho các gian hàng, Hệ thống quản trị gian hàng thuê của doanh nghiệp, hệ thống quản trị ứng dụng.
4.3. Môt số chức năng hệ thống
4.3.2. Chức năng đăng ký gian hàng
4.3.3. Chức năng quản lý giỏ hàng
4.4. Đánh giá kết quả thử nghiệm chƣơng trình
Để xây dựng hệ thống một cách hoàn chỉnh thực hiện đầy đủ các chức năng yêu cầu trong thực tế đòi hỏi rất nhiều công sức và cần phải có một thời gian dài. Trong thời gian qua tác giả đã tìm hiểu bài toán, tiến hành xây dựng hệ thống và bƣớc đầu đã đạt đƣợc những kết quả tƣơng đối khả quan với việc xây dựng xong một số chức năng chính của hệ thống đặt ra, đã chạy thử nghiệm trên máy tính cá nhân và triển khai một số chức năng tại địa chỉ website www.alomua.vn. Những kết quả đạt đƣợc là đáng khích lệ.
Qua thời gian chạy thử nghiệm thực tế trên mạng cho thấy chƣơng trình thực hiện đƣợc các chức năng đăng ký gian hàng, bán sản phẩm, quản lý bán hàng, xử lý đơn hàng khá thuận tiện và tiện ích cho ngƣời dùng:
Doanh nghiệp cá nhân có thể đăng ký và thuê kiot online một cách thuận tiện. Doanh nghiệp có thể quảng bá và bán sản phẩm của mình trên mạng.
Các cá nhân có thể mua các sản phẩm thông qua gian hàng.
Một số khách hàng đƣợc khuyến mại dùng thử và cho đánh giá tốt.
Hạn chế khi triển khai:
Hiểu biết của doanh nghiệp về công nghệ thông tin còn hạn chế.
Việc đăng tin và quản lý gian hàng của doanh nghiệp còn chƣa thật sự đơn giản cho ngƣời dùng. Khi dùng khách hàng vẫn cần sự trợ giúp của bên phát triển. Giao diện cung cấp cho doanh nghiệp bán hàng còn chƣa phong phú và đa dạng.
KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN
Kết luận
Theo yêu cầu của bài toán đặt ra, luận văn đã đạt đƣợc các kết quả sau:
Giới thiệu tổng quan về phát triển phần mềm hƣớng mẫu, giới thiệu các đặc điểm phát triển phần mềm hƣớng mẫu từ đó đánh giá đƣợc nhƣng mặt mạnh và hạn chế của phát triển phần mềm hƣớng mẫu.
Trình bày các bƣớc triển khai phát triển phần mềm với định hƣớng mẫu từ pha phân tích và thiết kế.
Giới thiệu tổng quan một số mẫu phổ biến đang đƣợc áp dụng rộng rãi khi phát triển phần mềm và vận dụng cho xây dựng ứng dụng kiot.
Mô tả nghiệp vụ của hệ thống cho thuê kiot trên nền web từ đó phân tích yêu cầu và thiết kế hệ thống với các mẫu đã giới thiệu và lựa chọn.
Triển khai hệ thống đã phân tích và thiết kế trên internet và đƣa vào kinh doanh thử nghiệm tại địa chỉ www.alomua.vn. Bƣớc đầu đƣợc các khách hàng đánh giá tốt. Tuy nhiên còn một số mặt hạn chế.
Hƣớng phát triển trong tƣơng lai
Trong thời gian tới, việc hòan thiện và phát triển hệ thống đƣợc xây dựng hƣớng vào những nội dung sau:
Triển khai liên kết với hệ thống ngân hàng cho phép thanh toán trực tuyến. Mỗi gian hàng hỗ trợ nhiều ngôn ngữ hiển thị khác nhau giúp doanh nghiệp
quảng bá sản phẩm của mình rộng rãi trên internet không chỉ thu hẹp ở thị trƣờng Việt Nam.
Cho phép gian hàng tùy biến nhiều hơn về giao diện bằng việc áp dụng nhiều hơn nữa công nghệ Ajax và áp dụng các mẫu cùng Ajax để phát triển.
Triển khai gói tƣơng tác trao đổi giữa khách hàng và doanh nghiệp, khách hàng với khách hàng tạo ra một không gian thân thiện nhƣ: chat, gửi thông báo, bình luận.
Triển khai gói báo cáo cho doanh nghiệp về tình hình bán hàng với từng loại hàng và nhóm hàng khác nhau theo từng quý từng năm.
Triển khai gói dự báo hỗ trợ bán hàng cho doanh nghiệp đƣa ra các dự báo về tình hình bán sản phẩm theo từng thời điểm trong năm căn cứ vào tình hình bán sản phẩm của các năm trƣớc đó.
TÀI LIỆU THAM KHẢO
Tiếng Việt
1. Trần Đan Thƣ, Huỳnh Thụy, Bảo Trân, Áp dụng mẫu thiết kế trên nền web, Trƣờng Đại Học Khoa Học Tự Nhiên - ĐHQG-HCM, Tạp Chí phát triển KH&Cn tập 10 số 11-2007.
Tiếng Anh
2. Sherif M. Yacoub, Hany H. Ammar, ―Pattern-Oriented Analysis and Design: Composing Patterns to Design Software Systems‖, Addison Wesley.
3. C. Baron and B. Weil, ―Implementing a web shopping cart‖, Dr. Dobbs Journal, September 1996, 64-69 and 83-85.
4. G. Bollinger and B. Natarajan, ―Build an e-commerce shopping cart‖, Java Pro, June 2000, 38-50.
5. P.Coad, "Object models: Strategies, patterns, and applications" (2nd Edi- tion),Yourdon Press, 1997.
6. Conallen, Building Web Applications with UML, Addison-Wesley, 1999.
7. E.B.Fernandez and X.Yuan, ―An analysis pattern for reservation and use ofenti- ties‖, Procs. of Pattern Languages of Programs Conf. (PLoP’99).
8. E.B.Fernandez, X.Yuan, and S.Brey, ―An analysis pattern for the order andship- ment of a product‖, Procs.of Pattern Languages of Programs Conf. (PLoP’2000), 9. E.B. Fernandez and X. Yuan, ―Semantic Analysis patterns‖, Procs. Of
10. E. Addy, A. Mili, & S. Yacoub. "A Case Study in Software Reuse." Software Quality Journal, 8 (3): 169–195, November 1999.
11. P. Alencar, D. Cowan, D. German, K. Lichtner, C. Lucena, & L. Nova. "A Formal Approach to Design Pattern Definition & Application." Technical Report, TR#CS- 95-34, University of Waterloo, Ontario, Canada, 1995.
12. C. Alexander. The Timeless Way of Building. Oxford [Alexander et al. 1977] C. Alexander, S. Inshikawa, M. Silverstein, M. Jacobson, I. Fiksdahl-king, & S. An- gel. A Pattern Language. Oxford University Press, New York, 1977.
13. A. Alexandrescu. Modern C++ Design; Generic Programming and Design Pat- terns Applied. Addison-Wesley, Boston, 2001.
14. E. Algerbo & A. Cornils. "How to preserve the benefits of Design Patterns." Pro- ceedings of Object-Oriented Programming, Systems, Languages and Applications, OOPSLA '98, pp. 134–143, 1998.
15. R. Allen & D. Garlan. "A Formal Basis for Architectural Connection." ACM Transaction on Software Engineering and Methodology, 6(3): 213–249, July 1997.
16. R. Allen & S. Frost. Component-Based Development for Enterprise Systems: Ap- ply the SELECT Perspective. SIGS Books/Cambridge University Press, New York, 1998.
17. O. Altamura, F. Esposito, & D. Malerba. "WISDOM++: An Interactive and Adap- tive Document Analysis System." Proceedings of the Fifth International Confe- rence on Document Analysis and Recognition, pp. 366–369, IEEE Computer So- ciety Press, Los Vaqueros, CA, 1999.
18. E. Anderson & T. Reenskaug. "System Design by Composing Structures of Inte- racting Objects." Proceedings of the 6th European Conference on Object Oriented Programming, ECOOP '92, Springer LNCS 615, pp. 133–152, Utrecht, Nether- lands, June/July 1992.
19. L. Bass, P. Clements, & R. Kazman. Software Architecture in Practice. Addison- Wesley Longman, Boston, 1998.
20. D. Batory & S. O'Malley. "The Design and Implementation of Hierarchical Soft- ware Systems with Reusable Components." ACM Transaction on Software Engi- neering & Methodology, 1(4): 355–398, 1992.
21. K. Beck & R. Johnson. "Patterns Generate Architectures." Proceedings of the 8th European Conference on Object Oriented Programming, ECOOP '94, Springer LNCS 821, pp. 139–149, Bologna, Italy, July 1994.
22. K. Bergner, A. Rausch, & M. Sihling. "Componentware—The Big Picture." The 1998 International Workshop on Component-Based Software Engineering, in con- junction with the 20th International Conference on Software Engineering, ICSE '98, Kyoto, Japan, May 1998.
23. G. Booch. Object-Oriented Analysis and Design with Applications. Benja- min/Cummings1994.
24. G. Booch. Object Solutions: Managing the Object-Oriented Project. Addison- Wesley, Boston, 1996.