Đề tài Tiếp cận và xây dựng ứng dụng e-Store theo công nghệ j2ee với rational rose và uml

Tìm hiểu phương pháp phân tích thiết kế ứng dụng theo hướng đối tượng bằng ngôn ngữ UML.  Tiếp cận công nghệ J2EE trong việc xây dựng ứng dụng đa tầng, phân tán.  Tiếp cận đặc tả EJB, công nghệ JSP, Servlet, của kiến trúc J2EE.  Xây dựng ứng dụng demo các công nghệ nói trên.  Minh họa cách sử dụng Rational Rose.

pdf32 trang | Chia sẻ: lvbuiluyen | Lượt xem: 2046 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Đề tài Tiếp cận và xây dựng ứng dụng e-Store theo công nghệ j2ee với rational rose và uml, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Trang 1 TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐẠI HỌC THỦY SẢN NHA TRANG KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Chuyên ngành Công nghệ thông tin Đề tài: TIẾP CẬN VÀ XÂY DỰNG ỨNG DỤNG E-STORE THEO CÔNG NGHỆ J2EE VỚI RATIONAL ROSE VÀ UML Sinh viên thực hiện: LÊ QUANG DUNG Giáo viên hướng dẫn: Thầy NGUYỄN THANH TÙNG Trang 2 Mục đích của đồ án Tìm hiểu phương pháp phân tích thiết kế ứng dụng theo hướng đối tượng bằng ngôn ngữ UML. Tiếp cận công nghệ J2EE trong việc xây dựng ứng dụng đa tầng, phân tán. Tiếp cận đặc tả EJB, công nghệ JSP, Servlet, … của kiến trúc J2EE. Xây dựng ứng dụng demo các công nghệ nói trên. Minh họa cách sử dụng Rational Rose. Trang 3 Nội dung Phần I : Giới thiệu công nghệ  Chương 1. Giới thiệu về phân tích và thiết kế hướng đối tượng với UML  Chương 2. Giới thiệu về kiến trúc J2EE Phần II: Phát triển ứng dụng  Chương 3. Phân tích mô tả yêu cầu trường hợp người dùng và kịch bản ứng dụng.  Chương 4. Thiết kế thành phần.  Chương 5. thiết kế hiện thực hoá các use case.  Chương 6. Thực hiện cài đặt và triển khai ứng dụng. Trang 4 Chương 1. Giới thiệu về phân tích và thiết kế hướng đối tượng với UML Các khái niệm cơ bản của hướng đối tượng  Đối tượng (Object)  Lớp (Class)  Thuộc tính (Atribute)  Thao tác (Operation)  Giao tiếp–đa hình (Interface - Polymorphimse)  Thành phần (Component)  Đóng gói (Package)  Hệ thống con (Subsystem)  Quan hệ (Relationship) Trang 5 Chương 1. Giới thiệu về phân tích và thiết kế hướng đối tượng với UML Phát triển hướng đối tượng  Là cách suy nghĩ mới về phần mềm dựa trên những khái niệm trừu tượng đang tồn tại trong thế giới thực.  Lợi ích và sức mạnh của hướng đối tượng.  Giảm chi phí bảo trì  Mô hình thế giới thực  Tính tin cậy cao  khả năng sử dụng lại mã nguồn cao Trang 6 Chương 1. Giới thiệu về phân tích và thiết kế hướng đối tượng với UML Tổng quan về UML  UML phát triển trên sự hợp nhất trong các phương pháp của tác giả Booch, Rumbaugh và Jacopson, và đã được chuẩn hóa bởi OMG (Object Management Group). Trang 7 Chương 1. Giới thiệu về phân tích và thiết kế hướng đối tượng với UML Cấu trúc View trong UML Trang 8 Chương 2. Giới thiệu về hệ thống J2EE Giới thiệu sơ lược về kiến trúc J2EE  Một hệ thống J2EE tổng quát có thể gồm ba máy logic như sau: - Máy dùng cho Client - Máy J2EE Server - Máy dùng cho Database Server  Xét về các lớp để xây dựng ứng dụng thì bao gồm bốn lớp chính: - Client tier - Web tier - Business tier - EIS tier Trang 9 Chương 2. Giới thiệu về hệ thống J2EE Tổng quát các máy logic, các lớp của hệ thống J2EE Trang 10 Chương 2. Giới thiệu về hệ thống J2EE Sơ đồ thể hiện lớp nghiệp vụ (business tier), lớp khách (client tier), lớp web tier và lớp EIS tier. Trang 11 Chương 2. Giới thiệu về hệ thống J2EE Kiến trúc tổng thể của một hệ thống J2EE Trang 12 Chương 2. Giới thiệu về hệ thống J2EE Giới thiệu dịch vụ JNDI (Java Naming and Directory Interface) Trang 13 Chương 2. Giới thiệu về hệ thống J2EE Tổng quan về Enterprise JavaBean(EJB)  Enterprise JavaBean  Container  EJB server Trang 14 Chương 2. Giới thiệu về hệ thống J2EE  Tổng quan về Enterprise JavaBean(EJB) (tiếp)  Các loại Bean (Type of Beans), có ba loại:  Session Bean (Bean thao tác), gồm hai loại: Stateful Session Bean Stateless Session Bean  Entity Bean (Bean thực thể), gồm hai loại: Bean thực thể tự quản lý(Bean – Managed Persistent Entity Beans) Bean thực thể quản lý bởi trình chứa (Container – Managed Persistent Entity Beans) Message – driven bean Trang 15 Chương 3. Phân tích yêu cầu trường hợp sử dụng và kịch bản ứng dụng. Giới thiệu ứng dụng. Mô tả kịch bản ứng dụng. Phân tích yêu cầu trường hợp người dùng.  Xác định các tác nhân (Actor): khách mua hàng.  Xác định các use case: - Use case tạo tài khoản (create account) - Use case cập nhật tài khoản (update account) - Use case đăng nhập và thoát (signin and off) - Use case duyệt xem danh mục hàng (browse catalog) - Use case chọn mua hàng (shopping cart) Trang 16 Search Catalog Browse categories Browse Product Details Browse Item Details Sign On and Off Browse Catalog Shoping Cart Submit Order customer Create Account Add and Remove Item Update Quantit y Item Order Item Update Account > > Trang 17 Chương 3. Phân tích yêu cầu trường hợp sử dụng và kịch bản ứng dụng. Mô tả các use case Phân tích miền ứng dụng  Tìm các lớp giao diện  Tìm các lớp nghiệp vụ  Nhận diện các kết hợp  Nhận diện các thao tác  Nhận diện các thuộc tính Trang 18 Chương 3. Lược đồ lớp sign in ở pha phân tích A ddre s s ge tS t ree tN a m e1 () ge tS t ree tN a m e2 () ge tC ity () ge tS ta te () ge tZip C od e() ge tC oun t ry () (fro m U ti l i t y ) M a inF orm s ign in ( ) b ro w s e c a t al o g () up d a te ac c ou nt() d is p lay c a t al o g () d is p lay s ho p p ingc art () s e a rc h ( ) s igno u t() c re a t e acc ou n t () C on ta c t In fo rm at io n te lep hon e e m ail a ddre s s g e tE M a il() g e tA dd res s () g e tTe lep hon e() (f ro m U t il it y ) S ign InF o rm s ig n in () c rea te ac c oun t() en te r u s er na m e an d pa s s w or d() d is p la y () d is p la y us er in fo rm a t ion () d is p la y m e s s a ge() 0 . .10 . .1 A c c ou n t us e rId pas s w ord s ta tus C ontac t In fo r m at io n c re a te () upd a te () ge t us er in fo () ge t em a il add res s () fi n d ac c ou nt () (fro m a cc o u n t ) S ign on u s ern am e p as s w ord g e tP a s s W o rd() u pda teP a s s W o rd() c rea te () re m ove() a dd s ign in () S ign inH and le r s ign in us er() c h ec k pas s w o rd() va lida te e n te re d us e rnam e an d pas s w o rd() (f ro m P e tsto re E J B ) 1 . .* 1 0 . .1 0 . . * re t rieves u s erId 1 0 . .* Trang 19 Chương 3. Lược đồ tuần tự của sign in trong pha phân tích : c us t om er : M a inF o rm : S ign InF o rm : S ign inH and le r : S ignon : A c c oun t 1 :/ /s i g n in ( ) 2 :/ /d is pl ay () 3 : / /en te r us e r nam e and pas s w ord ( ) 4 : / /s ign in us e r( ) 5 : / /va lida te e n te red us e rnam e and pas s w ord ( ) 6 : / / fin d a c c oun t ( ) 7 : / /g e t Pa s sW o rd ( ) 8 :/ /c hec k pas s w ord ( ) 9 : / /add s ign in ( ) 10 : / /d is p lay us e r in fo rm a t ion ( ) Trang 20 Chương 4. Thiết kế thành phần Thiết kế kiến trúc: theo kiến trúc MVC (Model-View- Controller) Trang 21 Chương 4. Thiết kế thành phần Thành phần sign in: là loại Entity Bean (BMP) Si gnOn getDeta i l s() updatePassWord() getDAO() > SignOnEJB EJB_Context : javax.e jb .Enti tyContext EJB_Connection : java.sq l .Connection = nu l l... EJB_Datasource : javax.sq l .DataSource = nul l... S ignOnEJB() > e jbCreate() : SignOnPK... > e jbPostCreate() : vo id... e jbActivate() : vo id e jbPassiva te() : vo id e jbLoad() : vo id e jbStore() : vo id e jbRem ove() : void setEnti tyContext(ctx : javax.ejb.Enti tyContext) : vo id... unsetEnti tyContext() : vo id > ejbFindByPrim aryKey(prim aryKey : S ignOnPK) : S ignOnPK... ge tDetai ls() updatePassWord() getDAO() > > SignOnHom e > create() : S ignOn... > fi ndByPrim aryKey(prim aryKey : S ignOnPK) : S ignOn... > > > Trang 22 Chương 4. Thiết kế thành phần: catalog Bean (stateless SB) Cat al ogE JB CatalogEJB() > ejb Create() : void ejbRem ove() : void ejbActivate() : v oid ejbPassivate() : void setSessionContext(sc : javax.ejb.SessionContext) : void getCategory() : Category getCategories() : L istChunk getProducts() : L istChunk getProduct() : P roduct getI tems() : L istChunk getI tem() : Item searchProducts() : L istChunk > Catalog ge tCat egory() : Cat egory ge tCat egor ies() : L istC hunk ge tProduc ts() : L ist Ch unk ge tProduc t() : P ro duc t ge tI te ms() : L ist Ch unk ge tI te m() : I te m se archPro duc ts() : L ist Chu nk > CatalogHom e > c rea te() : C at alo g > > > > Trang 23 Chương 4. Thiết kế thành phần Biểu đồ thành phần ở tầng nghiệp vụ (business tier) cus tom er inventory shoppingcart s ignon and out account (from cus tom er) order (from cus tom er) cus tom er (from cus tom e r) C art (from sh oppingcar t )...) Catalog (from sh oppingcart )...) Trang 24 Chương 5. Thiết kế hiện thực hoá các use case Để hiện thực hoá các use case ta tuân theo kiến trúc đã chọn, đó là kiến trúc MVC –Model- View-Controller.  Model: là các thành phần EJB thuộc lớp nghiệp vụ (business tier).  View: là các trang JSP, các lớp JavaBean (thuộc lớp web).  Controller: là các lớp Servlet, các thành phần EJB có chức năng điều khiển. Trang 25 C a ta lo g D AO (fro m C a ta lo g ) C a ta lo g E JB (fro m C a ta lo g ) C a ta lo g Mo d e l (fro m C a ta lo g ) P ro d u ctD e ta ils Fo rm (f ro m V iew) P r o d u ctFo r m (f ro m V iew) Mo d e lU p d a te Ma n a g e r (f rom e jb ) P ro d u ctC a te g o ryFo rm (f ro m V iew) S ta te Ma ch in e (f ro m e jb) C a ta lo g W e b Im p l ( f rom web ) Scre e n F lo w M a n a g er (f r om we b) H ttpS e s s io n (f ro m ht tp ) S h o p p in g C l ie n tC o n tro lle rE JB (f ro m e jb) > S e rvle tC o n te xt (f ro m s e rv le t ) S cre e n D e fin itio n s (f ro m V iew) E S to re E ve n t (f ro m e v e nt ) S h o p p in g C lie n tC o n tro ll e rW e b Im p l ( f rom web ) Mo d e lMa n a g e r ( f rom web ) Te m p la te (f ro m V iew) R e q u e s tP ro ce s s o r (f ro m we b) Ma in Fo rm (f ro m s ig no n an d o f f ) Trang 26 Chương 6. Thực hiện cài đặt và triển khai ứng dụng Lớp web (web tier): dùng công nghệ JSP, JavaBean, Servlet. Lớp nghiệp vụ (business tier): đặc tả EJB (Enterprise JavaBean) . Lớp EIS (EIS tier): hệ quản trị cơ sở dữ liệu Cloudscape. Một vài giao diện của ứng dụng E-store: Trang 27 Trang 28 Trang 29 Chương 6. Thực hiện cài đặt và triển khai ứng dụng Lược đồ triển khai ứng dụng E-store Trang 30 Kết luận: kết quả đạt được: Tiếp cận và nắm bắt được phương pháp phân tích thiết kế hướng đối tượng bằng UML. Tiếp cận và nắm bắt được kiến trúc J2EE, cách xây dựng ứng dụng đa tầng, phân tán theo kiến trúc trên. Nắm bắt đặc tả EJB, công nghệ JSP, Servlet, JNDI … trong J2EE. Xây dựng ứng dụng để demo các công nghệ nói trên. Thao tác công cụ Rational Rose. Trang 31 Kết luận: các vấn đề còn tồn tại Ứng dụng chỉ là một phần của hệ thống thương mại điện tử, chưa hoàn chỉnh, mang tính chất demo công nghệ là chính. Ứng dụng còn nhiều lỗi chưa xử lý được. Lần đầu tiếp cận các công nghệ trên nên kiến thức chưa sâu, còn nhiều thiếu sót. Trang 32 Hướng phát triển Hoàn thiện đầy đủ các chức năng của ứng dụng theo kiến trúc J2EE để triển khai vào thực tế. Triển khai hệ thống trên mạng Internet, hiện thực hoá vấn đề thương mại điện tử. Xây dựng hệ thống để triển khai trên các máy chủ khác mang tính thương mại cao như: Oracle Application Server (OAS), …