Release Milestone 1 - Planning

Business Objectives

  • Provide a means to add multiple configurable editors to an existing DSL, hosted in a single tool-window, or as a replacement for the default designer of a DSL.

Technical Objectives

The technical objectives of this release are:
  • Provide a means to add/remove/reinstall the tool-window infrastructure
  • Provide a means to provide and replace the graphical DSL designer with the editors if 'Custom Editor' defined in DSL.
  • Provide a means to provide a custom editor for the DSL
  • Provide a means to add/remove/reinstall any number of configurable editors
  • Provide a means to configure/reconfigure each editor
  • Provide an easy means to switch between editors
  • Editors should be customizable to allow interaction between the with user, diagram and domain model.
  • Editors should change the appearance of the tool-window when active
This release with continue to follow the patterns of the first release. And this release will leverage assets from that release.
This release will build upon those patterns and enhance them where necessary to add further functionality.

Technical Implementation

  • The PowerToy infrastructure will be installed/re-installed/removed using the mechanisms of the previous release.
  • The layout of added artefacts will be changed to separate generated code from user editable code and resource artefacts.
  • The default editor from previous release will be separated from this infrastructure, and instead be generated at design-time based on configuration
  • A custom DSL will be built that allows the user of the PowerToy to define and configure multiple editors, associating them to custom controls and metadata for display and behaviour. This custom DSL will become a design artefact for the PowerToy user.
  • The PowerToy infrastructure will use a dynamic registration and runtime load mechanism to load each editor, and arrange the editors as necessary to achieve the desired user experience.
  • The PowerToy will provide a container control that will manage the runtime loading, display and switching of editors.

Technical Constraints

  • Installation of this release should not be side-by-side (only one version of PowerToy allowed to be installed)
  • Only targeting VS2005 (Whidbey), not targeting VS2007 (Orcas)

Last edited May 16, 2007 at 9:33 AM by jezzsa, version 5


No comments yet.