The Mobile Client Software Factor

Microsoft's new approach for Windows Mobile developers

A developer working with Windows Mobile in the Enterprise faces the same problem as any other Enterprise developer—the constant search for the best techniques for creating high-quality code as quickly as possible. No programmer wants to reinvent the wheel for every project, and few have the time to research common tasks—such as data access—from scratch, for every new platform.

Of course, avoiding rewriting the same code for each project is not a new problem, and software engineers have spent a lot of time researching the best solutions. When it comes to the Windows Mobile platform, there is the added problem that developers are often more familiar with the desktop environment, and may be cautious about mobile devices, and unsure how to take advantage of mobile-specific features.

To help deal with these issues, Microsoft's "patterns & practices team" created the Mobile Client Software Factory. This collection of code and documentation is designed to address these problems and provide high-quality, reliable, secure, and scalable solutions for software developers.

Fig. 1: How the patterns and practices objects relate to the platform, layers, and components.

Fig. 1 shows a typical Windows Mobile based solution, and how the patterns & practices objects fit into the overall structure of the base platform, layers, and components. The key section in this diagram is highlighted in blue. It represents the Mobile Client Software Factory, which provides the commonly used "blocks" that perform important functions such as network connectivity and database interactions.

If the Mobile Client Software Factory (MCSF) matches the kind of application you want to create, you can follow the instructions to quickly create your own implementation with minimum fuss. The design methodologies that are at the heart of the MCSF lead to a style of programming well-suited to collaboration: if you work on a team, you'll definitely want to investigate this approach to application creation.

Now before I go on, I know that it is easy to skim an article like this and think it's a lot of hot-air and wishful thinking, instead of something that will change your development in a concrete way. But the good news is that the Mobile Client Software Factory is real. It actually exists, and that means there is a large quantity of C# and Visual Basic .NET source code that you can use today in your own projects.

At the time of writing, the Mobile Client Software Factory is in the last phase of development, and is expected to be released in early July. The latest version may be downloaded from: http://go.microsoft.com/fwlink/?linkid=69145&clcid=0x409

Software Factory requirements

Before you can get started, you should know that the current release of the Mobile Client Software Factory requires Visual Studio 2005, the 2.0 version of the .NET Framework and .NET Compact Framework, and a version of SQL Server, such as SQL Server Mobile Edition, installed. If you don't currently own Visual Studio 2005, a good place to get started is with the Windows Mobile 5.0 Developer Resource Kit, which can be downloaded from Microsoft's Web site (http://msdn.microsoft.com/mobility/windowsmobile/howto/resourcekit/default.aspx).

This includes a trial version of Visual Studio 2005. You can test your applications on the supplied Windows Mobile 5.0 Emulators (which are part of the Windows Mobile SDKs), or on a real Windows Mobile Pocket PC running Windows Mobile 2003SE or Windows Mobile 5.0. Smartphones are not currently supported.

Software Factories and Application Blocks

 

Syndicate content