Looking for differences between Oracle's Siebel CRM On Demand and salesforce.com CRM
Actually looking for points favouring the Siebel OD CRM
Tried googling and bing-ing it but found old stale information from around 3-4 yrs back, so any links to updated information will also be appreciated deeply.
And while we are on the subject, how good are the prospects of a career in Siebel On Demand CRM.
Thanks for your time people.
Having developed in Siebel for over 13 years, Siebel/Oracle CRM OnDemand for 3-4 years and SFDC for 6-7 months. You made the right decision. Oracle CRM OnDemand is a useless piece of junk. If it can't solve your business requirements OOTB it basically never will. It has absolutely no server side code support and the client side JavaScript is limited to only 1500 characters. You can however include your own javascript files but you will need to host them on another server, which kind of beats the purpose of using Oracle's hosted environment in the first place.
If you are using Oracle CRM OnDemand I here from good inside sources that there is no upgrade path for any custom configurations at all to the planned Fusion CRM platform. Apparently your data will be migrated but no configurations.
Now I don't believe that SFDC is the greatest thing that I have ever seen, but in comparrison to Oracle CRM Ondmand they are not even in the same game. Do yourself a favour and switch to SFCD, if you haven't purchaed Oracle CRM OnDemand, seriously don't waste your time.
We could not find anything that favored Siebel and consequently switched to Salesforce.
Never been happier.
Related
We will be building (extending) an existing ordering capability on our flagship product.
Currently the ordering functionality only starts a manual fulfillment process via a Sales Force CRM ticket.
The future state is to have the order process and fulfillment process all automated. This is vehicle acquisition for leasing, so the process will be quite complicated taking into account registration, insurance and driver info on a per state basis.
This is screaming workflow. I've been reading on WF but I haven't found a lot of current examples.
The tech showed up around 2006 but doesn't seem to have been adopted regularly.
I am looking for some references to implementing WF in a production web application that will integrate with several other systems and individuals to complete the process.
If not WF, is there something else? We really do not want to implement a bunch of custom rules that will likely change over time.
I am exploring if Workflow Foundation 4.0 is stable enough to start developing on it but the documentations I've seen so far are mysteriously silent about why there are no built-in Transaction & SQL Tracking services! They were available in WF 3.5 and seemed to be reasonably stable. Any clues? Was there no time for MS to release WF 4.0 on schedule or the whole concept was broken in 3.5 that they decided to scrap them? I know there are lot of links and hints pointing to writing a custom (SQL) tracking participant, but then what is the point of a "framework"? Moreover there's no way to query the tracked data. And nothing about Transaction service! So how do we keep the WF persistence data & application data consistent? Am i missing something here?
Some unsatisfactory answers on "missing" SQL tracking in WF4:
- http://social.msdn.microsoft.com/Forums/en-US/wfprerelease/thread/8cfe598a-a400-4804-92ad-d68aa444d8f3
[got a few more links, but couldn't post them here bcoz new users can post only one hyperlink per question :( ]
Any help will be greatly appreciated :)
SQL tracking is missing however the AppFabric does include tracking if you go the workflow services route.
Transactions are supported. There is the TransactionScope activity for short running transactions an a CompensatableTransaction for doing long running transactions. There is also the option of creating activity extensions based upon PersistenceIOParticipant where you can save extra data durin THE transaction used to save THE workflow.
According to MSDN, the SQLTrackingService is still supported (see the bottom of the below article):
http://msdn.microsoft.com/en-us/library/system.workflow.runtime.tracking.sqltrackingservice.aspx
You will have to add references to System.Workflow.Runtime.dll (and probably System.Workflow.ComponentModel.dll) to your project. Make sure you are targeting the full .net 4 framework in your project properties (i.e. not the client .net 4 framework). Both dlls can be found in the v4 framework directory.
I am working in a company with huge DotNet team. We currently have MOSS 2007 license which I assume is a costly one and just one administrator working/maintaining all Sharepoint stuff.
I felt that Sharepoint is not being utilized to its potential. Being interested in Sharepoint Development for past 1 year (I am a .NET Developer with 6 years of exp) I offered my help to our Director, his first question was
"Why do I need a Sharepoint Developer?"
Now I need help in selling a "Sharepoint Developer" to my director.
I would be glad to provide any more information you need about the company or current utilization.
EDIT: Just want to elaborate more on my company's scenario. We have sharepoint being used mostly for Internal use like Raising Service Tickets, Maintaining Networking Stuff ( Servers, Sites, clients details), Document Sharing with Clients.
If you want the official “value proposition” of SharePoint, it goes something like this; the product already has a lot of common application behaviours built into it (doc management, access control, search, etc) therefore it streamlines development by being able to build directly on top of these features rather than building them from scratch. It’s a .NET based environment so your current developers can leverage existing skills.
However, it’s not all that simple. There’s a very solid learning curve, you need to develop directly on a Windows Server and the lifecycle and deployment of apps if very different to ASP.NET. Have a read of What are your biggest complaints about Sharepoint? and also The hidden costs of building on enterprise software platforms.
Ask him how much time your team spends coding/planning/worrying with:
Authentication
Security
Document Management
Versioning / Change History
Records Management (on a very light sense)
Backup / Restore support
Load balance
Multi domain support
Separated Content Databases
Content Collaboration and user-created structures
Theme support
Syndication
Outlook integration
??
And how much time you ACTUALLY worry/code/plan implementing your BUSINESS RULES
SharePoint is far from perfect, but in a .NET world it is a hell of a good start to get things done without reinventing the wheel.
Why do you think you need a sharepoint developer? What can more/better sharepoint development offer from a business perspective? Does it do thinks either faster, cheaper or better than you currently do them? You need to be able to verbalize this for management to buy-in.
Does the existing administrator have a technical background? Perhaps as a developer? If not, then yes, there is value in having a "Sharepoint Developer" handy as soon as you want to do anything even remotely outside the box in SharePoint.
Want to extend the functionality of your lists/libraries? You'll need to know how to create a CustomAction in .NET, or know how to combine JavaScript/JQuery with ASP.NET webservices to do so.
Want to create some custom rollups for reporting? Do you folks track tasks/project information in SharePoint? You'll need to understand ASP.NET server control fundamentals, and possibly XSL so that you can whip something together using SharePoint designer.
Maybe you want to standardize your content (calendars, tasks, etc.) through custom content types. You'll need a development background to understand how to provision this using SharePoint's solution/feature mechanisms.
Or perhaps your director would be interested in reporting? If you pick up a third-party reporting tool such as Dundas Charts, good luck making anything remotely complex without having a development background.
These are just some things off the top of my head..
Point out the business benefits that your company would IMMEDIATELY derive by doing / going Sharepoint. In your spare time at the office, create a proof of concept perhaps that you could parody with your director in able to get his/her nod.
As someone who once was a sharepoint developer, it is hard to add value to that product. It will mostly be cosmetic changes or something you find to be really cool, but at the end of the day SP already provides the functionality. Also if you do something amazing with it M$ will eat your lunch.
I worked on MS CMS (which preceded MOSS) and the people who stuck with MOSS are earning good money - but proving business benefits to the skeptical is very difficult.
To sell yourself to your director you need to demonstrate that MOSS will either save the company money or help generate extra cash. From your brief company description I would reckon that cost focus is the way forward.
So ask your boss what are the three biggest cost savings that your company wants to make in the next year (there is always a focus) and (if you think it is worth asking) the three areas where the company is looking to expand.
Then go away and work out how MOSS (or any enterprise level CMS for that matter) can support and possibly improve the chance of meeting these objectives. If you can do that and present the director with some focused, manageable projects then you may be on the way.
The current application is a kind of CRM application built upon MS Access. The application is for internal use. My job is to migrate it to ASP.NET web-based application. Now boss requires to keep Access as database and develop ASP.NET code against it.
My question is, is there any disadvantages of using Access as database in ASP.NET application? (e.g. optimistic concurrency issue?) Should I persuade boss to upgrade Access to MS-SQL?
Many thanks!
We've used Access as a backend for web sites with good success. It's cheap, can be used effectively by moderately skilled programmers, and you can store the MDB on a document server so it gets backed up.
Most IT people dislike Access, but from a business perspective, Access can be very valuable.
MS Access is notoriously unstable in multiuser environments. A WEB app is by definition heavily multi-user.
So IMHO leaving MS Access as underlying DB is a call for trouble. At least use SQL Express (it is free)
The problem you are going to face in upgrading from Access to MS-SQL is that there is a major cost investment for the application. If your company already has the infrastructure in place(licensing, hardware...) then you won't have such a hard fight to pursuade your boss.
As for a technical answer:
I'd say you need to let you boss know that access databases aren't ideal for concurrent usage which a web application suggests is the intended goal of the application. My view is that Access is for database information that a SMALL set of users will be simply using for small data entry and querying. NEVER use Access to build an enterprise-level solution.
If you are planning to upgrade a Microsoft Access database to SQL Server 2008, use the SQL Server Migration Assistant (SSMA) rather than the upsizing wizard built into MS
10+ tips for upsizing an Access database to SQL ServerAccess.
Your boss probably likes to do ad-hoc stuff with access / excel. If you move the DB to SQL Server Express you can use Access and it's linked table feature to let your boss keep doing his ad-hoc needs through Access while keeping the data in SQL Server Express. If you keep the linked tables named the same as the old physical ones all his reports and queries will should keep working.
I'm an Access promoter, but not for use on websites because Jet/ACE is not threadsafe (though Michael Kaplan once said that is is threadsafe if you access it via ADO/OLEDB; I don't quite understand how a database abstraction layer can wash away a characteristic of the underlying database engine it's calling, but if MichKa said, it's 99% likely to be true).
Now, the exceptions would be if you're using it for prototyping something that will use a different database, or if it's read-only, or is read-write but will only ever have a very small number of users.
Michael Kaplan's website, trigeminal.com, used to use a Jet database as the back end (it may still -- I don't know that MichKa ever changed it), and when that was his main website he reported getting 100K hits a day. But it's a read-only site, so fits my restrictions.
There are so many different alternatives and they are mostly easy to use that I just don't see the point of trying to use Jet/ACE as back end for a website. I'd never do it myself (all the websites I'm responsible for use MySQL).
Simply put, go with MSSQL. Express edition is free, and will give you everything you need to migrate away from Access. These articles are talking about Access applications specifically, but the same issues will plague you.
http://resources.zdnet.co.uk/articles/features/0,1000002000,39285074,00.htm
https://web.archive.org/web/1/http://techrepublic%2ecom%2ecom/5208-6230-0.html?forumID=102&threadID=205509&messageID=2136367
I was involved in a SharePoint(WSS) project that was very data centric. The project consisted of more than 500 lists that has very complex relations between them. The client also asked for more than 350 Reports. Don't tell me why did you use SharePoint from the beginning. It was a managerial decision and we already delivered the project after 14 months of pain (this is 6 months overdue to the deadline)
When we first started the project, we didn't know anything about SharePoint development (believe it or not). The management said that they will take the risk. They were very convinced that SharePoint is the optimal solution for anything!!!(well, that proved wrong at the end of the project).
Anyway, we were learning SharePoint while we were developing. Our development were mainly based on SharePoint designer to customize all the AllItems/NewForm/EditForm/DispForm for every list to provide the needed logic/validation that the client asked for (Using JavaScript). We also implemented around 15 Custom Fields (e.g. master-details fields). We also made an event receiver to handle all the adding/updating/deleting... events for all the lists in the site. Plus around 40 ASP.Net user controls.
The main problems that faced us (we worked-around it but sadly in an inefficient way)
1- The Client asked for a search web part in each AllItems.aspx. The search web part should have multiple keys for the client to search with. We did that using Form Web parts using SPD no problem. But the real problem was how to search for a related field that was not in the current list. (So, in such cases we had to save these fields values in our list to be able to search for (crap, I know!!)). You might ask, why didn't you implement ASP.Net user controls for such task? Well, that would require us to forsake the default AllItems web part, and were already customized hundereds of AllItems.aspx pages with alot of customization that would take us a lot of time to reimplement them from the beginnging. Also, even if we used user controls, CAML is very inefficient in retrieving data from multiple related lists!
2- I think you can guess this one, if we've already faced a big time doing search web parts, how on earth will be able to do the 350 reports!!:D But we figured out a work-around (as usual :S) we made an Access DB file with links to all the 500 sharePoint lists, then we implemented a user control that has a report viewer control. This user controls takes an ordinary T-SQL Query to query on the Access DB, the Access DB retrieves the data from the SharePoint DB and pass it back to the user control which views the DataSet on the report viewer.
There are other administration related problems, but I would like to focus on the development here.
So, after I showed you the picture (sorry for the long post). What do you think was the best SharePoint development technique that we should have taken in such a data centric Project, if any?
I heard that some companies doesn't use lists at all in such projects, and builds there own SQL database tables instead of the SharePoint Database. But I can't keep my self from wondering, If I'm making my own DB, and hence implementing my CRUD web parts from scratch (We will also lose the security module benefits provided by SP Lists), what would be the benefits of SharePoint?
Once again I apologize for the long post.
I think you found out exactly what I did. Sharepoint just isn't good at handling large enterprise type applications. We ended up creating a custom database to house our data. We used Webparts for the user interface, but otherwise, the entire application was independent of Sharepoint.
In my opinion, Microsoft is overselling Sharepoint. It's actually good at team collaboration sites and simple Excel services applications, but anything beyond that it just isn't capable of handling.
I have to disagree with both Geoff and Abu in regards to SharePoint being a bad choice for large enterprise applications.
As you state yourself Abu your team were learning on the job as you had no SharePoint development experience, the issues you faced was more a Management error that a platform problem, management should have brought in SharePoint contractors to work alongside your team to help build what sounds to be a fairly complex system.
As a developer who has worked with SharePoint for a number of years many of the projects I have worked on some that I myself would not have believed suitable for SharePoint with in my first few years of developing on this platform, however now with more experience I know how to leverage the power of the platform far better and I realise the advantages gained using SharePoint for projects of that nature. That said I have a number of issues with parts of the platform but this is no different to any other platform I have worked on including parts of the ASP.Net platform.
If I was asked to develop a solution using a bespoke Java based system (or perhaps the new MVC platform) I am sure I would experience many problems similar to what you experienced where I simply don’t know what the right approach would be. That would not in any way be an issue with the platform but more with my inexperience.
I am sorry to hear that both of you experienced pains working within the bounds of the SharePoint platform that was forced on you by your management. Though I am disappointed that you are so fast to point the blame away from yourselves and your management.
Was SharePoint the best platform for your projects I can’t say, but that doesn’t make it a bad platform for enterprise applications.
I disagree with Geoff that SharePoint is no good for large enterprise type apps. You have to remember from the start that SharePoint is a development PLATFORM. This means it gives tyou a lot of functionality out of the box, but is extremely customisable.
Being a platform does not mean every bit of customisation needs to be done based on SharePoint lists. Seeing as it is built on ASP.NET you can do anything in SharePoint you could do in ASP.NET as well.
I have built a great deal of ASP.NET apps that were hosted in SharePoint, letting SharePoint do the authentication etc.
I have to say though, determining where SharePoint should stop being your base and you should switch to regular ASP.NET is sometimes hard..
If you are looking for a data-centric solution in SharePoint, the best solution is to use the Business Data Catalog (BDC). This keeps your rich data relationships and all of the SQL (or other DBMS) goodness you want where it should be - in a repository designed to be optimal at storing data.
For an overview of what the BDC functionality can do, see this post on the SharePoint Team Blog. For much more details, read the series on SharePoint Magazine. Note that these features requires an Enterprise license of SharePoint 2007.