eVisioner Case Study
OvervieweVisioner, a leader in team performance management systems, used components from the Altova® MissionKit® including: XMLSpy®, StyleVision®, UModel®, and DiffDog® to build a Web-based governance solution from the ground up. MetaTeam® is a unique XML-based collaboration environment that aims to raise project team performance and lower costs by empowering users with better organization and decision-making resources. MetaTeam lets organizations of all sizes provide work groups and virtual teams tools to structure projects, create living charters, optimize decision making, assign and align roles, manage relationships, track performance against goals, and more. The ChallengeThe vision for MetaTeam was a highly scalable application for the coordination and management of team goals, roles, and responsibilities. The solution needed to promote transparency and decision-making ability through effective organization and ultimately lead to better team performance. After creating a prototype of the MetaTeam product, eVisioner realized that creating a consistent user interface for such a large program under active development would require either constant attention or an inflexible development process, and possibly both. In addition, the developers needed a way to integrate documentation, import and export data, and allow customers to generate customized reports. Together, all of these concerns suggested the implementation of an XML architecture. The SolutionIn keeping with the principles defined by the naked objects pattern, eVisioner planned to automatically generate the MetaTeam user interface from its domain model and an abstract application description in XML. The eVisioner team found that the XML development tools and other components included in the Altova MissionKit were a perfect fit to model, build, and test the MetaTeam team governance application. UML ModelDevelopment of the MetaTeam application began with UML class and sequence diagrams created in Altova UModel. UModel provided a means to model the substantial changes that were required to move from the prototype to production-ready code. In addition, UModel's intuitive user interface made it easy to navigate, understand, and manipulate MetaTeam’s interface and the subclassing method that was used to approach a handful of complex central classes.
XML Schema & Application DefinitioneVisioner used the graphical XML Schema Editor in XMLSpy to create a wire frame model of the MetaTeam Web application, which it uses as the basis for generating functional J2EE code - in total over 3,000 Java and JSP files - for each iteration. Using XMLSpy's XML Schema and Grid views made it simple to reconfigure the layout of the application, turn features on and off, and specify behaviors without any concern that the look and feel of the application would become inconsistent.
The MetaTeam application definition is contained in an XML instance file that specifies the behavior of the application. Using XMLSpy's XPath Analyzer with intelligent XPath autocompletion, the developers were able to create a library of XPath 2.0 expressions to check for defects and validate that required fields were handled correctly. For example, the simple XPath below finds all input elements that do not include a description attribute.
Report TemplatesWith the working application in hand, the developers then created an XML model of an example workgroup mapped to the domain model used in MetaTeam. Using the workgroup model they created report templates with Altova StyleVision, including a default team charter. Not only does the stylesheet template provide multi-channel output to HTML, PDF, and Microsoft Word, but it also gives eVisioner employees an easy way to work with customers to create and upload customized versions of the reports.
XML DifferencingBecause of the considerable emphasis on XML development, DiffDog, Altova's XML-aware diff/merge tool, became an integral part of the application development and testing process. In particular, DiffDog provided critical XML differencing capabilities during testing of the code generation framework. Since the framework let developers re-use common components such as tabs, forms, and other UI features in multiple parts of the application, it was necessary to prove that these replicated structures were identical to their source. Serializing the in-memory model back to XML allowed DiffDog to visualize the differences so that the developers could catch slight variations before they caused problems.
The ResultseVisioner's choice to use XML as the basis for building its Web application has made MetaTeam a truly modular team governance solution that can be scaled up or down as needed.
Using its XML-based infrastructure alongside of the Altova MissionKit, eVisioner is able to generate a full working copy of MetaTeam in less than two minutes with 100% confidence that the application will perform as defined. Moving tabs, adding forms, or changing a page layout requires just an incremental generation taking seconds. This speed and reliability allows eVisioner to make minor updates to the application in less time, thereby being more reactive to customer feedback. With the additional ability to offer customers a way to easily customize their reports using StyleVision, eVisioner gains a unique capability that increases the value of MetaTeam to its customers. Find out how you can use the MissionKit to build advanced Web-based applications.
|
| ||||||||||||||||||||||||||||||||||||||||||||||||
| Company | Legal | Press | Partners | Careers | Sitemap | Contact Us | Altova Blog | Mobile | Full Site | |||
|
