Siebel Resume Arquitecture
-
Upload
jose-martinez -
Category
Documents
-
view
2.694 -
download
3
description
Transcript of Siebel Resume Arquitecture
1
Essencials
• Arquitecture.• Clients Access.• Setup & Configurations.
2
Business Objects Relate Business Data
A business object (BO) contains information about the relationships between business components (BC)
Represents a collection of BCs and the relationship between them
Opportunity
Account
Product Contact
Account
Business component
Business componentBusinessobject
3
Siebel Web Architecture Overview
• At a high level, the Siebel architecture consists of:– A relational database and file system that store business data– Servers that manage the business data and provide batch and interactive
services for clients– Web clients that access the business data
SiebelFile SystemDatabase
Server
Siebel Servers
Web Server
4DatabaseServer
SiebelFile System
Gateway Server
Browser
Enterprise Server
Siebel Server
Object Manager (OM)• Data Manager (DM)• Capa de abstración del (OM).• Mapea objetos para (OM).• Separa queries de procesos lógicos de
negocio.• Genera especificaciones SQL en
respuesta al (OM).•Business Object (BO)• Procesamiento (BO)• Siebel Web Engine (SWE)• Construye la (UI).• Procesa requerimientos.• Ensambla plantilla para el Framework.• Recibe info de (BO).• Genera Html, XML + Plantilla + Datos.• Entrega la página ya completada.
Siebel Server
Web ServerSiebel Web Server Extension (SWSE) Image Cache
• Ventana al cliente de Siebel.
• Identifica requerimientos para Siebel Server.• Pasa HTML completas para el Browser.
• Publica imágenes en el Web Server.• Descarga imágenes en paralelo.
• Reconoce las URL´s requeridas.• Enlaza con el componente Siebel Server adecuado.
Name Server:• Controla el acceso al Enterprise Server.• Registra los componentes disponibles.• Asigna trabajo a los componentes requeridos por SWSE.• Almacena def. de comps., parámetros, info de conexs. (Siebelns.dat)
File system Manager
Workflow Manager
Conection Brokering:• Requerimientos específicos del componente designado.• Balance de Cargas de Trabajo (Resonate Balance Dispacth)
• Soporta los grupos de Siebel Servers• Intercambia información.• Adm.Servidores desde el Siebel Server Manager.
• Procesan los requerimientos de los clientes.• Controlan los componentes que ejecuta el sistema.• Obtienen info del Gateway.• Ejecutan Servicios (WIN) o demonios (UNIX).
• (OM) crea y procesa datos a multiples niveles:• Data Object Layer (Data Manager).• Business Object Layer.• UI Layer.• Administra recursos y sesiones.
• Almacena datos sin un esquema de base de datos predefinido, basado en manejadores relacionales de bases de datos de terceros (RDBMS).• Soporta Siebel Server a través de lenguaje nativo SQL.• Accesado por (DM).
• Almacena ficheros comprimidos correspondientes a la aplicaciones Siebel.• El acceso es controlado por el File system Manager en el Siebel Server.
Syncs Manager
Comunication Server
• Componentes del Siebel Server.
• Dispositivos móviles y remotos, se controlan desde Siebel Server.
• Instala y Configura en 1era. Fase el Siebel Server #1.
Usuario
Presentación
Lógica de Negocio
Datos
Capas
5
Physical Architecture
• The Gateway Server, Siebel Server, Database Server, and File System can be implemented on one machine or spread across multiple machines
• The Siebel Server(s) should have a high-speed LAN connection to the Database Server
DatabaseServer
SiebelFile System
Siebel ServerGateway Server
Siebel Server
Enterprise Server
High-speed LAN
Web ServerSWSE
FirewallFirewall
6
Client Access Overview
• Access to Siebel data differs based on client type– Web and Wireless Web Clients connect through Web Server– Handheld and Mobile Web Clients connect through Gateway Server– Dedicated Web Client connects directly to Siebel database
SiebelFile System
DatabaseServer
Siebel Servers
Web Server
WebWireless Web
HandheldMobileWeb
Dedicated Web
7
Siebel Repository File (.srf)
• Separate file with object definitions that contain the application configuration– UI objects specify the data presentation– Business objects specify the business rules and processes– Data objects specify the data organization and storage
• Used with Object Manager, builds a Siebel application at run time
Object Manager
.cfg
.srf
Database
Templates
Parameters
Web Clients
Mobile and Dedicated Web Clients
8
Configuration File and Component Parameters
• Contains initialization settings for the Object Manager including: Gateway Server LDAP directory server Enterprise Server File system Repository (.srf) file Database server (data source) Application or server component
Object Manager
.cfg.srf
Database
Templates
Parameters
Web Clients
Mobile and Dedicated Web Clients
9
All Clients
• Siebel architecture supports a mixture all clients
SiebelFile System
Gateway Server
Siebel Server
Component
Object Manager
Siebel Web Engine
Data Manager
Enterprise Server
DatabaseServer
.srf.cfgMobile/Handheld Client
Web ServerSWSE
Web ClientWAP Server
Wireless Web Client
.srf.cfg
.cfg
.srf
Dedicated Web Client
Siebel Web Engine
Data Manager
Object Manager
Web ServerSWSE
10
Essencials
• Authentication.– Internal & External.
• Objects Definitions.• Business Entities.• Local Projects.
11
Credentials
Internal Authentication
• Requires a database (RDBMS) login and password for each user
• Is the default for Siebel applications• Authenticates users accessing one or more
Siebel applications
Siebel Object Manager
SWSE
Web Server
Browser
Siebel Database
Connect using DB account
Encrypt password
1. User provides name and password
2. Password may be encrypted to prevent direct database access
3. Connect to database
12
External Authentication
• Uses an external directory containing user credential and administrative information
• Allows for centralized management of user authentication across Siebel and non-Siebel applications
Credentials
Siebel Object Manager
SWSE
Web Server
Browser
Connect using DB account
Security adapter
Authentication Service
Login
Retrieve DB account and roles
Directory
1. User provides information
4. Connect to database
2. Verify credentials
3. Roles applied to user as Siebel responsibilitiesSiebel
Database
13
External Authentication Continued
• Standard Siebel software provides prebuilt security adapters for LDAP and ADSI – Lightweight Directory Access Protocol (LDAP) is an open network
protocol • LDAP security adapter allows Siebel applications to access standard
LDAP directories– Active Directory Service (ADSI)
• ADSI security adapter allows Siebel applications to access Microsoft Active Directory
14
Object Definitions
• Are data constructs that define elements of the:– User interface– Business logic– Data storage
• Are stored in the Siebel repository, a subset of tables in the Siebel database that contains object definitions
• Are examined, created, and edited using Siebel Tools• Are compiled into the repository file for a configured application
Repository Data
Database
Tools output is input for object manager
Configured Application
.srf
ApplicationObject Manager
ToolsApplication
15
Account
Product
Service Request Action
Siebel Business Entities
• Siebel standard applications utilize a set of Siebel business components that implement a defined business logic
Contact
16
Configuring a Siebel Application
• Configuring is the process of modifying a standard Siebel application using Siebel Tools to meet business needs
• Object definitions are edited and created– Developers do not modify code in siebel.exe– Developers do not write SQL directly
Repository Data
Database
Tools output is input for object manager
Configured Application
.srf
Application
Object ManagerTools
Application
17
Initialize the Local Database
• Synchronize from the Tools client to create the local database (sse_data.dbf) and populate it with user data
18
Copying Projects
• Object definitions in one or more projects can be copied – From the server to the local developer repository (Get, Check Out)– From the local developer repository to the server (Check In)
• Overwrites the version in the destination repository
Server Local
Project
Get, Check Out
Check In
19
Check Out
• Use Check Out to modify object definitions in a project• Check Out:
– Copies all object definitions in project on server to local database• Local copy of project is overwritten by server version
– Locks project on server repository• Prevents other developers from modifying that project
– Locks the project in the local repository• Permits developer to make changes to object definitions in that
project
20
Check Out Continued
• Use Check Out to copy projects from the server to the local repository
21
Check In
• Use Check In when object definitions in project have been edited and tested
• Check In:– Copies object definitions from local repository to server repository– Replaces versions of checked out object definitions with new versions
and unlocks projects• Can also check in object definitions in newly-created projects
– Releases locks on both server and local copies of project• Maintain Lock leaves project locked for further local modification by
current developer
22
Check In Continued
• Use Check In to copy projects from the local to the server repository
23
Archive Files
• Contain object definitions exported from a repository– Available for importing into other repositories
• Have .sif extension by default• Are used to share object definitions in multiple repository development• Are used to back up object definitions• Can be version-controlled using source control systems
24
Exporting Object Definitions
• Top-level object definitions can be exported to an archive file– Includes all child object definitions for selected parent definition
• To export object definitions– Select the object definition or definitions– Select ToolsAdd to Archive – Select an existing (or create a new) archive file– Click Save in the Export to Archive File window
25
Essencials
• Access Controls & Views.– Responsability.
• Access Control & Data.• Access Groups.
26
Responsibility
• Determines the set of views to which a user has access• Corresponds to a user’s job function or role
Views associated with the Field Sales Representative responsibility
27
Adding view to Responsability
• The same views can be added to one or more responsibilities
Call Center Manager and Universal Agent responsibilities share a common set of views
28
Review: Users, Views & Renponsabilities
• Responsibilities determine the set of views to which a user has access• Views are associated to one or more responsibilities• Users are assigned to one or more responsibilities• A user sees the union of all associated views when he or she logs in
29
Controlling Access to Customer Data
• Access to customer data can be restricted using the following access control mechanisms– Personal– Position-based– Organization-based
30
Personal Access Control
• Access is limited to records a that user has created or to which a user has been assigned– Records can be restricted to a single user or a team of users– Access is controlled by user ID
• Examples– In the My Service Requests view, a Web site visitor can see only the
service requests he or she has created– In the My Expense Reports view, an employee can see only the expense
reports the employee has submitted for reimbursement– In the My Activities view, a user can see only the activities the user
owns
31
Position-Based Access Control
• Record access is limited to users based on their position within an organization
• A position is:– A job title in a hierarchical reporting structure of an internal or partner
organization– Represents a person or group of people that require access to a set of
data– Is more stable than an individual’s assignment to that position
• People might change, but a position is static
32
Employees Per Position
• Some positions have a single employee– Typical toward the top of a reporting hierarchy where a job is more
specialized• For example, CEO, VPs
• Some positions have multiple employees– Typical toward the bottom of a reporting hierarchy where a job is less
specialized• For example, a group of call center agents all doing the same work
Roger Smith is associated with the CEO position
33
Master Data• Includes static, authored, referential data, such as:
– Products– Solutions– Literature– Resolution items– Auction items– Events– Decision issues– Competitors– Training courses
• Is organized into catalogs made up of hierarchical categories
34
Catalogs and Categories
• Catalog:– Is a hierarchy of categories– Does not itself contain any data
• Categories:– Are nodes in a catalog that contain master data and can contain many
subcategories
Product Lists
Product Lists – U.S.
U.S. Product List - West
Europe Product List - North
Europe Product List - South
Product Lists - Europe
Catalog
Categories
Master Data
U.S. Product List - East
35
• Ease of navigation– Categorized data are easier to navigate and search
• Ease of access control administration– Allows access to be granted at a group level rather than the individual
record level
Benefits of a Catalog Structure
36
Access Groups
• Are collections of users• Can contain any combination of positions, organizations, divisions,
accounts, and user lists– A user list is an ad hoc group of people containing contacts, users,
employees, or partners as members• Cannot contain individual people such as employees and contacts• Are used to grant access to categorized master data• Can be assigned at the catalog or category level
37
Access Groups Continued
• Can be organized into a hierarchical structure– An access group can have only one parent access group– Child access groups inherit all of the access granted to their ancestor
groups
Parent Access Group
Child Access Groups
38
Access to Categorized Master Data
• Is controlled by associating one or more access groups to a catalog or category of master data– The associated access group has access to that catalog or category of
master data and all of its child categories, unless access to a child category is disallowed
• Cannot be controlled at the individual record level
39
Defining Access Control for Access Groups
2. Add categories to catalogs
2. Add categories to catalogs
3. Associate data with categories
3. Associate data with categories
1. Define catalogs
1. Define catalogs
4. Declare catalogs or categories private
4. Declare catalogs or categories private
5. Associate access groups with catalogs or categories
5. Associate access groups with catalogs or categories
40
Essencials
• EIM (Enterprise Intefaces Manager)• Workflows.
– Business Services.– Subprocess.
41
Interface Tables
• Interface tables store external data inside the Siebel database– Staging area for data to be imported, updated, or merged into base
tables via EIM– Staging area for data exported by EIM– Staging area for data to be deleted in the base table using EIM’s DELETE
EXACT clause
EIM_ACCOUNT
S_ORG_EXT
S_ADDR_ORG
External data
Interface Table
Base Tables
42
EIM Processing
• EIM reads a configuration file to determine:– Whether data should be imported, merged, deleted, or exported– Which interface table(s) and base table(s) are used and affected
SiebelServer
EIMConfiguration file (.ifb)
Import, merge, delete, or export
43
Solution
• Siebel Workflow provides:– A set of tools to graphically define the processes and steps– An engine to automate these processes
44
Workflow Steps
• There are a variety of steps to use in a workflow process
45
Business Service
• Use to perform a Siebel-supplied or custom function• Example: Use business service to send email
46
Business Service Continued
• Use Tools– To view Siebel-supplied business services– To create custom business services
Some Siebel-supplied business services
47
Sub Process
• Use it to invoke another process within an existing workflow process – Reuse previously-defined workflow processes
• Requires input arguments and may produce output arguments, for example: – Pass in relevant object ID for sub-process step as an input
argument– Retrieve expected results as output arguments
• Use to span multiple business objects
Invokes another workflow process
48
Operation Step
• Use it to perform insert, update, or query • Example: Update SR priority to High
• Example: Update SR priority to Very High
49
EAI
• EAI (Enterprise Application Integration)– Workflow for EAI.– EIA Dispaching.– Virtual Business Components (VBC).– Business Conectors.– Enterprise Interfaces Manager (EIM).– Objects Manager.
• Business Services• XML Code.• DTD, Documents.
50
Basic Integration Tasks
• Identify the data to integrate in each application• Map and transform the data from each application• Transport the data between applications
SiebelApplication
External Application
TransportMap & Transform
IdentifyIdentify
Map & Transform
Common Format Common Format
51
Identify the Data to Integrate in Each Application
SiebelApplication
External Application
Identify business logic, components, and fields
Identify business logic, components, and fields
52
Transport the Data Between Applications
• Move data to and from the Siebel application and the external application using:– IBM MQSeries– IBM MQSeries AMI– Microsoft MSMQ
Data transport
SiebelApplication
External Application
XML XML
Microsoft BizTalk Server File transport HTTP
53
Integration Approaches
1. Synchronize Siebel data with external data2. Display external data in Siebel applets3. Display Siebel data in an external application4. Control a Siebel application from an external application5. Export Siebel data
Siebel Application External Application
Raw Data
Business Logic
User Interface
Raw Data
Business Logic
User Interface
54
Siebel Integration Strategies
• Workflow for EAI• EAI Dispatch Service• Virtual Business Components• eBusiness Connectors• Enterprise Integration Manager• Object Interfaces
EIM
Siebel EAI
eBusiness Connectors
Object Interfaces
VBCs
Workflow for EAI
EAIDispatch
55
Workflow for EAI
Siebel Application
External Application
Account data Customer data
MQSeries
56
Data Replication Workflow Relationships
SRF Object Layer
ExecutablesRunning
EAI Siebel Adapter
Query
Upsert
EAI Data Mapping Engine
Data Map
An EAITransport Adapter
An XML Converter
To XML
From XML Transport
Instances
Business Object
Contact
Pat Li
Property Set
Contact
Pat Li
Copy
ModifyTransform
XML Stream
Write
Read
Siebel Database External Application
select
insert, delete
DataLayer
Queue or File
Property Set
Customer
Dr. LiPat
Siebel (Internal)Integration Object
IC
ICF ICF
ExternalIntegration Object
IC
ICF ICFICF
Business Object
BC
SVF SVF
SQL
Instancecreatedby built-in Siebel code
DTD of XML from External Application
57
EAI Dispatch Service
• Uses rules to evaluate the structure and contents of property sets (instances); data that matches a rule is sent to a specified workflow or business service
• Optionally transforms the data before sending it• Example: Dispatch rules scan incoming documents for various patterns,
then send each document to the proper workflow
External Application
Message Queue
Order Status
New Contact
Order Status
Order Status
New Price
New Contact
Dispatch Rule Set
1. New Contact?
2. Order Status?
3. New Price?
4. Unknown? Write to File
Update Price
Update Order
Update Contact
Workflow or Business Service
58
Virtual Business Components
• Enable the display and manipulation of external data from within Siebel applets without storing it in the Siebel database– Example: Display Siebel contact data with contact details
from an external source in the same view
Siebel data
External data
59
eBusiness Connectors
• Provide end-to-end integration between Siebel Applications and other applications like Oracle and SAP R/3– Example: Exchange orders between Siebel front-office and
SAP R/3 back-office applications
Siebel Application
SAP R/3 Application
Order headers
BAPI
Order details
60
Enterprise Integration Manager (EIM)
• Exchanges large volumes of data between the Siebel database and external sources through interface tables in batch mode– Example: Each week the application captures mainframe updates and
runs a batch job to synchronize the Siebel account data
Mainframe Database
ChangeFile
Batch job
Siebel Database
Batch job
61
Object Interfaces
• Expose Siebel objects to programmatic access from Siebel Visual Basic scripts, eScripts, or external applications
• Enable external applications to control the Siebel application or access the Siebel database using: – COM Servers: Automation Server, Data Server– CORBA Object Manager– Java Data Bean
• Example: A button in an Excel spreadsheet calls the SiebelCOM Data Server to updateSiebel contact data fromExcel values
Database Siebel Application
Siebel COM Data Server
62
Other EAI Strategies
• ActiveX Data Controls (ADC)– Displays the Siebel UI in an external application, or displays an external
application UI in a Siebel application• Client-side import/export
– Exchanges account and contact data between a Siebel database and files
• Siebel Sync– Synchronizes data between a Siebel database and a mobile Web client,
Siebel Microsoft Outlook, Palm, or Windows CE handheld
63
Business Services
• Are the main building blocks of Siebel workflows• Provide access to prebuilt Siebel methods (global procedures)• Can also contain custom scripts
– eScript or Visual Basic code– Can be invoked three ways
• Input and output data in property sets (instances)
Method Method Method
Siebel Business Service
Input property set Output property set
Service_PreCanInvokeMethod
Service_PreInvokeMethod
Service_InvokeMethod
Most often used
64
Property Set
• Is instantiated to pass data in and out of a business service• Represents data in strings using name-value pairs• Has two predefined properties: Type and Value• Has an array for creating custom property names and values• Can contain an array of child-level property sets
Type
Value
Account AK Parker
City San Francisco
State CA
Phone 650-111-1866
Predefined property names
Values for predefined properties
Array of custom name/value pairs
Array of child property sets
65
Hierarchical Property Set
• Represents structured data (business logic)– Within a Siebel application
(business objects and business components)– Within an external application
(structure of tables, views, or files)• Conveys the structured data of an integration
object, an XML document, or other data stream
Type
Value
Account AK Parker
City San Francisco
State CA
Phone 650-111-1866
Parentproperty set
Child property set
Grandchild property set
66
What Can Invoke a Business Service
• A workflow process• A method from another business service• A user interface event• A Siebel object interface (COM, CORBA, Java)
– A built-in script– An external program
67
Prebuilt and Custom EAI Business Services
• Prebuilt EAI business services – Data transformation adapters: map and transform data– Data transport adapters: move data from application to application
• Custom EAI business services perform special tasks– Using custom methods written in Siebel eScript or
Siebel Visual Basic
68
Prebuilt Data Transformation Adapters
• Transform data to and from:– Integration objects in property sets and– Siebel XML in property sets
• Example: The XML Converter transforms Siebel data into XML that an external application can process
• Pre-built adapters include:– EAI XML Converter– EAI XML Hierarchy Converter– XML Converter– EAI Siebel Adapter– EAI Data Mapping Engine– XML Gateway business service
Module 3
Module 10Module 19
Module 9
69
Prebuilt Data Transport Adapters
• Send data to, and receive data from, external applications• Pre-built transports include:
– EAI XML Read From File– EAI XML Write To File– EAI File Transport Adapter– EAI MQSeries Transport Adapter– EAI MQSeries AMI Transport Adapter– EAI MSMQ Transport Adapter– EAI DLL Transport Adapter– Microsoft BizTalk Server Adapter– EAI HTTP Transport Adapter
Module 3, 13
Module 13
Modules 14, 15
70
Application Integration Formats
• Enable the translation of data from their original formats– Siebel business objects, business components– External application tables and views
• Business service property sets (string format) are instances that convey hierarchically-structured data to and from:– The integration object format– The XML format– Other formats (for example, BAPI and IDOC)
External format
Business Object format
Integration Object format
Property Set format
XML format
Binary String String String
71
XML = Extensible Markup Language
• Is a universal syntax for data flow among applications– Coordinated by the World Wide Web Consortium (W3C)– Cross-platform, vendor-neutral standard– Many vertical industry initiatives– Widely used across industries
• Is a text-based tag language with user-definable tags
• Describes the nature and structure of information– Metadata– Tags identify data– Represent hierarchical
relationships
72
Comparison of HTML and XML
Robert Heinlein, <italic>Time Enough for Love</italic>, New York, Putnam, 1973.<br>This science fiction novel chronicles the life of Lazarus Long, a man who lives hundreds of years.
<Publication medium="book"><Authors>
<Author>Robert Heinlein</Author>
</Authors><Title>Time Enough for Love</Title><PubInfo>
<Location>New York</Location>
<Publisher>Putnam</Publisher>
<DatePublished>1973</DatePublished>
</PubInfo><Description>This science fiction
novel chronicles the life of Lazarus Long, a man who lives hundreds of years. </Description></Publication>
HTML Example XML Example
• HTML specifies the content’s format (for example, font size)• XML specifies the nature and relationship of each content item
73
XML Elements and Attributes
• Element– Is a logical data structure within an XML document– Has a start tag and an end tag: <FirstName>Robert</FirstName>– Content is the data between the start tag and end tag
• Types of elements– Root: the one element that contains all other elements– Parent: an element containing other elements– Child: an element contained within another element
• Attribute– Is a name-value pair within a start tag
• Example: <Price Currency=“USD”>12500</Price>– The value is always a string, enclosed in quotation marks– A default value can be defined
74
XML Hierarchy
• XML element tags represent the nature and structure of data– In Siebel business components– In external tables and views
• Example– <Employee> is the parent of
<FirstName>– <State> is the child of
<PositionBusinessAddress>
75
XML Adapter Business Services
• How objects are represented• EAI XML Read From File• EAI XML Write To File• EAI XML Converter• XML Hierarchy Converter• XML Converter
76
How Objects Are Represented
When converting between property sets and XML, each:
Property set Type = an XML element tag nameProperty set Value = an XML element contentsProperty set Property = an XML tag attribute
<Price Currency="USD">44.00</Price>
XML Example
77
Reading and Writing XML to and from Files
• EAI XML Read From File– Reads an XML document file– Writes a property set with the XML structure, tags, and content
• EAI XML Write To File– Reads a property set– Writes an XML document with the structure and content of the
property set
78
EAI XML Converter
• Converts data from an integration object format to an XML document format
• Use to:– Represent integration object data as XML– Pass XML data as parameters in Siebel workflows– Map data with the Data Mapping Engine– Process Siebel eScript code using the Data Mapping Engine
79
XML Hierarchy Converter
• Does not use integration objects• Uses simple rules to convert between an XML hierarchy and an XML
document– Rule examples:
• Make each XML element a property set with Type as the tag name• Make each XML attribute a property in the element property set
• Use to:– Pass XML data as parameters in Siebel workflows– Process Siebel eScript code using the Data Mapping Engine
80
XML Converter
• Does not use integration objects• Uses simple rules to convert between an XML hierarchy and an XML
document• Does not create an XML Hierarchy property set, but makes the XML
document’s root element the type of top-level property set (such as Service Method Arguments)
• Use to:– Import and export hierarchical data (arguments, definitions, and so on)– Pass property set arguments to and from business services
81
XML Converter and EAI XML Converter Compared
Feature XML Converter EAI XML Converter
External Representation
XML XML
Internal Representation
XML Hierarchy(Property Set)
Siebel Message(Integration Object Instance)
Metadata DTD (Optional) Integration Object Definition(created using DTD Wizard)
Format External Message only
Internal (Siebel) Message or External Message
• Here are the differences between the standard XML Converter and the EAI XML Converter
82
Document Type Definition (DTD)
• Defines the element names, parent/child relationships, and attributes in a class of XML documents– Example: A Siebel DTD defines Siebel XML
• Is used by an application to interpret and validate the structure of XML documents in the class– A Siebel DTD enables another application to interpret Siebel XML– An external DTD enables a Siebel application to interpret
external XML• Can be stored:
– Within an XML document– As a separate DTD document
83
Element Declarations
<!ELEMENT Account (Name, Status, Loc?, BusinessAddress+) >
Element name Child elements
? indicates the element is optional
+ indicates the element can occur one or more times
No punctuation indicates the element occurs only once
* indicates the element can occur zero or more times
84
Entity Declarations
<!ENTITY AKP "A. K. Parker Inc.">
<!ENTITY salestemplate SYSTEM "/sales/firstletter.xml">
<!ENTITY AKPlogo SYSTEM "/hq/logo.gif" NDATA GIF87A>
Internal entity
External entities External entities
• Specify XML document text to be replaced by other data
• Internal entities specify the replacement data within the entity declaration
• External entities specify replacement data outside the DTD file– In another text file: data is parsed as if it were in the XML file– In a binary file: data is not parsed
85
Three Types of XML Integration
External Application
Siebel Application
Siebel DTD
Siebel XML
XMLCustom eScript
Siebel Application
External Application
External Integ. Obj.
XML Siebel Application
External Application
Prop. Set
External DTD
• Integration of externally-produced Siebel XML– The external application
sends XML that follows the DTD for Siebel business objects
• Integration of externally-produced XML using an external DTD– An external integration
object based on an external DTD maps the external data into a property set
• Integration of externally-produced XML without a DTD– A business service with
a custom eScript maps the data for each integration point
86
Assingment Manager
• Global Concept.• Sales & Services• Issues.
87
EmployeesPositionsOrganizations
SkillsExpertiseAvailabilityProductWorkloadSales Territory
AccountsCampaignsService RequestsProduct DefectsOpportunitiesActivities
Business Solution
• Siebel Assignment Manager allows companies to define rules that automatically assign data ownership to the appropriate people
Data Rules
People
Assign data
Evaluate rules
Assign people to data
88
Skills
• Are properties that reflect the candidate’s abilities, for example: – Installation and upgrade skills– Language expertise– Product skills
• Assignment Manager can match assignment object attributes to: – Employee skills– Position skills – Organization skills
89
Workload Criteria
• Types of criteria used to balance workload between candidates• Apply a workload score to candidates based on current workload
– Candidates with a lighter workload receive a higher score than candidates with a heavier workload
– Candidates with workloads greater than maximum workload will be eliminated from the assignment rule
• Are generally used with service assignments
Low Work = High Score
High Score = Assignment
90
Sales Scenario
Business Rule: Assign accounts to sales representatives based on their geographic territory and language expertise
Assignment Object
Candidate
Assignment Criteria
Criteria Value
Business Rule: If account is French, assign to French sales positions
Account
France
French sales positions
Account Country
Assignment Rule
91
Service Scenario
Employee: EllenSkill: CPUWorkload: 19 SRs
Employee: CraigSkill: NetworkWorkload: 18 SRs
Employee: JackSkill: Network Workload: 20 SRs
… to best candidateAssign incoming service requests…
Business Rule: Assign service requests to agents based on product skill and current workload
92
Recap: Creating the Assignment Rule
Business Rule: Assign service request to most available agent based on workload
Assignment Object
Candidate
Assignment Criteria
Criteria Value
Service Request
All People
Assignment Rule
20
Workload rule
Max load = 20 SRs
45
Product
Score
93
Assigning Based On Availability
• Candidates may be assigned based on calendar availability– Appointment Booking Engine (ABE) checks employee’s availability
• If employee is available, ABE creates activity on employee’s service calendar
Check box for assignment rule
94
Exclusive Rule
• Multiple assignment rules may exist for the same assignment object • Use the exclusive rule to determine primary assignees from a list of candidates generated from
multiple assignment rules– Candidates matching exclusive rule criteria supersede candidates matching criteria of all
other non-exclusive assignment rules
Make a rule exclusive
95
Conflicts
• These conflict scenarios are handled as follows– Conflict between two rules with same score
• Assigns candidates for both rules and assigns the System Administrator to the team• Makes System Administrator the primary on the team
– Conflict between two exclusive rules with the same score• Assigns System Administrator to the team as primary
– Rules do not identify any candidates to assign• Assigns System Administrator to the team as primary
• Set default parameters in Assignment Object to determine who has access to data that cannot be assigned
– Default Employee, Group, Position, Organization
96
Three Ways to Invoke Assignment Manager
• Batch Assignment• Dynamic Assignment • Interactive Assignment
97
Batch Assignment
• Use to submit batches of objects for one-time assignment or reassignment• Implemented via server task • Business scenarios
– Change assignment rules and modify existing objects that are already assigned – Change Assignment Manager configuration using Siebel Tools– Territory re-alignment– Existing assignments are inaccurate
98
• Automatically invokes Assignment Manager to assign new or changed objects in real time• Implemented via assignment policies and workflow • Business scenarios
– Sales representative creates new opportunity with potential revenue of $100,000 • Assign positions to team where Opportunity Revenue >= $100K
– Call center agent creates a service request (SR) to fix the CPU on Joe Smith’s XYZ computer• Assign employee to SR where Product = CPU and Employee Skill = XYZ computers
Dynamic Assignment
99
Invoking Dynamic Assignment
• Create or modify assignment object data, such as: – Account– Opportunity – Service Request– Campaign – Product Defect– Activity
100
• Use to assign candidates in real time– Enabled for Service Request and Activity assignment objects
• Implemented via user interaction and tasks on server – User makes assignment from a generated list of candidates
• Business scenarios– A customer service representative takes a call and creates a new service request (SR), then
the service manager assigns the SR to a skilled service agent– A call center supervisor wants to verify that service requests are assigned to the right
people• If they are not, he can reassign them by selecting different candidates for assignment
Interactive Assignment
101
Implementation Tips
• Review assignment objects, rules, and attributes– Verify rules meet your business requirements
• Do not define rules that are too generic – Will result in a large number of matches, degrading performance
• Test the system thoroughly– Test functionality and validity, as well as performance
• Identify an assignment administrator– To administer assignment objects and assignment rules
102
Modifying Assignment Manager Behavior
• Use client application to – Create and modify assignment rules – Lock assignment
• Use Siebel Tools to– Modify assignment object properties – Create new assignment object definitions
• Assignment attributes• Assignment objects• Assignment criteria
103
Multi-Tier Assignment
• Filters how people and organizations are assigned, based on the relationships between them– Controls the degree of dependency between people and organizations during assignment– Sets precedence on the type of assignment made
• Assignment modes– Independent– Organization-Oriented– Person-Oriented– Organization and Person-Oriented
104
Mejoras 8.X
• Search• Catálogo
– Administrador de Producto.– Administrador de Precios.
105
Mejoras Siebel 8.XSiebel iHelp versus Automatización de Tareas (Siebel Task UI)
Siebel iHelp es más apropiada para ofrecer una ayuda general de cada una de las entidades.
Siebel Task UI es una herramienta más potente:
Proporciona una guía de los procesos de la aplicación
Requiere configuraciones específicas.
Característica iHelp Task UID
Ayuda general de procedimientos
Ayuda de los procesos de la aplicación
Asegura que tareas críticas se completan correctamente
Fuerza la manera en la que los procesos se completan
Integrado con Siebel Workflow
Configurable vía interfaz usuario
Configurable vía Siebel Tools e interfaz usuario
106
Siebel Search
Siebel Search es una utilidad de Siebel que permite realizar búsquedas avanzadas a través de todas las entidades y ficheros adjuntos.
Guardar Búsqueda
Búsqueda avanzada
Los resultados son de entidades diferentes. Aparece la fecha de última modificación del registro
La palabra buscada aparece en negrita
Ordenar resultados
Mejoras Siebel 8.X
107
Opciones búsqueda avanzada
Buscar por formato de fichero
Buscar por entidades o por ficheros adjuntos
Selección de entidades donde buscar
Operadores
Siebel Search Mejoras Siebel 8.X
108
Productos con Componentes: en los cuales el usuario puede modificar sus características y sus componentes (Ej.: Una caldera, en la cual podemos elegir no solo el modelo y la potencia de la caldera sino que también podemos solicitar el componente mantenimiento. El producto sería la caldera (con sus atributos: modelo y potencia) y el componente opcional sería el mantenimiento).
Tipos de Productos en Siebel 8.X:
Productos Personalizables: son aquellos en los cuales el usuario no realiza ninguna configuración.
Productos No Personalizables: productos con atributos, en los cuales el usuario puede configurar características de su producto pero no los componentes.
Mejoras Siebel 8.XAdministración de Productos Catálogo
109
Administración de Productos
Catálogo 1Categoría A
Prod 1
Prod 2
Doc 1.
Categoría B
Prod 4
Sub Categoría 1
Prod 5
Prod 6
Categoría C
Sub Categoría 2
Prod 7
Prod 8
Sub Categoría 3
Doc 1
Organización de Productos:
Catálogos: colección de ítems (productos y servicios) ordenados de forma lógica en conjuntos. Pueden ser públicos o privados.
Categorías: agrupación lógica de ítems dentro de un catalogo.
El acceso al catálogo y categorías se puede controlar mediante la utilización de Grupos de Acceso: Colección de Posiciones, Organizaciones y Listas de Usuarios
Catálogo: Grupos de Acceso
Categoría: Grupos de Acceso
Productos: Elegibilidad, interfaz de usuario
Mejoras Siebel 8.XCatálogo
110
Organización de Productos:
Clases de Productos (o Modelos):
Sirven para organizar atributos.
A un producto se le puede asignar una clase para que herede todos sus atributos.
Se pueden meter clases dentro de clases Concepto de sub-clase.
Líneas de Productos: otros agrupadores de productos.
Visualización de Productos:
Se trata de la visualización de la estructura del producto en el configurador (una vez pulsado el botón “Personalizar”). El sistema permite crear diferentes interfaces de usuario para un mismo producto y su asignación mediante responsabilidades a los distintos grupos de usuarios.
Mejoras Siebel 8.XAdministración de Productos Catálogo
111
Paquetes de Productos (Bundels):
Grupo de productos vendidos como uno solo y por tanto con precio único.
No modificables en tiempos de Oferta.Promociones:
Descuentos especiales por contratar un producto o un conjunto de productos concretos.
Tipos de promociones: “Cupones” si aplican a un único producto y “Paquete” cuando es para un conjunto.
Aplicación de las promociones:
Top-down: se selecciona una promoción y se añaden a la orden todos los productos asociados a la promoción.
Bottom-up: se selecciona algún producto asociado a una promoción y un asesor recomienda el paquete promocional al que pueda pertenecer el producto, siempre que no pertenezca ya a uno.
Mejoras Siebel 8.XAdministración de Productos Catálogo
112
Otros Conceptos Importantes:
Acceso al Catálogo (Usuario – Producto): Los catálogos pueden ser definidos como públicos o privados. La definición de un catálogo como privado implica que las categorías que lo conforman son también privadas. Cuando un catálogo es privado sólo tendrán acceso a él los usuarios que pertenezcan a los grupos de acceso (organizaciones o posiciones) asociados al mismo.
Reglas de Elegibilidad (Cliente – Producto): En base a información del cliente determinando si éste es elegible o no para adquirir un producto o servicio. Existen dos tipos de reglas: Available (clientes elegibles) y Not Available (clientes no elegibles).
Reglas de Compatibilidad (Producto – Producto): Asociadas a un producto, determinan si otro producto debe ser excluido o incluido en la configuración. Son solo informativas.
Reglas de Validación (Producto): Validaciones implementadas mediante customización que se usan para procesos de negocio/configuraciones muy específicos.
Mejoras Siebel 8.XAdministración de Productos Catálogo
113
Generalidades: Lista de Precios: set de precios estándar para productos y servicios.
Se pueden definir tantas como se necesiten.
Para cada lista, mediante administración, se asignan los precios definidos en la administración de precios a los componentes de cada producto definido en la administración de productos.
Lista de Tarifas: Set de importes que se cobran en servicios facturables por horas.
Lista de Costes: Set de costes por producto o servicio. Se pueden añadir a una lista de tarifas o de precios para calcular el margen de beneficio. Tipos:
Estándar: Coste predeterminado que se comprara con el coste actual para medir el rendimiento de un departamento u operación.
Last Cost: Métrica de costes basada en LIFO. Asume que los últimos productos que entran son los primeros que salen, y que por tanto el inventario final consiste en los primeros productos adquiridos.
Next Cost: Método de costes que permite al usuario mantener los costes manualmente.
Average Cost: Método de cálculo de costes que calcula el coste medio de todos los gastos de adquisición de un producto inventariado.
Mejoras Siebel 8.XAdministración de Precios Catálogo
114
Descuentos por Volumen:
Ajuste del precio de un producto basado en la cantidad de productos que se van a contratar.
Pueden ser de dos tipos:
Simples: Mismo descuento para todos los productos incluidos siempre. Ejemplo: 20% de descuento para más de 10 productos.
Compuestos: Descuento gradual para cada grupo de productos. Ejemplo: 0% para los 5 primeros, 5% para los 10 siguientes, 10% para los 20 siguientes, etc.
Descuentos Agregados:
Descuentos aplicados a productos concretos por comprarlos dentro de un paquete.
También se consideran descuentos agregados las promociones y los paquetes de productos.
Mejoras Siebel 8.XAdministración de Precios Catálogo
115
Matrices de Descuentos:
Permiten ajustar los descuentos por producto, tipo de cliente y segmento de mercado y tenerlos agrupados en una simple matriz:
Ajuste de Atributos:
Permiten ajustar los descuentos por la configuración de un producto (valores de sus atributos):
Mejoras Siebel 8.XCatálogo