What is SOA, Services and Messages? – Part 1

What is SOA, Services and Messages? – Part 1


Welcome to the questions and answers series for windows Communication Foundation or in other words we can say WCF and let us start with question number 1 what is SOA services and messages the first thing which you must be thinking is that why we are be discussing about SOA when the questions and answers series is for WCF that is windows communication foundation in today’s world in today’s IT world specially in IT projects SOA has come up as a very accepted architecture because of it’s loosely coupled style loosely coupled messaging etc. so every programming language for example it is JAVA or .NET they try to scatter to the SOA style of architecture and definitely Microsoft also need’s to do something so that his programming community can benefit from SOA so WCF is a methodology or WCF is a technology is not only WCF basically we also have WWF that is windows workflow foundation so using WCF and WWF you can build up a SOA style of architecture so what will do is that will first discuss about SOA and then will see that how we can use WCF to implement SOA before we start to discuss about service oriented architecture and his principles what will do is that will move back to 1980where people talk in terms of functional programming so people coded in terms of functions and basically they also put down some best practices like top to down approach so in other words always the entered function like example take input as entered function here which is the first entry point if it is calling add number then it should call in a waterfall fashion and add number should again pass back the control to the main function so in other words no function should hopping between using go to or etc. always go in a top to down fashion then the other programming best programming practices let down was like don’t code to with functions basically code them in a logical manner so that it can be mentioned so etc etc… everything was good in functional programming era i think some of the best IT application where made in those era and they are still alive But they were two big issues with functional programming first was maintainability or i can say rather understanding somebody’s else code for example if i take up a old COBOL code or C code and if i want to understand that program it was really difficult because everything was in terms of functions so you can not really map to the real world and try to understand that what’s happening that was the first problem the second problem was reusability it is not the point that reusability was not there for example if you take up a C program if you take up a C language compiler you can reuse the function by putting that into a C file and then using the include key word but the it was a physical include so in other words you need to include the whole file into the main source file which needs to basically reuse that program or the function the reusability thing was not so flexible and the first important point was maintainability so people move toward 90 and reusability was the agenda and people cam out this something called as object oriented programming so people said or i will say the IT programming the IT programming community side let’s talk in terms of obejcts of real world let’s talk in terms of let’s try to map our source code with the real life objects so with that we can maintain our source code we can give a proper handover to the new programmer so people started thinking in terms of classes and objects so basically you can create a class and that reuse the class again and again creating object of that class so for example i can create a customer class and reuse it again and again creating object of the customer class everything was well in 1990 but on of the point which they forget to think about was was that the class also need to interact outside the application so fro example you can make a class in .NET but if you want to call that class using JAVA it was very difficult because every company’s like example like dot net belongs to Microsoft JAVA belongs to SUN so everybody had there own propriety way of compiling programs and due to this it was ver difficult to call claas made in one language into other language so people said that definitely this is a problem and they said let’s thing in terms of messages so then came 2000 style of programming i will say the 2000 era well people said let’s not talk in terms of classes objects or propriety compiling compiler etc. let’s take in terms of messages now this messages can be in form of XML or in form of CSV etc whatever it is will come to the latter and see that how this messages are standardized in today’s industry so basically probably dot net if you want to call up a dot net function or if you want to create a dot net voucher class so the JAVA application can send the XML message and dot net can read our XML message and create a object of thevoucher class so with this came in lose coupling so now wither DOT NET or either JAVA don’t need to think in terms of there propriety compiling methodology or there objects or dll’s or classes but they need to only thing in terms of messages and then industry decided the programming industry decided then let’s do one thing let’s take up this messages and make them more standardized so that we can interrupt between any programming language one more thinking change other then the messages which we need to bring in is thinking in terms of services so let me first define services services are nothing but there logical encapsulation of self content business functionality this is a very important part services are self content business functionality for instant here i have three services counter, Kitchen and a waiter now basically i can take of the kitchen and attach to a one room bedroom or i can take up the kitchen and attach to some hotel so in other words kitchen is a self content functionality second i can change the kitchen without thinking about the waiter or i can replace a waiter with some new waiter without even changing the kitchen look and fill or without even changing the kitchen structure so in other words the other aspect of the self content functionality should be that we should be able to change and modify those services without even effecting the other services in a isolated manner so basically on a totality we can say that ok we have services and we have messages which help us to communicate between the services now very important point to remember here is that services are not classes and component that is a very thinking shift which we need to bring from the object oriented perspective services are not component or services are not namespaces or services are not group of classes but they are self content working business functionality in order to keep this videos in a small i have divided this video into two parts so that people can downloaded and the same thing have continue to the second part so please see the remaining part of SOA in the second part of video THANK YOU VERY MUCH 🙂

14 thoughts on “What is SOA, Services and Messages? – Part 1

Leave a Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

Copyright © 2019 Toneatronic. All rights reserved.