Family Tree Maker 2008 was released this week as completely redesigned software built with Microsoft technologies. The redesign starts at the user interface but doesn’t stop there. This version of Family Tree Maker is built on Microsoft’s .NET Framework and uses the Composite UI Application Block(CAB) and the Smart Client Software Factory(SCSF) . I am familiar with these technologies as I use them daily as part of my responsibilites as a Senior Software Architect building a client framework for application teams within my company.
A few weeks ago when I installed Family Tree Maker 2008 RC1, imagine my surprise when I discovered that it was built with the same frameworks that I use at work. I can run the software and understand how it is composed at the same time. I find myself thinking, this is the Shell, and these are Workspaces and the SmartParts.
The following CAB terms are useful for this discussion:
- Shell – the main window of the application that contains menus, toolbars, and Workspaces
- Workspace – a user interface container that holds SmartParts
- SmartPart – a section of the user interface devoted to a specific task
- Module – a deployable unit of code that can contain SmartParts or business logic; the Shell loads one or more Modules
Some of the benefits of building an application with CAB/SCSF are: