1 / 37

CRM Solutions of Choice: Siebel and Salesforce

CRM Solutions of Choice: Siebel and Salesforce. A Development Perspective Varsha Indurjith. Why are we discussing Salesforce ? To make an Informed Decision when changing or choosing technologies Be aware of the functionalities of each What’s the hype about !

teenie
Télécharger la présentation

CRM Solutions of Choice: Siebel and Salesforce

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CRM Solutions of Choice:Siebel and Salesforce A Development Perspective Varsha Indurjith

  2. Why are we discussing Salesforce? • To make an Informed Decision when changing or choosing technologies • Be aware of the functionalities of each • What’s the hype about ! • Offer better advise to your client or company • The Inside Story!

  3. What IS Salesforce? • Cloud computing, Leading edge technology • Software as a Service. No DB, Server, multiple physical environments • Entire infrastructure is hosted and accessed via url • Configuration may be done on ad hoc basis directly on prod without downtime • Clients range from 1-man shop to large corporate • Simple, easy to use. Makes sense to a non-technical person • What is Siebel? • Established CRM product which 22 specialised industry applications • Tailored industry requirements available Out of the Box • Capable of delivering highly customizable business and end user requirements

  4. The Dilemma: Which CRM product to choose for YOUR organization ??? • Q: What do you want out of your CRM app? • Q: What are you looking to achieve? • Q: Are you happy to adapt to the system? Or do you need the system to adapt to your business? • Q: Are your processes fairly static, or can they be changed to accommodate?  Each organization wants something different out of their CRM system, and each organization’s strategy is different. Your application must suit your needs accordingly!

  5. Goal of this presentation: • NOT to sing the praises of any one technology! • IS to highlight some key differences in development capabilities between both, from a developer’s perspective  • This uncovers to what extent functionality may be achieved • If you know the building blocks you have to work with, you know what building you’re allowed to construct!

  6. Comparison:Development Environment Siebel Salesforce No separate dev environment – Setup section in the application available to Administrators Seamless testing of development – no executable required to be compiled Only as fast as network connectivity – hyperlinked Need internet connection to develop • Siebel Tools • Fast to navigate • Independent of network connectivity • Can Develop locally • Requires training to be able to use • Changes need to be compiled before they can be tested

  7. General Configuration Siebel Salesforce Quick to configure Wizard driven Fast turnaround times Quick customization vs well-thought of requirements – because of ease and speed, Analysis/Design steps usually skipped Cannot see updated items at a glance Standard fields not customizable • Config definitions visible at a glance – can immediately see updates as of date/time • Numerous design approaches to achieve a requirement – User properties, WF, BC Events, Smartscripts, etc. • Highly customizable • Prone to over-customization – unstable, complicated system. Difficult to use

  8. Workflow Siebel Salesforce Does basic actions: field updates, email, create/assign tasks, outbound API messages, time-dependant actions Very little room for customization – cannot invoke coded functionality Recursive WF may only be executed a set number of times Email notifications may only be sent up to 3x per record Cross object functionality very limited - std. Vs custom • Can invoke highly tailored functionality using Business Services • Can achieve complex coded functionality, logical operands, cross-object accessibility • No restriction on number of emails sent out

  9. Validation Siebel Salesforce May not set order of execution, as rules are randomly executed there is no way of defining a sequence of execution Limited in the combination of AND and OR operands in your rule eg. You may not have (x AND y AND (a OR b)); Read the fine print! • Validation rules are sequenced to facilitate priority of execution • No limitation on Boolean evaluations

  10. View layout Siebel Salesforce drag and drop fields and related lists Extremely easy to customize Page may only display fields from that specific component Information from other components may only be displayed via Related List sections. User has to drill into the record to see all the information on that component. Alternative is to use VisualForce pages, which are html based pages using Controller class that invoke Apex code. However this requires ongoing maintenance and support Formula field may retrieve cross object information, however they are not visible in all modes of the view • Allow for instant Parent-Child visibility without losing context of either component • Displays fields from cross object components easily, via joins, MVGs, calc fields • Unable to open additional views in new tab and have multiple views available at once for viewing

  11. Calculated/Formula Fields Siebel Salesforce Formula fields enable retrieval of cross-object info. There are numerous limitations/governor limits: 4000 char limit on a formula, included chars used in referenced formula fields, spaces and carriage returns 5000 char limit on the compiled size of the formula 32000 char limit on the entire sql statement for a component, including standard, custom and formula fields Formulas cannot reference themselves eg. X = x+y • Can create any number of calculated fields • Character length limitations may be overcome by combining numerous calculated fields to evaluate your condition • No restriction on total character length per component • Used only for computing information – joins and MVGs used for cross-object retrieval • Various standard configuration eg. User properties, may not be performed on a calculated field eg. On Field Update

  12. Audit Trail Siebel Salesforce Very basic functionality – not every field may be selected for audit + limit on # of fields Certain components eg. User, may not be enabled for Audit There is no consolidated view for audit trail across the application – audit trail is displayed as a related list on each page, with only information on that page Reporting on audit trail not supported • Any field on any component may be selected for audit tracking • Holistic view of all updates made, allowing for ease of querying • Reporting may be done on the Audit Trail

  13. Data Manipulation Siebel Salesforce Dataloader allows for easy mass updates of data per component Administrator can use for routine updates as well as mass uploads Processes thousands of records per minute Simplifies reassignment processes, employee transfer protocols etc. does not allow for cross-object updates Will not execute if SOQL limits are reached, due to formula fields, triggers (code) etc. Data may easily be deleted if administrator is not aware of the implications of actions • Runtime business services or Business Service Methods may be used for complicated data uploads/data moves – cross-object updates • EIM is required for bulk data uploads. This is quite intensive, and requires specialist skills • Updates done directly on the database is not the recommended route, however is the most used means for simple data updates • Updates done via EIM/Business services is time consuming

  14. Batch Processing Siebel Salesforce Batch Apex Code Only up to 5 batch jobs may be processed within an hour Batch times are per hour only Each batch job may only process updates on one component. No standard way to specify dependency on batches • Batch Workflow jobs • Depending on the server capacity and/or load balancing, workflows may be scheduled in the same time slots • Multiple components may be updated within a single workflow • Batch workflow dependencies may be accommodated

  15. Batch Processing Siebel Salesforce Emails sent out from any form of coded functionality is limited to 1000 in total for the day Single SQL statement is used to fetch the recordset to be processed. Only one logical process may be effected on the recordset Up to 1000 records on parent object retrieved, but >1000 on child is ignored • No limitation on number of emails that is permitted to be sent out • Highly complex logic may be effected in the BS invoked from the workflow • Parent/child records may be processed without a restriction on # of records in child or parent

  16. Smartscript Functionality Siebel Salesforce Is not available in Salesforce Poses a challenge for clients that require fast capture times, eg. Call Centre May use VisualForce pages, but these need to be maintained • Standard functionality; • Can be highly customized using eScript • Simple enough for an administrator to create

  17. Events / Triggers Siebel Salesforce Triggers, limited to standard events such as: BeforeUpdate, BeforeInsert, AfterUpdate, AfterInsert Various governor limits around the use of Triggers, Apex code, batch jobs etc. Need to be aware of these prior to designing a solution SOQL limit -100 per component. • Numerous events on both component and GUI layers • Covers field manipulation, record manipulation, Save/Delete/Update operations, GUI functions – extensive in what can be manipulated

  18. Events / Triggers Siebel Salesforce Any DML statement is regarded as a SOQL query: delete and database.delete findSimilar insert and database.insert merge rollback runAs setSavePoint update and database.update upsert and database.upsert Max amount of code used by all Apex scripts in the organization = 2MB • No specific limit for total storage allocated for code • Best Practices rather than restricted capabilities

  19. Reporting Siebel Salesforce Built in reporting wizard allows easy creation of reports Simple enough for end users to create and draw up own reports – in theory! Need technical understand to choose the correct fields – frustrating for end users Generally do not allow end users to draw their own reports due to complexity • Actuate – complicated to learn and implement • Static – cannot be modified easily • Other reporting tools may need to be used – BI Publisher, Cognos, Analytics etc. – Cost implication

  20. Reporting Siebel Salesforce Can only report on parent-child-grandchild relationship – cannot have parent-child1+child2 structure Cannot report on a related list based on a standard component • High end functionality but requires a skilled resource

  21. A Walkthrough • Let’s consider a real-life Development cycle • How does each CRM application deal with the various challenges at each stage of development? • Goal of development: to efficiently, dynamically and accurately incorporate new requirements, whilst maintaining the system’s Stability, Robustness and Reliability

  22. Dev commences, with a combination of consultants and perm employees in varying degrees of skills set – junior to senior. Siebel Salesforce Salesforce has ‘Organizations’ or ‘Sandboxes’, which is equivalent to an environment, eg. Dev, UAT, etc. Approx 33 orgs/developer environments may be created, excluding Prod and UAT orgs. – Unlimited Edition • Developer creates a local database • No limit to how many local databases may be created. Dependency on login accounts on server Database

  23. Access to configuration definitions Siebel Salesforce No local/server concept All developers work off the same connection (server) Dev A has work in progress, Dev B has work in progress. Both see each other’s incomplete configuration. High risk of overwriting configuration; creating duplication; dev A’s bugs will affect Dev B, impeding continuation of work Communication is crucial • Structured check in/check out process • Developer works on the configuration locally, tests, then checks back into the server • Other developers cannot access incomplete configuration as it is only checked in on completion

  24. Unit Testing Siebel Salesforce Extremely fast and convenient No compiling required. May log in as any other user of the system and test as them – Grant Admin Access Can immediately see what pages would look like from any other user’s point of view even while developing • Conventional – compile, log into local client, test • Would require separate login access as other test users to test for different levels of application access

  25. Major changes required during Dev – how to identify changes made and rollback development ? Siebel Salesforce ‘Changed flag’ concept not available Querying within Setup section not supported. Will have to Sort the records and scroll through pages Not all definitions allow for a comment to be captured Manually review definitions, per record, to determine changes made • Changed flag indicates any updates made – list view • Can query on ‘last updated by’ to get developer history • Flat tab enables cross-object searching • Comments field on all definitions

  26. Major changes required during Dev – how to identify changes made and rollback development ? Siebel Salesforce Cannot rollback. Manually undo Eclipse backup – definitions are merged, not overwritten May only abandon the org and start on a new one – lose in-progress functionality Cannot make a backup of configuration done on an org, or backup an org. May only clone an org (max of approx 33) Cannot version control reliably– Eclipse may be used to a limited extent Major changes eg. Redesign usually results in scrapping the environment and starting over in a new org as this is quicker than identifying all the changed components Documentation is crucial for tracking development changes • Import of backed up archives, repository, local database, etc to rollback changes made • Redo Check Out to refresh local definitions • Regular backups of local database, to prevent corruption and loss of entire environment

  27. Change of requirements during UAT – redesign, major or minor changes. Ease of change to dev environment? Siebel Salesforce Same as above. However added complication is that now there are 2 orgs involved Keeping both in sync is a manual process – combination of Cloud Deploy + Eclipse Requires more management, documentation, co-ordination to ensure the same definitions exist in both orgs -> Trust! Can easily get out of sync – reliance on documentation Significant impact on timelines • Export/import repository keeps environments in sync – reliable and efficient process – does not leave things to chance • Archives allow for individual definitions to be backup up/refreshed • Impact on timelines minor

  28. Migrate to UAT/QA Siebel Salesforce Cloud deploy, Eclipse platform Both are not complete solutions. Combination is generally used, with manual re-configuration In multi developer environment, huge risk of overwriting definitions – Manually redo! Timelines longer for projects Migration process uncertain - requires extensive testing • Copy srf across • Administrative setup may be exported, uploaded, or manually redone • Repository changes may be archived, exported, or manually redone; • Timelines usually quick • Migration process can be relied on

  29. Implementation to Production Siebel Salesforce Test run cannot be relied on -Prod org handles migration differently from the sandboxes, eg. Code migration, test code failures Timelines longer than expected Major implementations require 1 or more days, depending on the extent of configuration; Migration is not a well structured process, ie. No executable. Always run the risk of incomplete migration or overwriting definitions in Prod • Test run gives accurate reflection of migration • Safety in knowing repository changes and compiled definitions have been safely migrated, intact • Rollback process quick and simple

  30. Rollback, Backups, Version Control Siebel Salesforce Data may be requested to be backed up periodically – cost implication. Involves exporting data, and re-importing in need, rather than a DB backup No concept of rollback for configuration Changes implemented to prod cannot be backed out – will have to determine and manually remove Cannot version control development reliably – used to reference rather than re-instate • Rollback of db available • Rollback of srf/repository simple • Can incrementally determine source of bug by reviewing previous srfs/repositories/archives

  31. General: Maintenance and Support of Software Siebel Salesforce New release every 3 months New functionality may be requested by the Salesforce community Requests are voted on, and given enough votes, will be implemented in a future release • Regular quick fixes and patches released periodically

  32. General: Certification Siebel Salesforce Various levels – Administrator, Developer, Advanced Developer, Advanced Administrator... Must write Administrator exam to qualify to write other exams Required to write complete exam for each role once; thereafter release exams for each, every quarter If you miss an exam, you lose your certification • Required to write full exam once • Thereafter write migration exam for each major release

  33. SALIENT POINTS Cost Siebel Salesforce Cheaper option Functionality • High • Numerous ways to meet requirements • Can be quite frustrating when requirements cannot be met because of limitations Ease of Use • Generally over-customized, rendering it difficult and complicated to use • Very simple to use, however also simple IN use

  34. Standard Offering Siebel Salesforce Very generic in functional offering – one size fits all CRM capability needs to be built Offers a platform rather than a specialised solution • 80% of industry specific functionality upfront • Inherent CRM capability • Level of Skill • Resources need training and relevant skill set • Ranges from No substantial skill set required, to resources needing training and skill set

  35. Production Implementations Siebel Salesforce No downtime required On-The-Fly implementations Structured project approach generally put aside NB: risks involved! • Requires downtime on prod • Structured project approach • Longer timelines to delivery

  36. SUMMARY Siebel Salesforce • Convenient • Economical • Leading Edge Technology • ‘Will-Make-Do’ approach ie. Nice-To-Have • Efficient • Stable • Reliable • ‘Sky-Is-The-Limit’ approach ie. Must-Have

  37. My Humble Opinion: • If you want SIMPLICITY, Salesforce is the way to go • If you want FUNCTIONALITY, Siebel is the way to go • 

More Related