Presentation is loading. Please wait.

Presentation is loading. Please wait.

Distribuerte Systemer Viktigere enn vi tror, vanskeligere enn det høres Komponenttorget ‘99 Trondheim Trygve Reenskaug Numerica Taskon Distaribuerte.

Similar presentations


Presentation on theme: "Distribuerte Systemer Viktigere enn vi tror, vanskeligere enn det høres Komponenttorget ‘99 Trondheim Trygve Reenskaug Numerica Taskon Distaribuerte."— Presentation transcript:

1 Distribuerte Systemer Viktigere enn vi tror, vanskeligere enn det høres Komponenttorget ‘99 Trondheim Trygve Reenskaug Numerica Taskon Distaribuerte Systemer

2 Personal Information Environments Content and Communication
Digital Map Census Data Police Records House Drawings Aerial Photos Police Dispatcher Distaribuerte Systemer © Trygve Reenskaug 1999

3 The Connected Organization
The Real Challenges The Connected Organization Effective Partitioning of Information Services Effective, Enjoyable and Instructive Tools Business processes Task / Use Case / Tool Information services Distaribuerte Systemer © Trygve Reenskaug 1999

4 Presentation plan Communication-centered architectures A new system generation The Collaboration Remote Method Invocation (+ CORBA, COM) The Component (+ Java Bean, Java Enterprise Bean) Summary and Conclusion Distaribuerte Systemer

5 CPU-Centered paradigm
Output Input Central Processing Unit FORTRAN Algol 60 Tape Hardware Software Distaribuerte Systemer

6 Storage-Centered paradigm
Shared database App.1 App.2 App.4 App.3 DB Schema language e.g. Entity-Relation e.g. NIAM Output Input Memory Central Processing Unit Disk Tape Hardware Software Distaribuerte Systemer

7 Communication-Centered paradigm
Object 1 Object 2 Object 4 Object 3 Information Bus Central Processing Unit Input Output Disk Communication Bus Memory Tape Composition language e.g. ???? Hardware Software Distaribuerte Systemer

8 Summary - 1 Unlimited Scaling Distributed Ownership
Support people’s Tasks Flexible Consistency Requirements Fideikommiss hits Distaribuerte Systemer © Trygve Reenskaug 1999

9 Presentation plan The Collaboration Summary and Conclusion
Communication-centered architectures A new system generation The Collaboration Remote Method Invocation (+ CORBA, COM) The Component (+ Java Bean, Java Enterprise Bean) Summary and Conclusion Distaribuerte Systemer

10 No Main Program! Centralized solutions The designer sees everything
knows everything understands everything controls everything The SYSTEM Distributed solutions The object - has responsibility knows its collaborators is robust Nobody knows everything! Distaribuerte Systemer

11 Network with Default Resource
The (toy) sample user interface is a Java Applet that is run from a web browser. The interface interacts with a background service that is also written in Java. The top bars in the bar chart shows the earliest times when the activities can be performed. The bottom bars show when the activities can be done if all use the same resource, and this resource can only serve one activity at the time. Distaribuerte Systemer © Trygve Reenskaug 1999

12 Network with Gantry Resource
An example of specialization: Some activities use a Gantry crane. Our crane has two independent hooks: One can lift a light load and the other can lift any load. Activity B is to lift a light load. It can be performed concurrently with activity C, which is a heavy load. Activities D and E are both heavy loads, they have to be performed in sequence. Activities A and F use the old resource that can serve one at the time. Distaribuerte Systemer © Trygve Reenskaug 1999

13 The objects and their message paths
WEB Browser paint(); Button Code is invisible! Applet ActivityGraph Project BarChart Project activity-B activity-D activity-A Activity-F activity-C activity-E Distaribuerte Systemer

14 Summary - 2 Move from closed to open systems
Distributed solutions The object has responsibility knows its collaborators is robust Nobody knows everything! Move from closed to open systems Move from centralized to distributed control Change focus from build-time to run-time aspects Abstraction: The role the object plays in collaboration context Distaribuerte Systemer

15 Presentation plan Remote Method Invocation (+ CORBA, COM)
Communication-centered architectures A new system generation The Collaboration Remote Method Invocation (+ CORBA, COM) The Component (+ Java Bean, Java Enterprise Bean) Summary and Conclusion Distaribuerte Systemer

16 Java RMI Remote Method Invocation
WEB Browser Client Button Server App ActivityGraph Information Bus BarChart Project activity-B activity-D activity-A Activity-F activity-C activity-E Remote access is slow and error prone. Simplify and clarify!!! Distaribuerte Systemer

17 RMI middleware (1 second can grow to 3 hours!!)
Client Server The BarChart object The ActivityGraph object The Project object (A Server) An Activity object (A server) Project Stub represents the Project Activity skeleton represents sender Activity Stub represents an Activity Information Bus Project skeleton represents sender Java Naming & RMI Services (or CORBA or COM) HTML - web page language TCP/IP - Guaranteed end-to-end data stream Physical communication (ISDN/Ethernet/….) Distaribuerte Systemer

18 Presentation plan The Component (+ Java Bean, Java Enterprise Bean)
Communication-centered architectures A new system generation The Collaboration Remote Method Invocation (+ CORBA, COM) The Component (+ Java Bean, Java Enterprise Bean) Summary and Conclusion Distaribuerte Systemer

19 Why use components Use componets to Simplify remote communication
Avoid coding to save time Avoid coding to increase quality Use tools to increase your productivity Get transactions, security, etc. for free Distaribuerte Systemer

20 What is a Component Tools are used to compose systems
A component is reused by cloning A Component is an object playing standardized roles A Component is a reusable object Technology System user System composer Component creator Tool developer and vendor Component environment standardizer Organization Distaribuerte Systemer

21 Compose User Interface with Java Beans
Distaribuerte Systemer

22 Bean object plays several roles
BeanBox Composer Use Case Run-time display Use Case App Bean Object Distaribuerte Systemer

23 Component standardization examples
Information Bus Java Bean User Interface Properties Events Composition Run time context Enterprise Java Bean Naming Persistence Transactions Security Load sharing Client Server Distaribuerte Systemer

24 Presentation plan Summary and Conclusion
Communication-centered architectures A new system generation The Collaboration Remote Method Invocation (+ CORBA, COM) The Component (+ Java Bean, Java Enterprise Bean) Summary and Conclusion Distaribuerte Systemer

25 Distributed Systems What you get: Unlimited scaling
Distributed ownership Specific task support Information partitioning How you do it: Think in terms of objects, their responsibilities and collaboration. Think in terms of open systems, no main program. Distaribuerte Systemer

26 Component-based development
What you get: Build by composing library objects, avoid coding. Leverage infrastructure mechanisms (transactions, security, persistence,…) How you do it: Think in terms of objects. (Responsibilities, environment, collaboration.) Penetrate vendor fog - find essentials Insist on high product quality Adapt to new layers in value chain Distaribuerte Systemer

27 The competing technologies
CORBA™ Object Management Group (OMG) Public standards Java™ SUN Microsystems Build once, run anywhere COM™ Microsoft Dominating on desktops Distaribuerte Systemer

28 You can do it! http://www.ifi.uio.no/~trygve Distributed systems
Distaribuerte Systemer

29 Kaffe Distaribuerte Systemer


Download ppt "Distribuerte Systemer Viktigere enn vi tror, vanskeligere enn det høres Komponenttorget ‘99 Trondheim Trygve Reenskaug Numerica Taskon Distaribuerte."

Similar presentations


Ads by Google