Siebel CRM – Back to Basics (Siebel Architechture).

In a perfect world this would have been my first article. But this world is not perfect and as the saying goes ‘Better late than never’ here it is.

I will approach Siebel Architecture in a different way. Then I will take each technical term used in this article that is important and requires further exploration and explain it further in next articles of Back to Basics series.Ever wondered what happens once you have put the URL of your siebel Application in the browser and hit enter?

This is different approach to Siebel Architecture. The answer to this question will be an explaination of Siebel Architechture. So, Let’s start.
==> You have opened your browser window and have enterned the URL and Clicked Go button of your browser window
http://yourseiebelapp/apptype_lang/start.swe
Before going into background I would like to explain or dissect the above given URL.

http : Is the protocol that is being used to transfer the data over web from one computer to another.
yoursiebelapp : is the host name of the Web Server on which your Siebel Component resides. We will go into details of these components later
apptype_lang can be divided into two parts
apptype : Represents the module you are using can be sales, callcenter, mkt etc.
lang : Represents the language of your implementation can be enu, fin etc.
start.swe : It might be used or might not be used but represents a command recoganized by siebel component called ‘SWSE’ which stands for Siebel WebServer Extensions.

Now we know the meaning of the URL we have just entered we will move behind the scenes.

==> The Request goes to the Webserver (Discussing Webserver is out of scope for this post) where an important component resides called Siebel Webserver Extensions (SWSE).


SWSE :
The responsibility of this component is to identify if the request that has arrived on webserver is a Siebel request or not and also it helps to format the html pages that are server to the Web Clients of siebel. It also supports Load balancing if you have more than one siebel server which generally is the case.
==> If the request received is a siebel request then SWSE contacts Siebel Gateway Name Server to obtain information about Siebel Servers and Siebel Enterprise Server.
Ā 

Siebel Gateway Name Server (SGNS):
SGNS can be considered as Sieber Server contact information storehouse for all the siebel servers. It serves as the dynamic address registry for Siebel Servers and components. At start up, a Siebel Server within the Siebel Enterprise Server stores its network address in the Gateway Name Servers nonpersistent address registry.
It also has a important file called siebns.dat containg information of Siebel Servers such as
1. Operational parameters
2. Connectivity information
3. Definitions and assignments of component groups and components

Siebel Enterprise Server (SES) :
SES is not a physical server it is just a logical entity in simple terms SES is a logical grouping on serveral siebel servers such as Siebel Server shaing one database can part of SES.

The Siebel Servers in a Siebel Enterprise Server are configured, managed, and monitored as a single logical group which helps the Siebel Administrator to start, stop, monitor, or set server parameters for all Siebel Servers within the Siebel Enterprise Server.

==> Once the SWSE gets information about Siebel Server it forwards the request to the Siebel Server on Round Robin basis due its load balancing feature.

Siebel Server (SS) :
Siebel Server is the system on which Siebel Server Components are installed and it functions as Application server. Each server component performs a defined function.Server components or groups of components determine what applications and services a Siebel Server supports. The Siebel Server runs as a system service under Windows and a process under UNIX. This system service or process monitors and controls the state of all server components on that Siebel Server. Each Siebel Server is one instantiation of the Siebel Server system service or process within the current Siebel Enterprise Server.

==> Once the request is received by siebel server it is passed to a component called Application Object Manager (AOM)

Application Object Manager (AOM) :
One of the most important types of server components is the Application Object Manager (AOM).They process user requests and are application or service-specific. For example A Sales Application will have Sales AOM and Call center application will have a Call Center AOM.This Application Object Manager provides the session environment in which this application runs. When an AOM receives a user request to start an application, it does the following:

==> The business object layer starts an application user session, processes any required business logic, and sends a data request to the data manager.

Data Manager (DM) :
Data Manager is that another component that is a part of AOM. Its primary function is to receive user request create corresponding SQL and Forward it to database Server. It also receives results from Database server and forwards it to Siebel Business Object Layer for additional processing.

==> Siebel Business Object Layer forwards the results to Siebel Web Engine (SWE) another component residing in AOM.

==> SWE helps create UI for the data and forwards the web pages to the SWSE Component which resides on Web Server.

==> Webserver then sends back the results to the users who had intially requested it.

110 Responses to Siebel CRM – Back to Basics (Siebel Architechture).

  1. Hello ,
    when we talk about Siebel architecture.we can define siebel architecture in three ways.
    1.Siebel Operational Architecture
    2.Siebel Interface Architecture
    3.Siebel Object Architecture

    “siebel Operatinal Architecture” : when a client send request to server.how it works is come under Siebel Operational Architect , when a client request , it comes to SWSE and SWSE has SISNAPI interface to directly talk with AOM through Gatewayserver.SWSE invoke session manager that handle SISNAPI request.We can set SISNAPI ideal time at Server level AOM.SISNAPI approaches to AOM and AOM reads Srf and choose apropriate Template.and data manager fetch data from underlying DB and Mapp data with template and generate HTML and send back to clinet.this is overview of Operational Architecture.
    “Siebel Logical Architecture : : Like base for View is Business Object and Bo is collection of BC.BC is association between columns of tables.Screen is collection of Views and application is collection of Screen.Links , joins are also part of logical architecture.

    “Siebel Interface Architecture : : 1. COM
    2.CORBA
    3.Com Server
    4. Java

    I am not quite sure about above only. We could access Siebel through COm object.Even when we access Siebel through IE , it first down load Active x Control thoese are also part of COM.

    Above is just my understanding.

    Regards,
    Danish

  2. Hello ,
    when we talk about Siebel architecture.we can define siebel architecture in three ways.
    1.Siebel Operational Architecture
    2.Siebel Interface Architecture
    3.Siebel Object Architecture

    “siebel Operatinal Architecture” : when a client send request to server.how it works is come under Siebel Operational Architect , when a client request , it comes to SWSE and SWSE has SISNAPI interface to directly talk with AOM through Gatewayserver.SWSE invoke session manager that handle SISNAPI request.We can set SISNAPI ideal time at Server level AOM.SISNAPI approaches to AOM and AOM reads Srf and choose apropriate Template.and data manager fetch data from underlying DB and Mapp data with template and generate HTML and send back to clinet.this is overview of Operational Architecture.
    “Siebel Logical Architecture : : Like base for View is Business Object and Bo is collection of BC.BC is association between columns of tables.Screen is collection of Views and application is collection of Screen.Links , joins are also part of logical architecture.

    “Siebel Interface Architecture : : 1. COM
    2.CORBA
    3.Com Server
    4. Java

    I am not quite sure about above only. We could access Siebel through COm object.Even when we access Siebel through IE , it first down load Active x Control thoese are also part of COM.

    Above is just my understanding.

    Regards,
    Danish

  3. Hey experts I have a question.
    I am quoting a line from Siebel bookshelf which i didnt quite understand.

    “A notification mechanism between SWE(Siebel Web Engine) and the object manager is used so that when one applet modifies data in any business component, all other applets are notified immediately so that they
    can update their data on the screen.”

    Help me with this.

  4. Hey experts I have a question.
    I am quoting a line from Siebel bookshelf which i didnt quite understand.

    “A notification mechanism between SWE(Siebel Web Engine) and the object manager is used so that when one applet modifies data in any business component, all other applets are notified immediately so that they
    can update their data on the screen.”

    Help me with this.

  5. HI, The Article is very good. I have one question. Once user enters the URL and clicks enter, Login window appears, user enters login credentials, where (which part of architecture) and when the login credentials validated against DB?

  6. HI, The Article is very good. I have one question. Once user enters the URL and clicks enter, Login window appears, user enters login credentials, where (which part of architecture) and when the login credentials validated against DB?

  7. Thanks Saraswathi,
    This is an excellent article, double thanks and wishing you success. I’m a loadrunner architect sneekng to understand siebel architecture for future project. let me know if you can help me with osme materials. thnaks

    prasanna_tr@yahoo.com

  8. Thanks Saraswathi,
    This is an excellent article, double thanks and wishing you success. I’m a loadrunner architect sneekng to understand siebel architecture for future project. let me know if you can help me with osme materials. thnaks

    prasanna_tr@yahoo.com

  9. hi
    The article was excellent
    can you please send me material to my id i would like to read more of ur prepared material as u have explained it very simple and upto mark.
    my id is kishore.friendofall[at]gmail.com

  10. hi
    The article was excellent
    can you please send me material to my id i would like to read more of ur prepared material as u have explained it very simple and upto mark.
    my id is kishore.friendofall[at]gmail.com

  11. It is very simple and informative . but if you could have more elaborative , it would have been great. any ways its realy good.worht reading……………..

  12. It is very simple and informative . but if you could have more elaborative , it would have been great. any ways its realy good.worht reading……………..

  13. Its really a wonderful way of sharing knowledge.. The explanation given here are just simply superb and easy to grasp for anyone new.. Keep up the good work.. its too much helpful..

  14. Its really a wonderful way of sharing knowledge.. The explanation given here are just simply superb and easy to grasp for anyone new.. Keep up the good work.. its too much helpful..

  15. Hi,

    You stated the above lines in a very good manner,the basic understanding of siebel is very much clear from that.
    I will be very glad if you provide the more details of Repository, SRF and Browser scripts and webtemplated. How are they worked in siebel?

  16. Hi,

    You stated the above lines in a very good manner,the basic understanding of siebel is very much clear from that.
    I will be very glad if you provide the more details of Repository, SRF and Browser scripts and webtemplated. How are they worked in siebel?

  17. This approach is really good and very easy to understand. i have read the siebel ppts whereas i couldnt get related all in one whereas this approach is solved my doubts.

    Thanks

  18. This approach is really good and very easy to understand. i have read the siebel ppts whereas i couldnt get related all in one whereas this approach is solved my doubts.

    Thanks

  19. I am having experience in Java/sql and moving to Siebel. Its a good start up i did. I understand the basics very clearly.

    Kudos to the author of the post šŸ™‚

  20. Really a fantastic article and useful too…thanks for the post..
    btw..is there any architectural diagram??

  21. Let me add something here…Once the SWSE receives the request it * does not contact* the Gateway it invokes it own config file called the eapps.cfg, from where I mean the eapps.cfg it internally calls the Lbconfig.txt…This lbconfig.txt file has the details of the server like its hostname and the port on the server where it has to throw the request…

    • True gateway is not required when the Sibel and is up and running. It is only required when Siebel restart happens to read the configuration (Siebel server then stores a config locally untill next restart). Which is good and avoids single point of failure every time gateway goes down.

  22. As pointed out by Anand Agarwal in his comment, the SWSE does not contact the Gateway. This was true for Siebel 7.5 and earlier versions, where the Gateway was mentioned in the SWSE’s eapps.cfg file
    From 7.7 onwards, the Gateway is no longer mentioned in the SWSE’s eapps.cfg file. Instead the SWSE directly calles the Siebel Conection Broker. Moreover, once this coonection is established, it diectly calls the AOM for all further requests.

  23. hi this is rajesh kandhukuri…..
    its a wonderfull article which hepls the inItial stage students.
    thank you very much and keep posting like this .

    regards
    rajesh.k

Leave a Reply

Contribute