Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3...

16
Du, Yanling Shen, Guoqiang (Group 6) July 7, 2010

Transcript of Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3...

Page 1: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Du, YanlingShen, Guoqiang

(Group 6)

July 7, 2010

Page 2: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

OutlineIntroductionProblem DescriptionProposed ApproachDesign DecisionExpected ResultsReferences

ECE 750‐T11  Project Presentation 1 2

Page 3: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

IntroductionWhat’s EIS?

Enterprise Information SystemA three‐layered system consisting of business systems, information systems, and supporting software systems [1]

Main properties ‐ reconfigurability, reusability and extensibility [2]

CBD technologies component models for EIS [3]COM+/.NETCORBAEnterprise Java Beans (EJB)OSGi

ECE 750‐T11  Project Presentation 1 3

Page 4: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

IntroductionJ2EE N‐tier architecture [4]

ECE 750‐T11  Project Presentation 1 4

Client Tier Presentation Tier Business Tier Integration Tier Resources Tier

Entity Beans,JDBC

SessionEJBs

JSP/Servlets

RDBMSPC Client

BusinessObjects

Page 5: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

IntroductionJAVA EE 5 N‐tier architecture [5]

ECE 750‐T11  Project Presentation 1 5

Client Tier Presentation Tier Business Tier Integration Tier Resources Tier

JPAEJB3JSF

RDBMSPC Client

BusinessObjects

Page 6: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Problem Description

ECE 750‐T11  Project Presentation 1 6

The fact Reduced amount of code to write for JAVA EE 5 than J2EEBut ...Still has limited dependency injection

EJB3 only provides dependency injection for JNDI objects in an EJB containerSupported by Java 5.0 only

Complexity for using JEE supported application serverNot susceptible to unit testing 

How about Spring [6] + JAVA EE 5 ?

Page 7: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Proposed ApproachBased on typical SDLC (Software Development Life Cycle)

System analysisDesign phaseImplementation phaseTesting phase

ECE 750‐T11  Project Presentation 1 7

Page 8: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Proposed Approach

ECE 750‐T11  Project Presentation 1 8

System AnalysisAnalyze Clinic Management System (CMS)

To implement CRUD (Create, Retrieve, Update and Delete) 

Use UML(Unified Model Language) to model CMSUse case diagramSequence diagram…

Page 9: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Proposed Approach

ECE 750‐T11  Project Presentation 1 9

Design PhaseArchitecture designDecompose CMS into several components

Patient componentAppointment componentDoctor component...

Use UML to model CMSClass diagramComponent diagram...

Page 10: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Proposed Approach

ECE 750‐T11  Project Presentation 1 10

Implementation PhaseJDK 1.6Frameworks: Spring 2.5 + JSF 1.2 + EJB3 + JPA 1.0IDE: Eclipse 3.5Application server: JBoss 5.1.0 Database: MySQL  5.0JUnit 1.4

Page 11: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Proposed Approach

ECE 750‐T11  Project Presentation 1 11

Testing PhaseDesign appropriate test suites for unit, integration and system testingConstruct testable components while keeping minimized development effortsEvaluate the system by concentrating on its composability and performance

Page 12: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Design Decision

ECE 750‐T11  Project Presentation 1 12

Presentation Tier

Business Tier

Integration Tier

Database Tier

JAVA EE Server

Spring Framework + EJB

JPA

JavaServer Faces

RDBMS

Entity Object

O/R Mapping Resource Management Transaction Management

Bean Management Declarative Transaction Management Entity Manager

Service Beans

UI Components Back Beans Validator/Convertor Resource Bundle JSP

Face Servlets

Service Interfaces

Page 13: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Design DecisionSpring Framework

Make use of POJO to simply JEE development “Inversion of Control” (IOC/DI) assembles components from different projects into a cohesive application

Spring + JAVA EE 5Provide light‐weight dependence management container for business & JSF tiersActs as glue for the entire applicationMore functionalities are available through Spring     sub‐frameworks, such as AOP

ECE 750‐T11  Project Presentation 1 13

Page 14: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Expected ResultsTo understand CBSE related knowledge and latest Java EE technologiesTo demonstrate Spring + JSF + EJB3 + JPA in practical EIS CBD processTo contribute a set of reusable, reconfigurable and extensible components for future applications

ECE 750‐T11  Project Presentation 1 14

Page 15: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

References1. Vasilecas, O., Eder, J., Caplinskas, A, “Integrated Enterprise Information System 

Development through Component Abstraction,” 2006 Seventh International Baltic Conference on Databases and Information Systems, Proceedings, pp. 168‐174, 2006.

2. Wang, X., Zhang, C., Gao, X., Li, Z., “Development of Enterprise Information System Using Business Component‐Based Approach,” in International Federation for Information Processing, Volume 205, Research and Practical Issues of Enterprise Information Systems, cds. Tjoa, A.M., Xu, L., Chaudhry, S., (Boston:Springer), pp.361‐369.

3. Chapter 4 in I. Crnkovic and M. Larsoon, Building Reliable Component‐Based Software Systems, Artech House, 2002.

4. The J2EE Tutorial: http://download.oracle.com/docs/cd/E17477_01/javaee/1.4/tutorial/doc/

5. The Java EE 5 Tutorial: http://download.oracle.com/docs/cd/E17477_01/javaee/5/tutorial/doc/bnaay.html

6. The Complete Spring Tutorial: http://www.roseindia.net/spring/index.shtml

ECE 750‐T11  Project Presentation 1 15

Page 16: Du, Yanling Shen, Guoqiang - STAR - Homeltahvild/courses/ECE750-11-S... · 2010. 7. 7. · JSF EJB3 RDBMS PC Client Business Objects. Problem Description ECE 750‐T11 Project Presentation

Thank you!

ECE 750‐T11  Project Presentation 1 16