Search

Siebel Web Architecture Overview

Click On the Image to get Clear view

Siebel Web Architecture Overview

Logical Architecture



Browser Access

Client browser access might be different depending on client deployment.

Differences in the Siebel clients will be explored in the next module.

Siebel Clients
WML

WML (Wireless Markup Language) is intended for use with narrowband

devices, including cellular phones and pagers.

Web Server and Siebel Web Server Extension

Stateless Connection

The Siebel Web Server Extension connection to the Object Manager is

stateless. This allows sessions to be dynamically load balanced across

Web servers at the HTTP request level. It also improves Web server

scalability and availability.

Image Cache
Gateway Server: Name Server

The Gateway Server
The G
ateway Server runs as a Windows service or UNIX daemon

process

Clustered Environment

The Gateway Server can be run in a clustered environment to provide

redundancy and avoid a single point of failure.

Gateway Server: Connection Brokering

Exceptions
Mobile and handheld Web clients connect directly to the Siebel Server.
These clients are covered in more detail in the next module.
Load Balancing

To enable optional load balancing, Resonate must be installed.

Siebel ServerServer ComponentEnterprise ServerObject Manager


Data Manager

Performance

The Data Manager uses optimal database-specific queries to enhance

performance:

• Uses database-specific client access libraries for the best

performance

• Takes advantage of database-specific functionality

• Optimized to return only fields necessary for a specific request and

manages large result sets by caching a larger working set.

Database Server
Siebel Web Engine


Markup Languages

Hypertext Markup Language (HTML), Wireless Markup Language (WML),

and Extensible Markup Language (XML) are used to define content and

presentation in a browser.
Siebel File System

Web Usage Scenario

Overview: Logical Server Architecture

Physical Architecture


Interview Questions on Siebel Part 1

Interview Questions on Siebel

1. What is the use of catch in escript?
Ans - The catch clause is used to handle the exception. To raise an exception, use the throw statement. When you want to trap potential errors generated by a block of code, place that code in a try statement, and follow the try statement with a catch statement. The catch statement is used to process the exceptions that may occur in the manner you specify in the exception_handling_block. The following example demonstrates the general form of the try statement with the catch clause. In this example, the script continues executing after the error message is displayed:
try {
do_something;
}
catch (e) {
TheApplication().RaiseErrorText(Clib.rsprintf("Something bad
happened: %s",e.toString()));
}

2. What is constrained picklist? Where you will drop the constraints? What is originating BC? What is pick BC?
Ans - It can be done using Pickmaps in the field property of BC field.

3. How will you edit the joined fields’ values in join?
Ans - Join field can be updated by configuring either dynamic picklist or MVG Applet on the field.

4. How will you improve your performance in views?
Ans - To improve performance of View
1. Reduce configure number of applet, Outer join, MVG2.
2. Use Most probably Less no. of applet, Business component,

5. What is Virtual BC? what is the use of vbc?
Ans - If we want to show data in the applet from other than Siebel database we use VBC.

6. Define a Siebel file system?
Ans - Siebel file systems saves the Sales Tools and Siebel literature.

7. How is Siebel 7.x architecture different from Siebel 6.x?
Ans - Siebel 6.x :
1. No S_PARTY table
2. Not web enabled
3. Employee data get used to store in S_EMPLOYEE table & contact data used to store in S_CONTACT table. Accounts data is stored in S_ORG_EXT data will be stored in S_ORG_INT, S_BU
Siebel 7.x :
1. S_PARTY table is introduced
2. It is web enabled
3. S_EMPLOYEE deprecated & both emp & contact is stored in S_CONTACT
4. S_ORG_INT is deprecated & both accounts & organization data will be stored in S_ORG_EXT table only

8. How is load balancing maintained in Siebel?
Ans – 1. Through Resonate Central dispatch.
2. Through the gateway server in case of web and wireless web clients.
Load Balancing is basically one of the Performance Improvement Strategy

9.Describe a Resonate?
Ans - Resonate is a load Balancing Software that reduces the LOAD ON Siebel Servers by sharing the Web Clients to other Siebel Servers.

10. What is nameserver? What does it do?
Ans - Name server is the service which is running on the web server. Name server stores information of the Siebel server & Siebel components in the file called siebns.dat. While booting & starting Siebel server, Siebel server gets its information from this file.

11. Is it required to install gateway server before installing a Siebel server?
Ans – yes

12. What does install.ksh and imprep.ksh files do?
Ans - Imprep.ksh : This is a database Unix shell script provided by Siebel for importing all your sif files in Siebel repository. It is automatically run while installing Siebel and it prepares Repository file in tools.

Install.ksh : contains all manually applied installation files.


13. What is s_party table?
Ans - It is a base table for all party entities, now the s-org_ext, s_contact becomes the extension tables for s_party. It is a base table for all party entities (Organization, People, Access rights).

14. Define seed data in Siebel?
Ans - Data, which is loaded during Siebel installation, is called Seed data.

16. How do you create intersection table?
Ans - we can create intersection tables through wizard

17. What is an extension table and how is it related to base table?
Ans - Extension table saves the Additional Data for the base table. one base table row can have one or multiple rows in Extension Table.

20. What is the relationship between a view and a b/o?
Ans - The relationship between the view and B/O is one to one
(ie) one view can refer only one BO.

22. What do you mean by virtual business comp in Siebel?
Ans - Virtual Business Component used in Siebel to see the External data in the Siebel Application.

23. What is the new layer in Siebel 7.x version?
Ans - Physical interface layer

24. What is the relationship between opportunity and account?
Ans - The Relation between the Account and Opportunity is one to many like one account can have multiple opportunities.

25. What are the uses of opportunity, account contact in Siebel?
Ans - Account is the customer with whom we do business, Contact is the Particular person in that Organization. Opportunity is the Potential Revenue Generating event.

26. What is position type field in position applet?
Ans - Informational field that indicates the type of position. It has no effect on visibility.

30. By what way do you give Responsibilities to employees in Siebel?
Ans - Need to go to the particular application like sales, call center. Log in as Administrator, and then go to - sitemap – Administration - User > Employee, add new Employee, Click on reponsitibilities field to give responsibility to employee.

31. in Siebel, what 'position' stands for?
Ans - Job title which has the record level access

32. Differentiate between an organization and division?
Ans - Organization can have multiple divisions. A division is the top hierarchy for Person or Position.

33. By what way do you control Visibility in Siebel?
Ans - visibility will be controlled by Position and Responsibility in Siebel. Position dictates the Data level visibility and the Responsibility dictates the view level visibility.

34. What is the difference between MVG & Dynamic Picklist?
Ans - In MVG , u can enter new records, but whereas in dynamic pick list u can enter values from LOV tables.....MVG-single field having multiple values Dynamic Pick List-based on BC's and LOV Tables

35. How to create Drilldown in Form applet?
Ans - you can not create a drilldown in form applet

36. What are the differences between Fields and single value fields?
Ans - SVF- a field in BC which references a column in a table
MVF- a field in parent BC which references a field in child BC.
Field- Identifies and defines a field in a BC.
All fields making up a business component record contain entries from both Single Value Field and Multi Value Field object types. Multivalue field has the child values from a child BC for the parent record configured through MVL. Single value field will be either from the base table or joined table.

37. What is difference between bounded and unbounded picklist?
Ans - Bounded Picklist, picks values from only from S_LST_OF_VAL (LOV) tables. It means that u can only pick values and cannot enter free text.....whereas in Unbounded picklist u can enter free text.

38. What is link specification?
Ans - If a Link Specification is set on a parent BC Field, its value is passed to its child BC field as PreDefault value.

39. What is complex join?
Ans - Complex joins are joins which have following differences from a PK-FK joins……….
Complex joins can have conditional mappings like >, <,>=, NOT, AND etc apart from '=' whereas the PK-FK joins are always '=' PK-FK joins are always (1-N), whereas complex joins can have (1 - 0,1) and (0,1 - N) kind of relationships.
Complex join: - complex join are used in physical layer in between two tables where ever that do not involved primary key and foreign key relationship.

40. What is Localization?
Ans - Modify the object definitions in the local repository. Localizations refers to adapting a particular program to a specific locale…………….Siebel application can be localized translating and resizing elements in the user interface.

41. What is siebmtsh.exe?
Ans - Siebmtsh.exe is a process created when you bring up Siebel servers, depending on the number of object managers that are enabled the number of siebmtsh.exe processes increases.

42. Siebel Tools
Ans - Siebel Tools is an integrated environment for configuring all aspects of a Siebel application so that a single configuration can be (1)Deployed across HTML clients , (2)Used to support multiple Siebel applications and languages, (3)Easily maintained (4)Automatically upgraded to future Siebel product releases Siebel Tools is a powerful object-oriented, Web application development environment designed to meet the customization needs of sales, marketing and customer service information system deployment.


Name the three layers?
• User Interface
• Business Object Layer
• Data Management Layer

Where is the Siebel Web Server Extension?
• On the Web Server

What is it?
• A type of program that executes on a Siebel Server to perform a specific function or job

Server Component
What is it?
• A logical collection of Siebel Servers

The Enterprise Server
Name the Client
• Does not require Siebel software installation

Web and Wireless Web Clients

What is necessary to set up a developer?

• Install appropriate server client software
• Install and verify the Tools client
• Create the developer
• Create the database user login
• Generate the local database template
• Extract the local database
• Initialize the local database
• Populate the local database

What is the name of the SQL script used to create database logins for users?
• Grantusr.sql
Projects
What is it?
• Are named sets of object definitions in a repository
– Only one version of a project exists in a repository at a time
• Are a mechanism to organize object definitions so that a single developer can exclusively work on them as a group

True or False
• If an object definition is validated, then it will work correctly in the runtime client.
False
• ANSWER:
– The validation feature in Siebel Tools determines the correctness of selected object definitions in the repository.
– It does not ensure that your changes will work correctly in the runtime client.
When files are archived, what is the file extension set to by default?
• .sif
What do Web Templates do?
• Specify the layout of the Siebel application
• Are used by the Object Manager to build the Siebel UI at runtime
• Used to layout logical UI definitions in
– Web Pages
– Views
– Applets



• How do you control visibility in Siebel?
• What is the difference between an organization and division in Siebel?
• What does position represents in Siebel?
• How do you assign responsibilities to employees in Siebel?
• How do you set up employees in Siebel?
• What happens if you create an employee in Siebel application and forget to create the employee in the database?
• Why do you need to create employees at the database in Siebel?
• What is position type field in position applet?
• What does an opportunity, account contact do in Siebel?
• How is the opportunity related to an account?
• How is tools architecture constructed in in Siebel?
• What is the new layer in Siebel 7.x version?
• What do you mean by virtual business comp. in Siebel?
• How does your b/c and view related?
• What is the relationship between a view and a b/o?
• Why is it not recommended to modify existing base tables?
• How do youcreate extension table to an interface table in Siebel?
• What is an extension table and how is it related to base table?
• Can you create an extension table with an intersection table?
• How do you create intersection table?
• How is Siebel 7.x data model is different from Siebel 6.0 data model?
• What is seed data in Siebel?
• What is s_party table?
• What does install.ksh and imprep.ksh files do?
• Is it required to install gateway server before installing a Siebel server?
• What is nameserver? What does it do?
• What is Resonate?
• How is load balancing maintained in Siebel?
• How is Siebel 7.x architecture different from Siebel 6.x?
• What is Siebel file system?

Siebel Questions

1. What is foreign key table in Siebel?
2. Why do you need Primary in MVG?
3. When do we use genbscript.exe?
4. If a view has Admin Mode Property = True, then what will happen to User Properties we write on them.?
5. When do you use "CanInvoke(False/True)" method in scripting.
6. When do you use Property Sets in Siebel.
7. What is Client Business Service?
8. When do we go for Dynamic PickList and for Pick Applet?
9. Pick Applet, Dynamic Picklist: which will be better if performance issue is considered.
10. How do you create the siebel developer clinet (mobile client)
11. What is eapps.cfg file. and what is its significance.
12. Is it possible to have multiple database servers for one gateway server.
13. What is the function of SWSE on the Web Server? What is it?
14. What is the "Parent Category" property for a Screen View?
15. What is horizontal and vertical in siebel?
16. Why do we use Symbolic Strings in Siebel 77
17. How do you specify a view to be displayed as aggregate view in Siebel 7.7
18. When you have Pre Default Value and Post Default value for a Field, which one will be stored in the Databas
19. What is All Mode Sort?
20. What does Business Component User Mode indicate

Question #26
------------
If there are five positions on an opportunity sales team and no valid primary position assigned for the opportunity, which statement is true?

A. Only those five positions on the team have visibility to the data.

B. Everyone on the team can forecast the opportunity.

C. Anyone with an Opportunity All List view has visibility to the data.

D. Only those with the Marketing Administration Opportunity List views have visibility to the data.

The correct answer is 'D'. This is true even when you intially import data through EIM without teams or individuals or positions assigned to the entities.


Question #27
----------------
Which of the following are true about the Siebel Repository File (.SRF)?
(Choose Two)

A. It is stored in the ?\Bin folder of the Siebel Enterprise Application client installation.

B. It is written to by the Siebel configuration file.

C. It is created by the Siebel Object Compiler that contains object definitions in a compressed, binary format.

D. It provides faster access to the object data than would be achieved if reading the definitions from the database.

The correct answer is 'CD'. Obviously, 'B' is not answer and so is not found in the bookshelf. Option 'A' too is incorrect.

Question #59b
----------------

Assignment Manager uses a scoring system to assign service requests to qualified service representatives. If the call center's business rule is that the service request (SR) should go to the least-laden rep first before escalating the SR to rep with product-specific skills, which depicts a likely scenario in configuring the Assignment Rules?

A. Minimum score: 50; Workload: 50

B. Minimum score: 50; Workload: 50; Product Wildcard: 40

C. Minimum score: 50; Workload: 30; Product Wildcard: 20

D. Minimum score: 50; Workload: 40; Product Wildcard: 10

Option 'A' does not take the service rep's product skills into account and so is incorrect. Option 'C' and 'D' will not work because, workload being the most important criterion, it should have a score equal to or greater than the minimum. Otherwise, when Assgn Mgr executes, it will evaluate a serv rep and will not assign if the total score falls below 50. Logically, a service request should not go unassigned and hence, workload is given a score of 50. Hence, option 'B' is the best fit.

Question #67
--------------

Which two additions are possible using standard database extensibility against all currently supported server databases? (Choose two.)

A. An extension column to an existing public base tab

B. An extension column to an existing extension table

C. A one-to-one extension table to an existing public base table

D. A one-to-many extension table to an existing enterprise visible base table

You need to read through chapter 11 of the Siebel Tools Guide in the bookshelf CD-ROM and form your own opinion for this question. I agree that its tricky.
I took the exam last saturday and cleared it. It seems easy enough. You will need a common-sense approach to most of the questions. The time of 90 mins is more than adequate.

Siebel Analytic Questions

1>Which ETL tool you used for data loading?

2>Name the databases you have worked on?

3>What are the levels of security?

4>What is the difference between Roles and Responsibilities in Siebel.

5>Describe the architecture of Siebel analytics?

6>What are Facts and Dimension tables.

7>what is an initialization block?

8>How to create a dashboard prompt?

9>What is a complex join? Give an example of many to many complex join.

10>Questions regarding datawarehouse.

11>Your role and responsibilities in this project.

12>Questions regarding datamart.

13>What is authentication? In web as well as rpd.

14>what are fact and dimension tables?

15>How did you do Data Level Security and what are the different ways of
doing it?

16>What is a snowflake schema and have you worked on it?

17>What are the tasks you did as Analytics Administrator and how?

18>How did you do Cache management?

19>How did you handle security management?

20>How did you do multi-user development environment setup?

21>Were you involved in the design phase and what did you do?

22>How did you do performance tuning?

23>What kind of data source do you have in your project and how did you
connect to it?

24>What happens when NQQuery log file is full?

25>Which component schedules, monitors, configure ETL routines?
Ans: DAC client.


26>How can you purge the cache?
Ans:
a. Use cache manager
b.setting the Cache Persistence Time in the Physical Table dialog box for
a particular table
c.use event polling tables

27>a) Can one presentation catalog refer to multiple business models?
Ans: No
b) Can multiple presentation catalogs refer to one business model?
Ans: Yes

Using Picklists and Multi-Value Groups


Using Picklists and Multi-Value Groups

Picklist
Select a single value for a field in a record

Multi-value group (MVG)
Associate one or more values to a field in a record

More Examples of MVGs
  • Multiple addresses can be associated to an account
  • Sales teams can be made up of many team members
  • An opportunity can have multiple sources, such as phone call, trade show, or conference
  • Multiple employees can be assigned to an activity
Drop-Down Arrow
The drop-down arrow indicates that data can be selected from an available source, such as a picklist, calendar, or calculator.

Select Button
Clicking the select button in a field accesses a dialog box, which provides a list of records from which to select.

Querying for Data
Use a query to retrieve specific data











What is a Query?
A query retrieves information from a database, allowing you to:
  • Locate one or more records that meet specific criteria
  • Create a subset of data for viewing and reporting
  • Refresh the view to updated information
Query by Example (QBE)
Siebel eBusiness Applications support QBE, which helps you quickly and easily find the information you are looking for.

Query Operators
  • Wildcards (asterisks) can be used to search for multiple characters, for example
* Ma* will find Madrid, but not San Mateo
* *Ma* will find Madrid and San Mateo
* cannot be used in date or numeric fields
  • <= (less than or equal to) can be used on numeric or date fields
  • <> (not equal to) can be used on all fields
  • OR allows entry of more than one value for a field












Null Criteria
Running a query with no criteria will return all records in the list. This is also a way to refresh your screen to see the most current information.
Refining Queries
Use Refine Query to modify an existing query











Saving Queries
Use the application-level menu to save a query










Application-Level Menu
You must use this menu to save queries. Optionally, you can perform the other query functions from this menu, such as creating a new query,
refining an existing query, and running a query.

Saving Queries
By default, queries are saved as private queries, and are only available to the user who created them.

Using Favorites
Favorites are available queries
Queries created and saved by the user
Predefined queries provided by your administrator













Predefined Queries
Navigate to Application Administration°Predefined Queries to view predefined queries for the application.

Sorting Data
Click the Sort icon in a column to sort data in ascending or descending order















Keyboard Accelerators
Provide an alternative to mouse clicking for performing
commands
Also known as keyboard shortcuts
Two modes
Basic
Extended












Extended Mode
This mode makes use of a small ActiveX control downloaded one time to the browser when starting the Siebel application. Extended mode allows the ability to map any key sequence to Siebel commands. This is the default setting and is the most commonly used mode.

Basic Mode
This mode is for users who 1) Do not wish to download the ActiveX control to their browser client, or 2) Use browsers that are not able to accept and run ActiveX controls. Limitations are that you cannot map any key sequences that are already used by the browser, and you cannot map any key sequences that use special keys (such as function keys and up/down arrow keys).

Controlling UI Presentation: Columns
Click the menu button and select Columns Displayed












Controlling UI Presentation: Show More
Toggle the list or form to show more or less detail for a record


Using the Siebel Client

Home Page



This is an example of a typical home page for a Siebel employee application.


Navigating the UI
Clicking on different UI elements navigates to different data.



Screens

Clicking a screen tab navigates to a functional area of the application, such as accounts, contacts, service requests, assets, campaigns, and so on. Screen tabs indicate the most commonly used screens. To access all available screens in the application, use the application-level menu and
select View Site Map.

Show Drop-Down
Clicking here will show a subset of data for the functional application area.
View Tab
Clicking a view tab shows data related to the selected record. For example, clicking the view tab Account Team will show the account team for the account Perrier Group of America.

Selected Record
The selected record in a list is highlighted with a contrasting color.
Screens and Views
Screens and views show business entities and related data


Show Drop-Down
Shows a subset of data for the functional application area. Click a selection in the drop-down list to navigate to a different subset of data.

Navigating Through Lists and Forms
Use next or previous record set buttons or menu button





First Record
Selecting First Record in the menu will navigate to the first record in the list.

Last Record
Selecting Last Record will navigate to the last record in the list.

Drilling Down for More Information


Hyperlinks
Hyperlinks can be configured using Siebel Tools.
Navigating Through Views and Screens


Back and Forward Arrows
These are the arrows available for navigation in the Siebel application. Do not confuse them with the browser back and forward arrows, as behavior is very different.

Thread Bar
The thread bar shows your:
• Location among screens and views
• Path as you drill down on a record


Working with Data in the UI
There are several mechanisms for working with data, such as:
  • Application-level menu
  • Menu buttons
  • Creating and modifying data
  • Picklists and multi-value groups
  • Queries
  • Favorites
  • Sorting
  • Keyboard accelerators
Application-Level Menu
This menu applies to the entire application and shows available actions


Menu Items
Menu items might vary depending on the Siebel application you are using. These menu items are available in the standard Siebel Call Center application.
High Interactivity UI
The application-level menu is available only in the high interactivity interface.
Using Menu Buttons
Menu buttons show available actions for lists and forms


Menu Button
The menu button displays a menu of actions available for the list or form. Notice that some of these actions are also available from the application- level menu. The menu button is available only in the high interactivity interface.
Creating Data
Click menu button or New to create a new record


Creating New Record
Clicking the New button or choosing New Record in the menu renders the same results in the UI. A field with an asterisk means it is a required field for the record.
Undo and Delete Record
If a record cannot be undone or deleted, the actions will be grayed out and unavailable to the user. Click menu button or New to create a new record.
Modifying and Saving Data
Modify data
  • Select record field in the list or form, and change it
Save data implicitly
  • Click off the record in a list or the field in a form to commit it to the database
  • Available in high interactivity interface
Save data explicitly
  • Click Save to commit the record to the database
  • Available in standard and high interactivity interfaces


Save Button
The presence of the Save button does not negate the implicit record-level commit described above

Introduction To Siebel

Business Entities


Siebel eBusiness Applications use entities to manage business relationships, for example
  • Accounts
  • Opportunities
  • Contacts
  • Service Requests
  • Activities
  • Assets
Entity A business entity is something in the real world in which we have a business interest.

Account
  • Is a business external to your company
  • Represents a current or potential client, a business partner, or a competitor











Opportunity

  • Is a potential revenue-generating event
  • Has the following characteristics
  • Possible association with an account
  • Potential revenue
  • Probability of completion
  • Close date











Contact

  • Is a person with whom you do business
  • Has the following characteristics
  • Name
  • Job title
  • Email address











Service Request

  • Is a request from a customer for information or assistance with
  • a problem related to products or services purchased from your
  • company
  • Has the following characteristics
  • Status
  • Severity
  • Priority










Activity
  • Is a specific task or event to be completed
  • Has the following characteristics
  • Start date and due date
  • Priority
  • Assigned to specific employees for completion









Asset
  • Is an instance of a purchased product
  • Has the following characteristics
  • Asset number
  • Product and part number
  • Status









Types of Applications

Employee
  • Internal application used by employees and partners
  • Examples: Siebel Sales, Siebel Call Center, eFinance
Customer
  • External application used by customers
  • Examples: Siebel eService, Siebel eSales, Siebel eMarketing
Partner
  • External application used by employees and partners
  • Example: Siebel eChannel
  • There are two types:
    • Alliance Partners are partners who team with Siebel Systems in the market.
    • Channel Partners are partners authorized to resell Siebel eBusiness Applications.
Types of User Interfaces (UI)

High interactivity
  • Available for employee applications, supporting highly interactive enterprise users
  • Requires Internet Explorer 5 or higher
  • Available only with Siebel employee applications in the Siebel 7 release.
  • High interactivity relies on Java, JavaScript, and LiveConnect support from the browser.
  • It also requires JavaScript 1.2 Document Object Model (DOM) technology and HTML frame support from the browser.
Standard interactivity
  • Available for customer applications
  • Behaves like traditional Web applications, requiring frequent page refreshes
  • Available for customer applications, when the Web user’s browser is unknown.
Benefits of High Interactivity UI
  • Reduces number of page refreshes
  • User downloads complete HTML page initially
  • Subsequent round trips fetch data required to update page
  • Saves data implicitly by stepping off record
  • No need to click Save button
  • Supports highly interactive graphical UI elements
  • Flowcharts, organization charts, interactive toolbars
Differences Between High and Standard Interactivity

  • The following features are supported only by high interactivity
  • Client-side scripting
  • With access to Siebel objects on the client side
  • Interactive controls
  • Calculator, calendar date/time selector
  • Keyboard shortcuts
  • For frequently used commands
Client-side Scripting

Using Siebel objects, customers can build sophisticated data validation logic on the client side to further reduce the number of page refreshes needed for high interactivity applications.

Interactive Controls

These provide customers with added flexibility to design and customize their applications.

Keyboard Shortcuts

Allow employees to speed up routine tasks and thereby improve their productivity.