• No results found

5. Implementation

6.4 Implementation Architecture Assessment

This section briefly assesses some of the design decisions taken during the implementation of MRA-HE and the ways in which they help to realise the critical success factors identified at the start of this chapter.

During the feedback trials the current VSP development team members were able to provide feedback on lower-level implementation issues, which have been incorporated into this discussion. The author is also well placed to assess some of the technical decisions made during design, having implemented the demonstrator system.

One of the lower level decisions made during the design of the implementation architecture was of using XML and its related standards throughout the MRA-HE implementation. Aside from technical difficulties from using new technologies, the decision to go all-XML was successful in providing the required functionality. XML is able to represent both the document files that form the document store and lower-level information such as personal contact details. At no time in the implementation process did a decision have to be made to convert from an underlying information model to a document-like representation, because the document/database divide was never established. Personal information from which relevant details could be extracted in a data-like manner was the same data that could be passed directly to the client for display. The manipulation functions provided by the DOM API were more than sufficient for the needs of the server in both storing the entities and manipulating the relationships of the underlying information model. The XML implementation of the MRA information model provides a loosely coupled network of entities with no enforced primacy. This facilitated the provision of any number of classification schemes (CSF 1A), the flexible classification of a single document entity (CSF 1C, 1D, 1F, 1I, 2F, 2J, 2K) and support for a number of socially-oriented document approaches: document ownership, view history, annotation, links and personal interests (CSF 1G, 1H, 1K, 2B, 2C, 2D, 2L, 3A, 3B, 3D). This loose coupling is well suited to the networked but dynamically evolving nature of MRA information model, and further facilitates the selective application of mechanisms such as annotations and links (CSF 3C).

As a client-side technology XML was also found to be both workable and beneficial, providing full functionality through a standard web browser (CSF 1E). Through the application of XSL stylesheets to basic XML documents, the client was able to apply presentation and behaviour to raw XML for the end-user. The simple definition of rules within the XSL stylesheet created opportunities for lightweight interface customisation (CSF 3E) without the need to adjust the MRA proxy server implementation in any way.

Client-side manipulation of the XSL stylesheet also provided lightweight solutions to document ordering on particular attributes (author, title, date authored, etc.) and in providing effective ways of displaying documents, either all at once or one slide at a time.

All three levels of reuse were assisted by XML. At the resource level, the ability to refer to a sub-document fragment facilitated the construction of new document content and structure from fragments using the

Document Object Model (CSF 2G, 2H). The separation of document presentation from content and structure allowed the consistent application of document style (CSF 2I). At the folder level XML provided multiple entries in the resource classification catalogue for a multiply classified document - this was a very straightforward but powerful mechanism, allowing a user to find out what documents were classified in a particular folder and in which folders a particular resource was classified . At the resource room level, the ability to embed one XML object within another enabled the seamless embedding of one resource room structure within another. The XML namespace mechanism was used effectively to avoid address conflicts when one classification was being included within another.

The layered implementation architecture provided a manageable and extensible development platform for the MRA-HE implementation. Underlying entities and relationships were modelled in XML and manipulated by a set of services, each of which performed a small set of operations on the underlying information. The event services operated on the XML-encoded event pool that was appended by each of the significant document services, offering an asynchronous service additional to the synchronous document services. New services can be independently added to the document services layer and called by updating the XSL files that dictate user interface functionality. The overall loose coupling of entities and modularised document services makes the architecture extensible and suited to the dynamically changing needs of enterprise document management and to selective views on the common information store. For performance reasons it became necessary at times to create new relationship files such as the ’owns catalogue’, which were generated automatically by mining the resource catalogue for the ’owns’ meta-data elements and building them into a single file. In terms of supplying the task-based benefits described at the start of this chapter, the XML-enabled layered architecture provided the following mechanisms.

In terms of the scalability of the XML implementation, larger-scale tests have been conducted by importing existing VSP resource room structures and content into MRA-HE using the data integration tool described in the previous chapter. It is evident that loading XML directly from text files is sufficient at the client, but not so suitable for larger XML objects on the server, particularly the resource catalogue which contains an entry for each resource within the system. There is no need, however, to revert to a non-XML mechanism - merely to provide an XML database on the server that can more quickly parse larger XML structures. This is an interesting piece of future work, discussed again in the next chapter.

6.5 Conclusion

This chapter has described a range of evaluation methods used to assess the MRA-HE implementation of the Model-driven Reuse Architecture. As a preliminary implementation of the MRA, the MRA-HE system was tested against a number of critical success factors identified from a set of case scenarios, and proved able to provide solutions to almost all of the CSFs identified. A comparison was made with two existing environments to perform an assessment of how the MRA-HE implementation improves on currently

available methods. A set of preliminary trials with existing users of VSP resource rooms provided encouraging feedback on the design decisions made and the usefulness of the system to their needs. Finally as assessment was made about the design and implementation of MRA-HE, highlighting the ways in which XML and the layered model-driven architecture assisted the scenarios. The next chapter builds on the success of the MRA-HE implementation to suggest ways in which MRA implementations may be able to satisfy domains other than higher education.