Bookmark and Share

 

 

 

 

Microsoft - Our Platform of Choice

Whilst we believe that a variety of mobile technologies may be applicable to unique Mobile Workforce Management solution needs, Blue Dot has selected the Microsoft .NET technology stack for implementing the vast majority of its enterprise-grade Mobile Workforce Management solutions.  Prior to making this decision, we explored and exhausted a parade of technology options and have written Mobile Workforce Management solutions in everything from C to C++ to Java to custom languages and 4GL tools developed in house.  In the end, we’ve selected the CLR (Common Language Runtime) and other Microsoft based technologies for the reasons shared below:

  • Windows Operating Systems (e.g. Windows XP / Vista / 7) make up the enterprise-dominant computing platform and overall still hold above 90% of the OS market share.
  • Windows Mobile is the only OS offered on most ruggedized handheld for
    asset-intensive industries
  • Enterprises already have large communities of Windows devices and know how to manage and support them
  • Microsoft provides first- class support for Windows and .NET as well as fast response to security issues across their platforms
  • .NET is an absolute first class citizen on Windows
    • .NET has a huge API that is exceptionally well designed and well documented
    • .NET has a very large developer community and associated ecosystem of tools, libraries and applications
  • The availability of the .NET Compact Framework for Windows Mobile Devices
  • The availability of Silverlight for rich web applications and Windows Phone 7 Series development (Silverlight is a specialized .NET subset like the Compact Framework)
  • The tooling for creating .NET applications is industry best-of- breed: Visual Studio 2008 and soon to be released Visual Studio 2010
    • Provides accessibility to the new-comer developer and a massive amount of advanced usage and customization to the veteran developer              
    • Large number of Visual Studio extensions and productivity enhancers (F#, etc)
  • The CLR has been ported to Linux, Unix and the Mac platform via the Mono project
  • Large and growing Alternative and Open Source community surrounding .NET
  • Lots of developers that know .NET and lots of resources for getting help and finding projects that solve specific problems of yours

One of the challenges of developing on the Microsoft platform is making specific technology decisions within the platform itself.  The luxury of having many choices is a good thing, but at times it can be tricky to figure out where to start.  This is one of many areas where Blue Dot’s 20+ years of knowledge and experience from implementing hundreds of Mobile Workforce Management solutions benefits each and every customer.  Every packaged and tailored Mobile Workforce Management solution starts from the same solid base of tools, patterns, practices and libraries giving each mobile project a massive head start.  All of the components that we use are standards-based, extensible and interchangeable by design so that if we need to swap one technology component for another to meet unique requirements, there’s little or no impact on the mobile project. 

Every organization that we work with can be assured not only that the Mobile Workforce Management solution we’ve created has been built with the best blocks available, but also that it is designed in a way that when business needs and requirements eventually change, the Mobile Workforce Management  solution can be easily enhanced and evolved to keep up.  Best of all, organizations need never be hand-cuffed to or dependent upon Blue Dot. The tools, libraries and source code that make up the mobile project are every organizations-to-keep so you can be free to control your own destiny with software development resources you desire. Additionally, because each Mobile Workforce Management solution was all built on a platform backed by a large and passionate developer community, finding technical resources with the right knowledge to help you implement vNEXT will never be an issue. Though this approach may seem to reduce downstream service revenue with our customers, we have found that happy customers with freedom of choice generate far more revenue long-term for us than unhappy customers without.

In the spirit of full disclosure after our glowing report of Microsoft, Windows and the .NET Framework, we’d like to acknowledge some of the platform pitfalls and other areas of concern that organizations should be aware of.  We are proud of our Microsoft Golf Certified Partner designation for Mobility and ISV Solutions.  Despite this, we believe that publically sharing our concerns and critical feedback is beneficial for all parties involved.  To date, our biggest disappointment is Microsoft’s lack of innovation and advancement on their mature mobile platforms (Windows Mobile specifically) and their new, apparently single-minded focus on the consumer market with Windows Phone 7 Series.  The emergence of the iPhone and the wave of other competitors such as Palm WebOS and Android are dramatically changing mobility from many perspectives. The ease of use and functionality never before seen on mobile handheld devices is increasing general user expectations for mobile computing and pushing competition in the space like never seen before.  The .NET Compact Framework is also often substantially lacking in comparison to its full framework sibling.  Blue Dot would like to see Microsoft’s mobile platforms continue to evolve and innovate, but we’d like them to do it in a manner that puts their focus back on the enterprise-environment: solving real business problems to fulfill real return-on-investment.   We agree with Microsoft’s position that the consumer and enterprise spaces are beginning to converge with mobile applications moving to the cloud and end users having multiple ‘screens’ (many of them mobile) into their data and software systems.  Blue Dot does not think by any means that the rich client application is dead or dying, but rather
that there is going to be a collision of thin and thick client applications and a blurring of
lines between the two.

Blue Dot has built an add-on framework and SDK for .NET and Visual Studio to address many of these gaps and shortcomings.  The resulting product, mfLY! for Visual Studio enhances and optimizes the capabilities of .NET and Visual Studio for mobile Workforce Management application development. It provides M-V-C pattern guidance to maximize flexibility, modularity and re-use; an extensible and intuitive Data Access Layer; and a secure and reliable data transport and integration services layer. For example, mfLY! provides a transport mechanism for Microsoft's Sync Services framework, a glaring omission for Windows Mobile developers.

Other Platforms of Choice

As noted earlier, there are several other platforms that are available and may warrant consideration by many organizations.  The introduction of Apple’s iPhone 2 years ago has had a tremendous affect on the consumer market, and the number of phones running Google’s Android Operating System is rapidly increasing.  Nokia continues to hold the largest market share for consumer phones (by a large amount), and other platforms such as Qualcomm’s BREW and Palm’s WebOS have their fans.

While some tools and frameworks promise ‘write once, run everywhere’ capabilities, Blue Dot believes that rich applications written in native tools per target platform are currently the best approach for highly functional, performant, rich and robust mobile applications.  However, we have carefully designed and developed our server infrastructure to utilize standard SOA technologies that are accessible and compatible with all major platforms.  This approach allows us to leverage our existing communications services and integration framework across most modern platform choices.

In accordance with this approach, Blue Dot has successfully designed and completed
applications for the Apple iPhone using the iPhone SDK and the Objective C software language
and will soon begin a similar exercise for a Google Android device using the Android SDK and the Java software language and for Windows Phone 7 Series using Visual Studio 2010, Silverlight,
and the .NET Framework.