Tuesday, December 30, 2014

To Code or Not to Code in Dynamics CRM

Microsoft Dynamics CRM offers a wide range of features combined with the ability to customize the data model and workflows without any coding.  The question is, will these features fulfill all your business requirements or do you need to write some custom code? 

This is an important question, because once you start writing code you need to put in place a commensurate framework, methodology and platform to support it.  For instance, you may need multiple environments for development, testing, staging and production.  You may need version control for code as well as documentation. 

If you choose to go the No Code route, you may need to compromise the complexity of your business rules and change the way you work to suit the product better.  You will also have to settle for a bit less automation of some functions that could be streamlined through code. For instance, if you are determined to assign Account IDs that are a combination of the abbreviated customer name, state and date that they became a customer you will need to write some code.  Integration with other systems such as inventory or timesheets nearly always requires writing code.  Complex field derivations and validations require coding. 

If you are a do-it-yourselfer and not a programmer, and you want to implement Dynamics CRM on your own, try not to take on more than you can handle in terms of custom code.

Third party plug-ins can extend the capabilities of Dynamics CRM without forcing you to write and support custom code of your own. You can purchase plug-ins for reports and calculations or for functions such as sales tax calculation. 

Be sure to consider where you stand on custom coding in your implementation of Dynamics CRM. 

Tuesday, December 23, 2014

Essential Dynamics CRM Customizations for Government Contractors

Microsoft Dynamics CRM offers a rich set of features and a data model for sales force automation and marketing activities.  Each industry (and each company) requires some configuration changes in order to make it work according to their business processes.

For government contractors, here are some of the most common customizations:
  1. Change the focus from individuals to organizations.  You are likely selling to agencies (accounts) rather than consumers (contacts).  Add the relevant fields to forms and views.  For instance, marketing list members doesn’t show the account name by default. 
  2. Define the sales process in opportunities.  Define all the steps that an opportunity goes through before becoming a contract, such as sources sought, request for information (RFI), request for proposal (RFP), down-select, orals, best and final offer, and verbal approvals.  Be sure to allow for all your proposal review steps. 
  3. Add fields to track contract vehicles and types of competition.
  4. Add your own metrics. For instance, we often track how many users a software system will have in order to calculate license costs.
  5. Update reference table values if needed, such as the reason for an opportunity loss.  Do you want to add an option to show you decided not to bid?
  6. Update dashboards to show what you really care about.  Win ratios?  Proposal activity?
  7. Decide how to add the documents which accompany an opportunity, such as solicitations, amendments and proposals.  You could store them in SharePoint, in attachments to Dynamics CRM or in other repositories.
  8. Add your bid team to the opportunity, showing the roles for each person in the proposal.
  9. Allow for teaming if you pursue contracts as a subcontractor or if you hire subcontractors.
  10. Decide how to use the Leads entity.  Do you want to start there for the sake of email marketing campaigns?  Do you prefer to build out the list of targeted accounts and contacts instead?
InfoStrat has put all these customizations and many more in its solution Dynamics CRM for Government Contractors. 

Thursday, December 11, 2014

Microsoft Services Provider License Agreement (SPLA) Benefits

Microsoft offers a special licensing plan for organizations that offer hosted software and services to end customers who can sign up for subscriptions rather than traditional perpetual software licenses. This program is Microsoft Services Provider License Agreement (SPLA) and is probably Microsoft's least understood licensing option.

Hosting providers who want to offer software services to their customers and who will include software licenses as part of their service offering should use SPLA. Microsoft SPLA is the only Microsoft Volume Licensing program that allows Microsoft products to be used for commercial hosting.

Under SPLA, Microsoft products are licensed per month, either per user or per server depending on the product.  Nearly the full catalog of Microsoft products are available under SPLA. 

If you already own perpetual licenses for Microsoft products, you can also use them in conjunction with a hosting partner, in essence extending your on premise deployment to a dedicated hosting facility. 

InfoStrat has been a Microsoft SPLA partner for over five years, allowing us to offer our clients greater flexibility than perpetual licenses as well as greater customization than Microsoft cloud hosting. 

Tuesday, November 18, 2014

The Optimism Imperative for Small Business Owners

Small business owners must remain optimistic, even after repeated setbacks, in order to be successful.  It's tough to own a small business, and easy to become bitter from the bad experiences you are nearly sure to suffer. 

Many people will try to take advantage of you, from customers to suppliers to employees to business partners.  You can swear never to be victimized again, and institute tougher practices to prevent loss, but most of these will alienate the good customers and partners.  This hurts business more than the direct damage from bad actors.

Yelp is full of unflattering descriptions of small business owners who treat customers with distrust or arrogance.  You often read of restaurants that quickly make diners feel unwelcome, or bike shops whose mechanics and clerks make paying customers feel stupid. I try to avoid such businesses, although I can't stop buying bagels from the grumpy deli owner in my neighborhood.

Only through optimism and the related acts of forgiveness (and perhaps forgetfulness) can a small business owner maintain the positive outlook that attracts customers, employees, and business partners.

Monday, October 6, 2014

Introducing the InfoStrat PortVue Portal for Dynamics CRM

Many Dynamics CRM solutions involve external or occasional users who do not need access to the full Dynamics CRM user interface and would be better served with a simplified view of selected forms and reports.
  • The InfoStrat PortVue portal simplifies portal access to Dynamics CRM, allowing you to
  • Support anonymous and authenticated users
  • Configure web pages which combine multiple elements such as data grids, data forms, and static HTML content
  • Enter data into multiple Dynamics CRM entities from a single web page
  • Allow document attachments to online forms
  • Run reports and export as PDF, Excel and other formats
  • Provide sortable grid editing for multiple records
  • Enforce Dynamics CRM security model and provide additional levels of security
  • Allow enterprise search across multiple Dynamics CRM entities
  • Support multiple browsers
  • Deploy on Microsoft and open source web platforms
  • Provide self-registration, password reset, and password encryption
  • Access other back-end systems



For more information, visit our solution page.

Thursday, October 2, 2014

Top Ten CIO Checklist for Cloud Computing

Once you've made the decision to move your servers to the cloud, be sure to read the fine print. 

Here are some factors that CIOs and other buyers should look for:
  1. Understand your data security needs.  What form of encryption is provided?  Are there government security rules or standards you must follow?
  2. Don't take virtualization for granted.  Make sure that all your servers can be virtualized.  Some older systems such as mainframes and AS/400 may require co-location instead unless you want to migrate to a more modern system.
  3. Start small and prioritize your cloud migration.  Start with less essential services so you can learn how to transition from your data center to the cloud without as many angry users.  Running for a month or more with limited services will give you a better idea of actual costs.
  4. Watch pricing for data in and out.  Many services don't charge for moving data to the virtual server but charge for moving it off the server.  So if you have ten server images to move, you may get a different bill if you move to each from your office server than if you move to one in the cloud and copy from it to another.
  5. Track your return on investment. Keep checking your costs.  One of the main motivations for moving to the cloud is to save money, so keep track after you migrate and make sure that you are succeeding in this goal.  Report back to stakeholders so they know that the change has been worthwhile.
  6. Check the specs on your servers carefully.  Review all the performance parameters for the servers to be sure you are comparing apples to apples in choosing a cloud vendor.
  7. Test your backup and restore.  Backup and restore capabilities are essential, but worth nothing if you can't do them when you need them.  So put them through their paces.
  8. Find out the speed limit.  See if your provider sets a maximum speed for your servers.
  9. Learn about shared and dedicated servers, single and multi-tenancy.  Find out what is right for you.
  10. Standardize your platform.  The more you rationalize your servers and move them to a standard platform, the easier it makes migration and management.

Friday, September 12, 2014

Getting Your Developers on Board with Dynamics CRM

Many businesses and government agencies are adopting Microsoft Dynamics CRM to automate sales and customer service or even extending CRM for other business functions using the xRM approach. Even with all the features and benefits of Dynamics CRM, one group is not always thrilled about adopting it -- your software developers. 

Here are some thoughts and hints that may help adoption:

1. Stress the career advancement.  Learning a new product helps developers expand their skills and increase their value to employers -- so show your appreciation.

2. Tailor training to developers. Find a condensed training or self-study to learn how Dynamics CRM operates out of the box and then move on to development topics. 

3. Find a first project.  Don't start training until you have one or more projects to jump into. 

4. Identify mentors. Tap someone to lead the group and be a resource when people run into problems.

5. Collaborate as a team.  Work together to create development standards and style guides. 

6. Conduct group code reviews.  Show and tell or lunch and learn sessions can be a great way to bond the team and advance the knowledge of all your developers.

7. Burn the boats.  Stress that your organization will go forward with your CRM implementation regardless of complaints from the development team.  Don't allow platform debates to continue indefinitely.

Although it's always a challenge to learn new tools, Microsoft developers already know much of the coding techniques they will need to be successful Dynamics CRM developers.  Ulutimately, the xRM approach can make developers more productive and reduce boring .NET maintenance programming.

Tuesday, September 9, 2014

Dynamics CRM Developer Skills Self-Assessment Checklist

In order to deliver developer training on Microsoft Dynamics CRM, you need to understand where your developers are starting.  We use the list of relevant skills to have the developers assess themselves, writing years of experience in the second column.


Skill Area
Years
Exp
Searches and Views
 
Activities, Assignment and Audit
 
Using Charts & Dashboards
 
Sales: Lead, Opportunity, Quote, Invoice
 
Marketing: (Outreach) Lists, Campaigns
 
Service: Case, Schedule, Calendar, SvcActivity
 
Service: SLA, Entitlement, Rules,  Contract
 
CRM Wizard Reports
 
Security Model
 
Entities and Fields
 
 
 
 
Business Rules
 
Business Process Flows
 
Dialogs
 
Actions
 
 
Charts
 
Dashboards
 
Templates
 
SQL Server Reporting Services
 
CRM Installation (Version __)
 
Configuring Document Management
 
Customizing Site Map and Ribbons
 
JavaScript
 
Plug-in Development
 
.NET development with C#
 
.NET development with VB
 
Other developer tools:___________
 

Tuesday, September 2, 2014

Development Standards for Dynamics CRM

In xRM development, nearly every solution requires some custom development in order to extend Dynamics CRM for business scenarios outside CRM functions such as sales force automation and customer service.  As with any software development, strong naming standards will help your developers and testers save time and produce a better solution.

Here are some modest suggestions:
  • Be generous in comments inside your code.  The next developer who takes over will thank you.
  • Provide unified coding standards on the JavaScript libraries.
  • Use consistent file naming conventions.
  • Use only one .JS file per form for the form-specific logic.
  • Don't write JavaScript event handlers from the control property window rather than as part of the JavaScript file associated with the form.
  • Create standard common function libraries, to address common functionality across forms. 
  • Use JavaScript or business rules (in Dynamics CRM 2013) to show/hide/enable/disable controls rather than creating multiple similar forms.
  • Be consistent in designing the user interface, using the same control types with an eye toward the user experience.

Thursday, August 28, 2014

Forbes Article On Microsoft Kinect Apps

Michelle Greenwald of Forbes has recently written about Microsoft using Kinect technology to springboard into exciting new business areas:

http://www.forbes.com/sites/michellegreenwald/2014/08/18/how-microsoft-has-leveraged-xbox-kinects-technology-into-brilliant-new-business-areas/

She highlights ten new Kinect applications, ranging from airplane and automobile visualization to physical therapy and clothing retail.  Two of these were developed by InfoStrat for its clients -- both relating to education. 

The Kinect media wall at Liberty University engages visitors with interactions. 



Kaplan Early Learning Company builds interactive games using the latest technology including motion sensing and touch. 


Tuesday, August 26, 2014

Scenarios for Microsoft Azure

To put it simply, Azure is the Microsoft cloud.  Microsoft hosts an Internet-scale computing and services platform in data centers around the world.  Azure is flexible and hosts not only Microsoft servers and products, but the full range of modern computing capabilities. Several scenarios are appropriate for deployment in Azure:

1. Extend your data center -- if you run out of space, racks, computers or other infrastructure, you can start up Azure virtual servers for the same purposes you would deploy servers at your data center.  Azure servers can be set up in minutes rather than waiting days or weeks for physical hardware.  You could use these servers for development, test, staging or production servers.  You can run Windows Servers, Oracle, SAP, Hadoop and other servers.

2. SharePoint on Azure -- If you want more flexibility and power than you can get on shared hosting of SharePoint, you can host your SharePoint documents and data in Azure.  Migration is easy and you can interoperate with Office365.

3. ERP on Azure -- You can move your ERP systems such as Microsoft Dynamics, SAP and PeopleSoft to the cloud using Azure.

4. Hybrid identity management -- Azure can be part of your overall authentication scheme for your organization, allowing single sign-on and sophisticated security implementations.

5. BigData on Azure -- Using a cloud platform allows you to easily scale your big data projects as needed.  You can quickly build a Hadoop cluster and make it available to all the users who need it.

6. Extend your storage on Azure -- Cloud storage is inexpensive and provides excellent options for disaster recover and backup.

7. Custom websites -- Azure Web Sites can host small or large websites, and you can dial up more scalability whenever you need it.  Sitecore provides cloud-based campaign management.

8.  Mobile apps on Azure -- Mobile Services can power apps for any mobile platform, including iOS, Android, and Windows.  Azure can store data and host mobile apps.

From these scenarios, you can see that Azure supports many different cloud scenarios, from infrastructure as a service to application hosting.  InfoStrat helps its clients determine the best ways to use cloud computing to serve their strategic goals.  Microsoft offers a pricing tool to estimate Azure costs:  http://azure.microsoft.com/en-us/pricing/calculator/

Thursday, August 14, 2014

Age of Empires to Learn Business

The Age of Empires series of games is a fun way to learn about resource allocation and strategy.  It imparts some lessons that are quite useful in business. 



Should you build capacity now for future demand or maximize profit in the short run?  Hire more sales people or train your staff to be more productive. 

Gaming is a great way to see how your choices play out, and strategy games help you understand trade-offs and the importance of fast decisions.

Tuesday, July 29, 2014

Back to the Future -- Cloud Infrastructure Pricing

A growing trend in cloud computing is to set prices based on actual utilization of resources such as memory, storage, processing, and bandwidth.  This is a rational way to price cloud infrastructure, because these are the items that contribute to the cost of cloud hosting, especially as the scale of a solution increases. 

One of the benefits of moving to the cloud is to not have to worry whether you have enough computing resources, because it is so easy to add more resources in a cloud environment.

In some ways, this is a throwback to timesharing, the venerable practice of buying time on an expensive mainframe when it was inconceivable that everyone would own their own computer.

The downside of usage-based pricing is that the actual bill is hard to predict.  Without knowing the cost in advance, budgeting is challenging.  How can a customer plan for this expense?

Another risk is that utilization of resources may be beyond your control.  You could have a surge of real or fake users hitting your site or apps and then get a high monthly bill.  No doubt companies will step in with approaches to reduce the risk of pricing uncertainty, as has happened in other industries.  Buyers of cloud computing can also take comfort knowing that pricing is on a steady decline -- at least for now. 

Tuesday, July 1, 2014

Demo Video Now Available for Dynamics CRM for Government Contractors

InfoStrat has released a new video showing its sales force automation solution for government contractors based on Microsoft Dynamics CRM.

 
Dynamics CRM for Government Contractors provides government contractors with a flexible solution that helps automate business capture processes, including market intelligence analysis and in-depth proposal management.  This solution simplifies the capture process by allowing users to search for opportunities from government databases directly within Microsoft Dynamics CRM and import those search results, creating CRM opportunity records. Users can then follow opportunities through the sales process from proposal and review phases to the final award phase. Dynamics CRM for Government Contractors is built on the Microsoft Dynamics platform to facilitate integration with ERP, accounting, and document management.

Monday, June 30, 2014

InfoStrat Excited About Microsoft Kinect V2

The InfoStrat Advanced Technology Group has been deeply engaged with Microsoft in its products using a natural user interface (NUI) such as multi-touch screens, voice controls, and motion sensing.  We are excited about the latest version of Kinect, and are exploring how it will make NUI apps better than ever.

The following video shows a comparison of Kinect version 1 and version 2 for tracking skeletons.



Skeleton tracking is essential for many games and for practical purposes such as exercise and physical therapy.

Tuesday, June 17, 2014

Microsoft Focuses on Compliance and Agility for Government Contractors

In his blog post today, Elliott Ichimura, Microsoft Global Industry Director, announced a new initiative to help government contractors work more efficiently and comply with regulatory requirements.

Microsoft has recently formed an alliance of its partner companies who focus on the government contractor community.  InfoStrat is excited to be named one of the premiere partners in this group for Dynamics CRM.

The InfoStrat solution Dynamics CRM for Government Contractors has recently been enhanced to work on the latest version of Dynamics CRM and provide integration with data services such as FedBizOps and Onvia.

Tuesday, June 3, 2014

Don't Let SharePoint Grow Like Kudzu

SharePoint is a great product, but it is so easy to use and offers so many options for how you organize your sites and content that it can grow out of control.  In a large organization, the depth and quality of content varies widely from one department to another, and even site navigation can become confusing.

After a few years of using SharePoint, your intranet can become like the wild west, sprawling and lawless.

To get the most out of SharePoint, you need governance which matches the cultural style and policies of your organization.  Consider questions like these:
  1. Do you want a single consistent graphic design and theme throughout your sites?  Should departments "brand" themselves in a different way than the overall organization?
  2. Can users create sites without permission from administrators?
  3. How long should sites last?  How can users know when content is still current?  Are old sites deleted or archived?
  4. Does the site navigation reflect the popularity of sites and pages?  How does it evolve as new content is created?
  5. Do you want the site to look like SharePoint out of the box, or create a more custom website appearance?
  6. Should you have a collection of formal sites as well as a separate set of informal, ad hoc sites for collaboration?
InfoStrat helps clients not only with the technical side of SharePoint, but with planning, design and governance.  Be sure to write down the vision for the intranet, and keep updating your objectives over time.

Agile project approaches are well suited to SharePoint because they engage the project stakeholders.

Upgrading to a new version of SharePoint provides an opportunity to institute governance and clean up your sites. Learning about which new features you will need is a great way to increase overall knowledge of SharePoint and give your intranet a fresh start.

Thursday, May 22, 2014

Microsoft Dynamics CRM for Small Business

Microsoft Dynamics CRM Online is a great solution for small businesses because you don't need to worry about the server infrastructure or purchasing server software licenses.  But what if you need fewer than the minimum five users for Dynamics CRM Online?

Microsoft publishes a list of three options for small businesses to track their sales activities:

http://community.dynamics.com/crm/b/xrm/archive/2014/04/21/microsoft-crm-options-for-small-businesses.aspx

One of them is Hosted Microsoft Dynamics CRM: a cloud-based CRM solution from xRM, a Microsoft partner that specializes in CRM and private cloud solutions. Hosted Microsoft Dynamics CRM is priced at the same monthly subscription rates as Dynamics CRM Online but does not have a minimum number of users.  It requires an initial setup fee of $50 in addition to the monthly subscriptions. 

Monday, May 19, 2014

Government Contractors: Tailoring Your CRM to Shipley Processes

Shipley Associates (www.shipleywins.com) has developed the best known business development processes for government contractors.  The Shipley seven-phase process has been proven to help government contractors increase their win rate and achieve growth in new contracts. According to their publication Capturing Federal Business:

"Rarely, though, are all steps shown appropriate for a particular company or a given business opportunity.  Successful business development organizations will tailed this model to reflect characteristics and time scales of their markets, leaving out or adjusting tasks if necessary."

Microsoft Dynamics CRM for Government Contractors lends itself to tailoring, so you can configure automated business processes to match the needs of your company and the type of opportunities you pursue.  You can quickly add or delete fields, and design workflows using a wizard user interface.  As I said in a February blog post, one size does not fill all for government contractors. 

Tuesday, May 13, 2014

Three Types of Mobile Apps for Dynamics CRM

Mobile clients are big news in Dynamics CRM 2013.  If you are serious about mobile CRM, you will need to choose from among three types of mobile apps: Microsoft apps, third party apps, and custom apps.  Each of these has strengths and weaknesses.

The easiest path is to experiment with mobile CRM is to download the free Microsoft for your device. 

Today, Microsoft offers its own official, supported mobile clients for iPhone, iPad, Android, and Windows Phone. Microsoft has made all its apps look similar to the web experience on Windows 8.



The second option is to buy a third party mobile client for Dynamics CRM. such as Resco or CWR Mobility. Third party providers have offered mobile clients longer than Microsoft.  In some ways, they are more fully featured and offer the ability to customize in ways that are not supported by Microsoft.  Resco, for instance, offers the Woodford solution which is installed in Dynamics CRM to allow CRM administrators to configure the mobile experience from within Dynamics CRM.



The most expensive and difficult option is to write a custom mobile app for Dynamics CRM.  You must choose a development platform and language and design the app from the ground up. You could choose a native development tool or use a cross-platform development tool such as Appcelerator or Xamarin.

The advantage of a custom app is that you can optimize the user experience. You can make your iOS app look and feel exactly like an iOS app and follow the conventions of the platform.  You can have each app take advantage of the unique form factor and features of the mobile hardware.  You can optimize a user experience for a task, reducing menus and navigation to the bare minimum.  For instance, a delivery driver or airline gate agent might need a closely tailored user experience for enhanced speed and accuracy.  The following is a screen from the InfoStrat mobile Constituent Manager solution for Android. It allows the user to identify a point on the map using their GPS coordinates.




One important consideration is where you have deployed your Dynamics CRM solution.   Some apps only work with Dynamics CRM Online, and others only work with on premise deployments.  For Microsoft mobile apps, you must configure your Dynamics CRM deployment to be Internet-facing.   Here is a list of troubleshooting hints for mobile and IFD.






Friday, May 9, 2014

Understanding the Client Types for Dynamics CRM Online

The most frequent question I receive regarding Dynamics CRM licensing relates to the three types of client software licenses available: Professional, Basic and Essential.  Which is the right one for your users?

The easiest option is to buy all Professional licenses because they represent the superset of all the Dynamics CRM features.  Your admin users, power users, and others who use all or nearly all features will need these licenses. 

At the other extreme is the Essential license.  This license is for internal users (in your organization) who will interact with Dynamics CRM through custom applications or a portal, and who do not need to access the Dynamics CRM 2013 user interface at all. This is the least expensive license and might be appropriate for a large number of users with light functionality needs. For instance, if you are using Dynamics CRM for a helpdesk, you could let users start or check on the status of a trouble ticket on a web page.  The hidden cost of Essential licenses is that someone must build a webpage or other application to provide a user interface to Dynamics CRM.

In the middle of these options is the Basic license.  Unlike Essential, it gives the user access to the Dynamics CRM user interface, but restricts which entities are included.  Be sure to take a close look at your requirements before choosing Basic instead of Professional.

For more information, contact your Microsoft representative or see the Dynamics CRM cost calculator.  Complete licensing guides are available for on premises and CRM Online.



Friday, April 25, 2014

Don't Keep Your Workarounds When Upgrading to Dynamics CRM 2013

Dynamics CRM 2013 was a much more significant upgrade than the jump from Dynamics CRM 4.0 to Dynamics CRM 2011.  It makes the user interface much more contemporary -- so much so that it is jarring to longtime Dynamics CRM users. 

Once you are over the shock, though, you realize that Dynamics CRM 2013 helps you improve the user experience, and eliminates complaints about the "clickiness" of Dynamics CRM.

Another benefit is that Dynamics CRM 2013 includes features in its user interface that required coding in earlier versions of the product.  Want multiple versions of forms? mobile forms? conditional fields?  All these are in there without the coding required in say Dynamics CRM 4.0.

So when you upgrade to Dynamics CRM 2013, analyze before you convert your code -- you may not need it anymore.  If you end up making your 2013 version look and behave the same as it did in 4.0 or 2011, you're doing something wrong and not taking advantage of the features of the latest version.

Tuesday, April 8, 2014

Microsoft Ends Support for Windows XP

The day has finally come.  You have been hearing about it for a long time.

Windows XP served me longer than any other software product.  Sure, I've had all the others, but you have to admit it was there when you needed it.

Anyone who finds it hard to let go may enjoy this:


So turn off the wireless and shut down Windows XP.

Monday, April 7, 2014

Epic Fail -- Maryland Health Insurance Exchange

Maryland may have earned an unwanted distinction for its failed Health Insurance Exchange website -- one of the costliest and highest profile failed information technology projects in state government.  The health exchanges were challenging from the beginning, and many states , including Maryland, Hawaii, Minnesota, and Oregon apparently chose teams that were not capable of overcoming the tight deadlines and high performance requirements, prompting a Congressional hearing last week. 

The Washington Post reported that Maryland decided in March 2014 to scrap its work (at a cost of $125 million) and restart with the software used by Connecticut.  Fewer than 50,000 (out of the goal of 150,000) had signed up for coverage on the Maryland site, and most had ended up enrolling through manual processes such as on the phone.

The prime contractor that failed on the Maryland Health Insurance Exchange was Noridian Healthcare Solutions of Fargo, ND, whose contract was valued at $193 million.  They have been replaced with Optum/QSSI of Columbia, MD.

Noridian had hired Fort Lauderdale, FL based EngagePoint for $250,000 per month and EngagePoint in turn hired subcontractors.  EngagePoint moved its headquarters to Maryland following the contract award.

Noridian fired EngagePoint after the failed launch of the site in October 2013, prompting a lawsuit, in part over efforts by Noridian to hire EngagePoint employees. 

Now Maryland politicians are trying to distance themselves from this epic fail. 

Are there lessons from this failure?  EngagePoint accused Noridian of using the traditional waterfall methodology which finishes each step before starting the next.  Could the methodology have been at fault?  Was the team qualified to build the system?  Did the failed exchanges make the wrong hardware or software choices?



Friday, March 28, 2014

Using SharePoint Wikis for Sales Analysis

A wiki -- software that gives you an editable information source similar to Wikipedia -- is a great resource for capturing unstructured information used in pursuing sales opportunities.  Microsoft SharePoint includes wikis, and the latest version is easier to use than ever.

We use our SharePoint wiki to gather up the fruits of web searches, such as the profile and history of the client, information on likely competitors, news stories, and other documentation. 



We use Dynamics CRM to store the structured information on a sales opportunity, but a wiki really is a better place to store unstructured data.  It is so easy to use that people can jump in and contribute with little or no training. 

Monday, March 24, 2014

Stuff Passing as Requirements (SPAR)

Quality software depends on the quality of requirements.  It's not easy to separate real software requirements from other stuff passing as requirements (what I will call SPAR). 

If you were to transcribe a requirements interview and analyze all the documents which are used to inform requirements, you would find the majority of words spoken or written do not translate into actionable requirements.

Here are some common examples of SPAR which you can easily find in software solicitations:

Meaningless bromides
  • User friendly
  • Intuitive
  • Seamless integration
  • Leading edge of technology
Dangerous ambiguities
  • Including, but not limited to...
  • Integration with multiple [unspecified] systems
  • Compatible with mobile devices to be identified later
Impossible constraints
  • Easily accommodate changes without programming
  • Compatible with [unspecified] future products and technologies
  • Meet all privacy laws enacted by federal, state or local governments
  • All updates are accomplished in real time
A skilled analyst or architect knows how to distinguish the signal from the noise because he or she has a mental model of the completed solution based on prior experiences.  A solid understanding of the technology which will be used for the solution is essential for this mental model, because the technology drives the solution paradigm and the user experience.

Agile approaches can contribute to reaching a solution by allowing faster iterations.   The essence of the Agile Manifesto provides for the team to ignore distractions and dead ends and push to deliver software that works. 

Friday, March 21, 2014

When to Hire a Software Boutique

My company InfoStrat is a software boutique.  We're a small company that specializes in several related areas, especially on developing line of business solutions on the Microsoft platform.  I'm often asked why organizations should hire our company rather than a large systems integrator or a staffing company.

A boutique usually consists of permanent, fulltime employees who are organized in teams to tackle a project.  This is different from a staffing company that focuses on gathering resumes of qualified individuals and adding them to a team in another organization.  The team has worked together and knows each person's strengths and weaknesses.

Specialization allows boutiques to stay up to date with the latest technological advances in their area, and they often have more experience in their specialties than generalists. The advantage of a large systems integrator is that their staff covers a much wider set of skills and technologies than any boutique.

Boutiques often have higher hourly rates than staffing companies or global system integrators.  If you are looking for the lowest rate and do not need a team to conduct a project, offshore developers and staffing companies are usually the cheapest.  Global integrators have a wide range of rates, and tend to apply a larger number of hours and people to a task than would a boutique.

Staffing companies do not assume the risk for a project.  They provide people and you are responsible for rejecting them based on their performance.  Boutiques rely on referrals for new business, so they are the most zealous in making projects succeed. 

Here is a table that compares these options:


 
Global Systems Integrator
Staffing Company
Offshore Development
Boutique
Hourly rate
High
Medium
Low
High
Geographic reach
High
High
N/A
Low
Accountability
High
Low
Low
High
Deep pockets
Yes
Maybe
No
No
Specialized
No
No
No
Yes
Mature project processes
Yes
No
No
Yes
Invests in people
Yes
No
Yes
Yes
Strong communication skills
Yes
Maybe
No
Yes

In many cases, the best solution is a team of companies that consists of large integrators and boutiques.  Some of our most successful collaborations have been with global systems integrators such as HP, SAIC, and Lockheed Martin.  The large integrators have broad skills that complement our specializations and their geographic reach is vital for large projects with multiple locations.