Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Technology Review Rattakorn Poonsuph D.Sc. School of Applied Statistics, NIDA
Technology Perspectives
The Enterprise Platform Architectures Gartner Group ©
Architecture Trends <ul><li>Today, the value is not defined as much by functionality anymore but by connectivity </li></ul...
Software Technology Evolution Modularity Architecture
Modularity (Procedural Languages) Process Boundary Spaghetti Thread Spaghetti Thread
Static Binding C C Lib … … obj obj Linking EXE
Dynamic Binding C C Dyn Lib … obj obj Linking EXE DLL Runtime Shared
Dynamic Binding VS Messaging Machine Boundary Machine Boundary Machine Boundary EXE DLL DLL DLL DLL DLL DLL DLL DLL DLL DL...
Question <ul><li>JAVA ? </li></ul><ul><li>.NET ? </li></ul>
Object-oriented Architecture
Characteristics of OOA <ul><li>Objects are abstractions of real-world or system entities and manage themselves. </li></ul>...
Advantages of OOD <ul><li>Easier maintenance. Objects may be  understood as stand-alone entities. </li></ul><ul><li>Object...
Object-Oriented Data Polymorphism Inheritance Encapsulation Data Inheritance Encapsulation Polymorphism Inheritance Encaps...
Component-Base Architecture
Component Base Process Boundary
Component-based development <ul><li>Component-based software engineering (CBSE) is an approach to software development tha...
CBSE and design principles <ul><li>Apart from the benefits of reuse, CBSE is based on sound software engineering design pr...
Component Scalability <ul><li>Scalable </li></ul><ul><li>Failover </li></ul><ul><li>Load Balancing </li></ul><ul><li>High ...
Component model services
Question <ul><li>What different between Program Library & Component-base </li></ul>
Distributed Architecture
Remote Procedure Call -DCE Client Server
Distributing Component (DCOM) Client Server
Remote Method Invocation (RMI) Client Server
Object Request Broker Proxy Proxy Client Server
CORBA / J2EE Proxy Proxy Client Server Container
Scalability Proxy Client Server Container Server Container
The Architecture Train Hype Cycle Time Visibility DCE CORBA Technology  Trigger Peak of Inflated Expectation Slope of Enli...
The Disintegration of AD: Replacing Procedures With Services Web Services Services Components Granularity Scope B2B Market...
Component Model
Component models <ul><li>A component model is a definition of standards for component implementation, documentation and de...
Relationship to Other Standards <ul><li>Microsoft COM and ActiveX </li></ul><ul><ul><li>Provides component interoperabilit...
COM/DCOM Model Visual Studio ActiveX DLL Form COM.DLL Windows Registry CLSID Look-up Remote Call UI.EXE Interface { ListAc...
Distributed COM+ / MTS Client Machine Remote Server M T S Windows Registry UI.EXE Look-up Remote Call
Microsoft .NET vs. J2EE Serviced Components Visual Studio.NET Operating System Common Language Runtime .NET Framework ADO....
Scorecard: Enterprise Architect Advantage Scaling options J2EE OS-based, clustering & failover Functional richness J2EE Re...
Scorecard: Web Project Leader Advantage Developer tools Microsoft GUI richness, ease of use Manageability Microsoft Approp...
Summary Analysis of Current Platforms © 2002  Giga Information Group, Inc. <ul><li>Best GUI development </li></ul><ul><li>...
Technical Design Pattern
Transactional B2C DMZ Corporate or Service Provider Network JDBC Data Store HTTP Browser XML/XSL Bean Applets HTML J2EE Ap...
Transactional B2C With Legacy HTTP JDBC Data Store Messaging  Bean  Interface J2EE Connector DMZ Corporate or Service Prov...
B2B Integration J2EE AppServer EJB Data Store DMZ Corporate or Service Provider Network Web Server XML / HTTP Corporate or...
Service-Based Data Access Message  Bus EJB Data Service Standard Java Persistence C++ Data Service Standard C/C++ Persiste...
JSP/Struts/EJB J2EE Design Principle
.NET & J2EE Integration Combine the benefits of both .NET & J2EE
Technology Trends 2006 & Beyond
CHANGES ON THE COMMUNICATIONS   HORIZON “ By 2010, 30 percent of US homes will use only cellular or Internet telephony” Ke...
PC’s “ By 2008, 10 percent of companies will require employee-purchased notebooks”. Leslie Fiering | Brian Gammage | Marti...
I.T. WORKFORCE “ The job market for IT specialists will shrink 40 percent by 2010”. Diane Morello Gartner’s Top Prediction...
Depth of Skill WORKFORCE  PREDICTION The rise of VERSATILIST <ul><li>Specialist </li></ul><ul><li>Deep skills </li></ul><u...
 
 
Upcoming SlideShare
Loading in …5
×

Technology Review

866 views

Published on

Published in: Technology, Education
  • Be the first to comment

Technology Review

  1. 1. Technology Review Rattakorn Poonsuph D.Sc. School of Applied Statistics, NIDA
  2. 2. Technology Perspectives
  3. 3. The Enterprise Platform Architectures Gartner Group ©
  4. 4. Architecture Trends <ul><li>Today, the value is not defined as much by functionality anymore but by connectivity </li></ul><ul><ul><li>However, we need a new programming model </li></ul></ul><ul><li>Why SOA today? </li></ul><ul><ul><li>We are reaching a new threshold of connectivity and computing power </li></ul></ul>Mainframe Client Server Web SOA
  5. 5. Software Technology Evolution Modularity Architecture
  6. 6. Modularity (Procedural Languages) Process Boundary Spaghetti Thread Spaghetti Thread
  7. 7. Static Binding C C Lib … … obj obj Linking EXE
  8. 8. Dynamic Binding C C Dyn Lib … obj obj Linking EXE DLL Runtime Shared
  9. 9. Dynamic Binding VS Messaging Machine Boundary Machine Boundary Machine Boundary EXE DLL DLL DLL DLL DLL DLL DLL DLL DLL DLL Container Container Container Container
  10. 10. Question <ul><li>JAVA ? </li></ul><ul><li>.NET ? </li></ul>
  11. 11. Object-oriented Architecture
  12. 12. Characteristics of OOA <ul><li>Objects are abstractions of real-world or system entities and manage themselves. </li></ul><ul><li>Objects are independent and encapsulate state and representation information. </li></ul><ul><li>System functionality is expressed in terms of object services. </li></ul><ul><li>Shared data areas are eliminated. Objects communicate by message passing. </li></ul><ul><li>Objects may be distributed and may execute sequentially or in parallel. </li></ul>
  13. 13. Advantages of OOD <ul><li>Easier maintenance. Objects may be understood as stand-alone entities. </li></ul><ul><li>Objects are potentially reusable components. </li></ul><ul><li>For some systems, there may be an obvious mapping from real world entities to system objects. </li></ul>
  14. 14. Object-Oriented Data Polymorphism Inheritance Encapsulation Data Inheritance Encapsulation Polymorphism Inheritance Encapsulation Polymorphism Data Data Polymorphism Inheritance Encapsulation
  15. 15. Component-Base Architecture
  16. 16. Component Base Process Boundary
  17. 17. Component-based development <ul><li>Component-based software engineering (CBSE) is an approach to software development that relies on software reuse. </li></ul><ul><li>It emerged from the failure of object-oriented development to support effective reuse. Single object classes are too detailed and specific. </li></ul><ul><li>Components are more abstract than object classes and can be considered to be stand-alone service providers. </li></ul>
  18. 18. CBSE and design principles <ul><li>Apart from the benefits of reuse, CBSE is based on sound software engineering design principles: </li></ul><ul><ul><li>Components are independent so do not interfere with each other; </li></ul></ul><ul><ul><li>Component implementations are hidden; </li></ul></ul><ul><ul><li>Communication is through well-defined interfaces; </li></ul></ul><ul><ul><li>Component platforms are shared and reduce development costs. </li></ul></ul>
  19. 19. Component Scalability <ul><li>Scalable </li></ul><ul><li>Failover </li></ul><ul><li>Load Balancing </li></ul><ul><li>High Performance </li></ul><ul><li>Low Cost </li></ul>Container 2 Container 3
  20. 20. Component model services
  21. 21. Question <ul><li>What different between Program Library & Component-base </li></ul>
  22. 22. Distributed Architecture
  23. 23. Remote Procedure Call -DCE Client Server
  24. 24. Distributing Component (DCOM) Client Server
  25. 25. Remote Method Invocation (RMI) Client Server
  26. 26. Object Request Broker Proxy Proxy Client Server
  27. 27. CORBA / J2EE Proxy Proxy Client Server Container
  28. 28. Scalability Proxy Client Server Container Server Container
  29. 29. The Architecture Train Hype Cycle Time Visibility DCE CORBA Technology Trigger Peak of Inflated Expectation Slope of Enlightenment Plateau of Productivity COM DCOM J2EE COM+/MTS .NET Web Services ? MOM
  30. 30. The Disintegration of AD: Replacing Procedures With Services Web Services Services Components Granularity Scope B2B Market, Global Enterprise Coarse Objects HTTP+ MOM ORB Typical Access via Small Enterprise, Complex Application Homogeneous Application Program Tighter Looser Coupling Procedural Call
  31. 31. Component Model
  32. 32. Component models <ul><li>A component model is a definition of standards for component implementation, documentation and deployment. </li></ul><ul><li>Examples of component models </li></ul><ul><ul><li>EJB model (Enterprise Java Beans) </li></ul></ul><ul><ul><li>COM+ model (.NET model) </li></ul></ul><ul><ul><li>Corba Component Model </li></ul></ul><ul><li>The component model specifies how interfaces should be defined and the elements that should be included in an interface definition. </li></ul>
  33. 33. Relationship to Other Standards <ul><li>Microsoft COM and ActiveX </li></ul><ul><ul><li>Provides component interoperability on Windows platform with language-independence </li></ul></ul><ul><li>Sun JavaBeans and EJB </li></ul><ul><ul><li>Cross-platform component architecture based on the Java programming language </li></ul></ul><ul><li>CORBA 2.0 </li></ul><ul><ul><li>Cross-language, cross-platform distributed object model </li></ul></ul>
  34. 34. COM/DCOM Model Visual Studio ActiveX DLL Form COM.DLL Windows Registry CLSID Look-up Remote Call UI.EXE Interface { ListAccount() Deposit() Withdraw() Transfer() } Implementation ListAccount() { … .. } N a me of new group: Desciption Group type: S ecurity D istribution Group scope: D o main local G lobal U niversal
  35. 35. Distributed COM+ / MTS Client Machine Remote Server M T S Windows Registry UI.EXE Look-up Remote Call
  36. 36. Microsoft .NET vs. J2EE Serviced Components Visual Studio.NET Operating System Common Language Runtime .NET Framework ADO.NET, XML Multiple Languages Common Language Specification The Microsoft Platform Generic J2EE Platform ASP.NET Windows Forms Tools Operating Systems JVM System Classes JDBC, XML, JDO Java EJBs Java Byte Code Specification JSP Swing
  37. 37. Scorecard: Enterprise Architect Advantage Scaling options J2EE OS-based, clustering & failover Functional richness J2EE Reflected by APIs & services Security J2EE Experience & architecture Hardware/OS choice J2EE Range of options Vendor choice J2EE Sources of supply Developer tools Microsoft Functional richness, ease of use XML & Web Services Microsoft Depth & maturity Manageability Neutral Application dependent Costs Neutral Application dependent
  38. 38. Scorecard: Web Project Leader Advantage Developer tools Microsoft GUI richness, ease of use Manageability Microsoft Appropriate, easy to use function Costs Microsoft Deployment, development, skills Scaling options J2EE But Microsoft is good enough Functional richness Microsoft Rich client function is vital Security J2EE A manageable risk Hardware/OS choice NA Wintel is the choice Vendor choice J2EE Microsoft is the choice XML & Web Services Microsoft A low priority
  39. 39. Summary Analysis of Current Platforms © 2002 Giga Information Group, Inc. <ul><li>Best GUI development </li></ul><ul><li>Tighter platform integration & unified management </li></ul><ul><li>Better, cheaper tools </li></ul><ul><li>Multi-language & cross-language support </li></ul><ul><li>More developers (but many are not “enterprise class”) </li></ul><ul><li>ASP.NET better than JSPs (for now) </li></ul><ul><li>Platform choice for reliability, scale-up and legacy </li></ul><ul><li>Greater vendor leverage </li></ul><ul><li>Stronger architecture focus, interfaces & clustering </li></ul><ul><li>Tools more team-oriented </li></ul><ul><li>Greater adoption rate / openness </li></ul><ul><li>Greater platform depth </li></ul>Strengths Platform .NET J2EE
  40. 40. Technical Design Pattern
  41. 41. Transactional B2C DMZ Corporate or Service Provider Network JDBC Data Store HTTP Browser XML/XSL Bean Applets HTML J2EE AppServer JavaBean EJB JSPs Web Server
  42. 42. Transactional B2C With Legacy HTTP JDBC Data Store Messaging Bean Interface J2EE Connector DMZ Corporate or Service Provider Network Browser XML/XSL Bean Applets HTML J2EE AppServer JavaBean EJB JSPs Web Server Legacy Data/Transfer COBOL Application Flat File IMS CICS
  43. 43. B2B Integration J2EE AppServer EJB Data Store DMZ Corporate or Service Provider Network Web Server XML / HTTP Corporate or Service Provider Network Partner Applications Custom XML Interface Package Data Access Data Store JDBC Web Server XML Interface
  44. 44. Service-Based Data Access Message Bus EJB Data Service Standard Java Persistence C++ Data Service Standard C/C++ Persistence Data Store Data Store
  45. 45. JSP/Struts/EJB J2EE Design Principle
  46. 46. .NET & J2EE Integration Combine the benefits of both .NET & J2EE
  47. 47. Technology Trends 2006 & Beyond
  48. 48. CHANGES ON THE COMMUNICATIONS HORIZON “ By 2010, 30 percent of US homes will use only cellular or Internet telephony” Ken Dulaney | Bob Hafner | Wm. L. Hahn | Tole J. Hart Gartner’s Top Predictions for 2006 and Beyond PREDICTION
  49. 49. PC’s “ By 2008, 10 percent of companies will require employee-purchased notebooks”. Leslie Fiering | Brian Gammage | Martin Reynolds Gartner’s Top Predictions for 2006 and Beyond PREDICTION
  50. 50. I.T. WORKFORCE “ The job market for IT specialists will shrink 40 percent by 2010”. Diane Morello Gartner’s Top Predictions for 2006 and Beyond PREDICTION
  51. 51. Depth of Skill WORKFORCE PREDICTION The rise of VERSATILIST <ul><li>Specialist </li></ul><ul><li>Deep skills </li></ul><ul><li>Narrow Scope </li></ul><ul><li>Peer recognition </li></ul><ul><li>Unknown Outside domain </li></ul><ul><li>Generalist </li></ul><ul><li>Superficial skills </li></ul><ul><li>Broad Scope </li></ul><ul><li>Quick response </li></ul><ul><li>Others lack confidence </li></ul><ul><li>Versatilist </li></ul><ul><li>Deep skills </li></ul><ul><li>Wide scope of Roles </li></ul><ul><li>Broad Experience </li></ul><ul><li>Recognized in other domains </li></ul>Scope of Roles and assignments Specialist Generalist Versatilist

×