Introducing the LOB Chronicles - Building a CRM Demo

by Evan Hutnick | Comments 15

Today we’re starting a new endeavor in the Xaml teams at Telerik to bring a new demo application your way.   The application that we have in mind is a Customer Relationship Management (better known as CRM) solution intended to help a fictional sales person through the trials and tribulations of his day-to-day experience.  Now keep in mind, we’re not looking to make an application that gets sold under the Telerik banner, rather this is an exercise to see how UX, design, architecture, and our team of eight can work together to produce and explain a brand new demo featuring some the RadControls for Silverlight and OpenAccess ORM.  Plus at the end of it all you’ll have the full source code available for download, so if you really love what we did, pick up a few licenses of the Ultimate Collection to provide you with the tools we are using and use it as a base to extend upon.

CRM Concept

(UX Concept for a CRM - neat, right?)

Split Team

One of the unique things about how we’re approaching this new CRM demo is just how our team is set up.  In our main office (in a galaxy far, far away) we have two User Experience (UX) experts, two front-end developers (the folks who work the magic into our samples and demos), and two developers.  In my local office we’ve got myself, a Developer Evangelist, and one of my colleagues, a Brand Manager.  In other words, people who understand the user (UX), understand the code (devs), can combine these into a cohesive, working application (front-end), and to explain and market this (Evangelism + Marketing), all for the benefit of our customers.

TeamPulse project screenshot

(Phone, Email, Office Communicator, and TeamPulse - essential collaboration tools!)

Goals

What would any good project be without some goals to achieve?  First and foremost this is a new exercise in cross-team collaboration and how we’re presenting the process and story for our customers.  This of course will be captured in hilarious anecdotes, unexpected cut-and-pastes from emails that go back and forth, and of course utilizing TeamPulse to co-ordinate tasks as Evangelism and Marketing get to start working in development sprints instead of our usual “Can it be done by tomorrow?” type schedule.  This will help everyone to stay in sync and ensure that at any given point each person on the team knows where the other seven are with various stories and tasks. 

Moving beyond this we also want to explore just what the workflow looks like when working in this type of setup.  Thanks to the technology and tooling, Silverlight is the perfect candidate for a split between UX/design and development since we can handle everything via binding and viewmodels, allowing design and development to take place at the same time.  All along we will be sure to highlight the different considerations as far as UX, architecture, and controls used (not-so-subtle hint- these will be future posts in this series!) are concerned.  At the end of this process we’ll have given you the chance to see just how a LOB application can be put together using the Silverlight platform, from concept through delivery, and just how Telerik tools help to make this happen.

Technologies

Of course we’re starting with Silverlight for a variety of reasons.  First and foremost we’ve got a control suite known across the industry for reliability, innovation, and a host of controls to cover nearly any LOB scenario, so using RadControls for Silverlight is a no-brainer for any Silverlight application you are developing.  We also just so happened to release the Metro theme for both RadControls for Silverlight and RadControls for WPF, allowing us to make a truly modern looking application with controls styled and ready to go. Oddly enough the product that we are all using to stay in sync with one another, TeamPulse, is built using our Silverlight tools, so we’ve got a proof-of-concept and agile project management in one.  That covers platform, tools, and collaboration, which leaves us with data – since a CRM without data wouldn’t make much sense.  OpenAccess will provide us with everything we need in an enterprise-grade ORM, allowing us to focus on our application instead of the plumbing to move data back and forth.  And od course, any serious LOB application requires some testing, so Test Studio rounds out of technologies to provide easy to use yet powerful testing for our SL application.

Four technologies to rule them all

(RadControls for Silverlight, OpenAccess ORM, TeamPulse, and Test Studio - Your Silverlight LOB Toolkit)

The Next Episode

Where do we go from here?  Any good project starts with some exploration into UX, looking to discover just what the needs of the end user will be before writing a line or code or even opening up Visual Studio (or Blend, in their case!), so we’re going to go deep into the minds of a couple of our UX experts and see just how they would approach an application like a CRM.  Once we have a better understanding of the needs that the end user has we can then begin on some design and architecture work, eventually leading to that first line of code being written. So grab yourself some trials of the above four suites so you'll be able to see first-hand just what we're going to be using and stay tuned!

About the author

Evan Hutnick

Evan Hutnick

works as a Developer Evangelist for Telerik specializing in Silverlight and WPF in addition to being a Microsoft MVP for Silverlight. After years as a development enthusiast in .Net technologies, he has been able to excel in XAML development helping to provide samples and expertise in these cutting edge technologies. You can find him on Twitter @EvanHutnick.

15 Comments

Kyle Banashek
Very nice! As a developer working at a CRM company I'm really looking forward to reading the rest of this series.
Gerry Connolly
cant wait to see where you go from here     
Serhan Altug
Cool, very exciting!
Rob Jones
This looks very promising! Absolutely love the UX Concept. It will be interesting to see where it goes from here!
Jonx
This looks very good...
Than, no offense Evan, but I'm still waiting for the finished Silverlight Recruiting Application...
ct
Looking forward to the progress with the app and a cool Silverlight app!  Not too many of those around unfortunately due to lack of designers understanding XAML.  But hopefully that'll change as the source code and details of how designers interact to develop these types of app get out.
Evan
In order of appearance...
Kyle/Gerry/Serhan/Rob - Thanks! We're hard at work on showing off some of the capabilities of Silverlight as a LOB platform, so we're thrilled that people are as excited as we are to make this project happen.
Jonx - You'll be seeing something in regards to that in the next little bit, reviving that in a much different form but it is going to take some time to get it off the ground.
ct - There is definitely a lack of good designers out there who aren't already snatched up by another company.  Which means that if someone wants to get up to speed with blend and some good old fashioned design theory with the Xaml platforms, you'll be in-demand!
Nikos Miliotis
From a design perpsective, as i see from the picture above you have a lot of parts in the main view. Are you going to use PRISM in order to separate them into regions and compose them together as views?
Evan
Nikos - You'll need to stay tuned to find out. ;D  Right now the UX/design is finalizing, so it may end up looking somewhat different than the above picture, but with that design concept I think I remember counting 7 different regions that were getting loaded with different information based on logged in user as well as what 'screen' you were on.  But yes, we'll definitely be modularizing this as much as possible to separate out different items from one another.
Nikos Miliotis
Great, It will be a definitely good design pattern to follow for large-scale Silverlight / WPF applications. I will stay tuned and follow.!!!
Cliff Gibson
With the introduction of KendoUI what will your future roadmap of Silverlight controls be.  It's a shame this project is not being done in an environment that will support mobile devices (Android, iPad, iPhone etc) in HTML5.  Is this something you will look to be doing in the future? 
Evan
Hey Cliff, the future for the Silverlight suite is bright indeed, I'm helping to draft our Q3 roadmap now and it has some impressive new things heading to our XAML lineup.  As far as this project, it is meant to be a Silverlight demo application that will give people insight into best practices and the workflow for creating a Silverlight LOB application, so we're not intending for people to cruise the CRM with their iPad.  It does include a service layer, though, so you can technically plug any front-end into that and have the data available.  It would also probably push the series to around 40 posts as we cover what HTML5 features are and aren't supported in different browsers, how we've facing x-browser compatibility issues, what features we need to leave out for now because we can't tell everyone to use X phone or Y browser for the 'best' Html5 support, etc., etc.. Don't get me wrong, there is a time and a place for Html5 much like there is a time and a place for serious LOB development, and while you can go either way for some projects, right now this isn't one of them. ;)    
Cliff
Hey Evan, thanks for the prompt reply.
I will be watching with interest the updates and look forward to getting hands on with the demo application once it is available.  As you say the services layer will allow publishing to multiple front ends at a later stage, Silverlight vs HTML5...? Who knows!
Le
Hi Evan,
Do we know what the approximate release date of this sample CRM app will be?
John
Hi Evan,

Please CRM convert to WPF.

Thank so much.

Comments

  1.    
      
      
       
  2. (optional, emails won't be shown on public pages)
  3. (optional)
Read more articles by Evan Hutnick - or - read latest articles in Developer Tools