Employer » Microsoft
Date » Summer 2005
Role » Program Manager for Live Meeting
Details » Collaborated with cross-group teams to design public API and user-interface console
Public Business Support Systems API

At the time, provisioning of customer accounts for Live Meeting was not yet automated, denying customers the ability to self-manage their accounts and partners the ability to programmatically manage accounts they sell. As a result, my first project was to design a public API that external order entry systems could call to successfully manage customer accounts.

The goals I outlined within the specification included:

  • Describing information exchange between these systems through specific XML schemas pertaining to each API call
  • Ensuring design was versatile enough to provide flexibility as product and service offerings expanded in the future
  • Incorporating industry standards (web services, service-oriented architecture, RosettaNet, etc.) in API/schema definitions whenever appropriate
Sequence and Process Flow Diagrams

The public API specification was very comprehensive including:

  • Terminology and definitions
  • Descriptions of scenarios of use
  • Detailed definitions of each API call
  • Sequence diagrams for synchronous and asynchronous API calls
  • Business scenarios along with sample XML schema formats

User Interface Console for Hosting

My second project was a user interface console that an internal group (Hosting) could use to more efficiently handle its existing operations. It represented the first phrase in the larger goal of better managing the production of environment and accounts.

One of the key challenges of this project was the ambiguity of the problem. I facilitated an initial brainstorming meeting with Hosting to identify current pain points. From there, I needed to properly scope the project and identify the few key most important problems to resolve with the new tool. In doing this, I spoke with a number of different people in Hosting as well as other groups in Microsoft to generate ideas of how best to approach the design. I created user interface mockups and various objects within the tool that the user could easily manipulate via drag-and-drop.