GOF===============
Creational patterns
- Abstract factory
- Builder
- Factory method
- Prototype
- Singleton
Structural patterns
- Adapter or Wrapper
- Bridge
- Composite
- Decorator
- Facade
- Flyweight
- Proxy
Behavioral patterns
- Chain of responsibility
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Strategy
- Template Method
- Visitor
Core Java EE =========
Presentation Tier
- Intercepting Filter
- Context Object
- Front Controller
- Application Controller
- View Helper
- Composite View
- Dispatcher View
- Service to Worker
Business Tier
- Business Delegate
- Service Locator
- Session Facade
- Application Service
- Business Object
- Composite Entity
- Transfer Object
- Transfer Object Assembler
- Value List Handler
Integration Tier
- Data Access Object
- Service Activator
- Domain Store
- WebService Broker
++++++++++++++++++++
Decomposition Strategies
■ Group 1
Layering or Distribution
■ Group 2
Exposure, Functionality, or Generality
■ Group 3
Coupling and Cohesion or Volatility
■ Group 4
Configuration
■ Group 5
Planning and Tracking or Work Assignment
++++++++++++++++++++
Layers --> represent scontainer/component rela-
tionships in implementation and deployment of services
Tiers --> represent processing
chains across components
++++++++++++++++++++
Tiers
1. Client (GUI & Web)
- transient + disposable
2. Web (Web Container)
- Presentation tier
3. Business (EJB Container)
- +low level services
4. Integration
- access to external resources
- middleware
5. Resource Tiers
- data tier
Layers
1. Application
- user + business func.
2. Virtual platform (component APIs)
- EJB, Servlet, JEE APIs
3. Application infrastructure (Containers)
- middleware products
4. Enterprise services (OS * virtualization)
- interfaces to OS
5. Compute and Storage
- physical hardwares
6. Networking infrastructure
- networking interfaces
++++++++++++++++++++
Service-level requirements
(Non-funtional requirements)
1. Scalability
- รองรับ load โดยปราศจากการปป.
- ตอบสนองภายในเวลาที่กำหนด
- understand the capac-
ity of a system
- adding hardware **vertically** |
**horizontally**
2. Maintainability
- dynamic system configuration
3. Reliability
- can have a negative impact
on scalability
- For a system to truly scale,
it must be reliable
4. Availability
- an be achieved
even if components fail (by components and failover)
5. Extensibility
6. Performance
7. Manageability
8. Security
++++++++++++++++++++
Cluster
- Two-node clusters (symmetric and asymmetric)
- Clustered pairs
- Ring (not supported in Sun Cluster 3.0 Cool Stuff soft-
ware)
- N+1 (Star)
- Scalable (N-to-N)
++++++++++++++++++++
Tiers in Architecture (logical tiers)
1. Two-Tier Systems
- presentation + business logic
or business logic + database server
Adv.
(1) Security
(2) Performance
Dis adv.
(1) Availability
(2) Scalability
(3) Manageability
(4) Maintainability
*Reliability
2. Three-Tier & Multi-Tier Systems
- Three-Tier = web + business logic + resources tiers
- Multi-Tier = web + business logic + integration + resources tiers
Adv.
(1) Scalability
(2) Availability
(3) Extensibility
(4) Manageability
* Performance
Dis adv.
- (None)
++++++++++++++++++++
Web Tier Technologies=============
- MVC - Model 2 (View --> Controller --> Model)
- Web container --> provides services to presentation + control components (JSPs, JSF, Servlets, filters, web event listeners, and POJOs).
- Services --> concurrency control, access to user-managed transactions, configuration, and security management
- Web-centric --> ease of development + transactions are not key.
- EJB-centric --> strong messaging + transaction + security
- Web-centric can be used in large system but we have to reconstruct all services ourselves
Integration and Messaging==========
- JMS (Java Messaging Service) --> in JEE platform to allow asynchronous Java to Java integration via queues or topics. --> MDBs consumes the messages.
*** for intra-company integrations***
- JCA (Java Connector Architecture) --> used less than WS and JMS. --> used for wrapping legacy applications.--> access to an existing EIS from JEE platform.
Security=====================
Client --> Web Start, Applet
JAAS (Java Authentication and Authorization Service)
Wednesday, March 17, 2010
Subscribe to:
Posts (Atom)
