 Hello everyone, this is Supriya Ambarkar, Assistant Professor in Computer Science and Engineering Department at Vulture Institute of Technology, Solapur. Today we are going to discuss a topic on Guess Study of CORBA. What is CORBA in Distributor System? So how it works, how it architecture, how it performs, we will see in details in the next slide. The learning outcome of this topic is, at the end of this session, the student will be able to explain the basic implementation steps of CORBA. Also students will be able to state the different key benefits of CORBA. The first we will see the introduction. What is the meaning of the CORBA? CORBA is a common object request broker architecture. So it is a standard developed by the object management group that is meaning of OMG to provide interoperability among distributed objects. So the aim of CORBA is to make better use of distributed system to use object oriented programming and to allow objects in different programming languages to communicate with each other. So it is the world's leading middleware solution enabling the exchange of information independent of hardware platforms, programming languages and operating systems. Now we will see the details of OMG. OMG means object management group was formed in 1989 by different MNCs together. Then when, which is the non-profit consortium defined CORBA that enables software components written in multiple computer languages and running on multiple computers to work together. Means it supports multiple platforms. It promote practice of object technology for the development of DOS. It is a common architectural framework for object oriented applications. It leads the specification development efforts of CORBA, OMG Ideal, IIOP, OMA, UML specifications. It provides specifications in request for information that is RFI and request for proposals that is RFP. Now we will see the OMG's key benefits. Here are the few benefits are it has a wide software developer support, it is an open standard that strives for interoperability at all levels, it is an open democratic process for defining standards, there is no focus on operating system support or no platform as in does are required. Now we will see the importance of ORB and Ideal in CORBA. ORB is an object request broker. It provides the mechanism required for distributed objects to communicate with one another. Means ORB enables clients to invoke methods in a remote object. Now we will see the Ideal. Ideal means interface definition language. It allows the development of language and location independent interfaces to distributed objects. CORBA use an Ideal to specify the interfaces which objects represent to the outer world. After that CORBA specifies a mapping from Ideal to a specific implementation language like C++ or Java. Here is an architecture of CORBA, this is an architecture which handles a series of jobs like object allocation, object implementation, object execution state, object communication mechanisms and etc. We will see the details of architecture. Here is an ORB core which carries out the request reply protocol between client and server. Client adapter bridges the gap between CORBA objects and programming languages interfaces for of the slave classes. Then skeletons. Skeletons is an Ideal compiler generates skeleton classes in the server's language. Client starts it generated by an Ideal compiler in the client language. Now we will see the implementation repository. It activates registered servers on demand and locate servers that are currently running. Then interface repository it provides information about registered Ideal interfaces to the clients and servers that require it. Now we will see the object implementation of CORBA. Here client stub and implementation skeletons are generated to enable static invocations to objects. The stub make calls on the rest of the ORB using interfaces. The skeletons provide a call interfaces for accessing objects. The server must perform the following in terms of it creates the required objects, notify the CORBA environment that is ready to receive the client request, process the client request by dispatching the appropriate servers and in this way the CORBA object implementation has done. Now we will see the basic steps for the CORBA development. First create the idle to define the application interfaces, translate the Ideal, compile the interface files, complete the implementation, again compile the implementation, link the application, run the client and server. We will see the details of these basic steps of CORBA development. In the first step the term idle compiler is often used but the Ideal is actually translated into the programming languages. In the second step here in this example Ideal is translated into C++, third step here once the Ideal is translated into the appropriate language these interface files are compiled and prepared for object implementation. In the fourth step the object is a complete client server implementation. Then fifth once the implementation class is complete the client interfaces are ready to be used in the client application and can be immediately incorporated into the client process. Since all the object code from the steps 3 and 5 has been compiled we want to see in the sixth the object implementation classes need to be linked to the C++ linker. Once linked to the ORB library in this example ORB express is there. So two executable operations are created one for the client and one for the server. Then in the last step the development process is now complete and the client will now communicate with the server. The server uses the object implementation classes allowing it to communicate with the objects created by the client request. Now we will see the key benefits of CORBA. Hardware interoperability is there to make better use of distributed computing it having development language interoperability object oriented development is there having application interoperability and reuse a predefined basic architecture is there having access to CORBA services and CORBA facilities are there. Now pause the video and write down your answer state the importance of CORBA ideal for distributed objects. The CORBA ideal allow the development of language and location independent interfaces to the distributed objects here application components can communicate with one another no matter where they are located or who has designed them. So CORBA provides the location transparency to be able to execute these applications. Now we will see the advantages of CORBA maturity so in terms of maturity it managing the platform which is a platform open for all again in terms of it is an open standard for all having wide platform support having wide language support it is having a efficiency is great scalability is more so these are the list of advantages of CORBA. Now we will see the disadvantages of CORBA. CORBA disadvantages are it is a firewall unfriendly it regarded as complicated as in terms of the other platforms there is no particular standard to get the initial reference for the naming services so there is no official Perl making is possible so these are the few list of CORBA disadvantages. Now we will see the references which I have referred for this particular topic here are the list of references. Thank you one and all. Thank you.