Sulla base del piano di lavoro del progetto e delle successive indicazioni provenienti dagli utenti pilota e dai focus group di utenti sono stati sviluppati due moduli software con obiettivi e caratteristiche differenti:
Un secondo aspetto è stato lo sviluppo di una libreria per implementare alcuni aspetti di sicurezza degli scambiai messaggi; lo scopo è quello di aumentare l'affidabilità del sistema di trasporto messaggi (essere sicuri che i messaggi ricevuti sono stati effettivamente spediti da chi se ne dichiara mittente, mantenere la confidenzialità sul contenuto dei messaggi) che ha prodotto una modulo dimostrativo che sarà completato ed integrato in MSH nelle prossime versioni.
Message Service Handler is an application with a GUI very similar to a usual email client; unlike this kind of programs, MSH performs some further actions: Sending a message:
As a result, the MSH now can be viewed as a self standing application, that runs at server-end in interactive or batch mode, and that requires an ODBC database to store the history of the data exchange but that is independent from the structure of the XML documents; so it can be used for every XML message to be sent following the ebXML Transport specifications and that can be viewed as a 'communication' front-end for the Company Information Systems. The tool is ready to be integrated with a security layer and has an error handling layer evolved enough to detect the most recurring error of message encoding and communication.
The MSH is provided with the corresponding setup software and has been tested in several Microsoft Windows platforms (98, NT, 2000, XP), Italian and English version.
The MCM module architecture is very simple: a graphical user interface gets the input data from the user and stores them into the database. The DB handler block controls all the operations performed on data and can also get some database stored data and export them into an XML message using the "Message" block. This block can communicate with MSH so MSH can get the new message and send it as soon as possible.
MCM and MSH can exchange data using a shared folder so MCM and MSH must reside on the same pc or the folder must be shared over a network.
MCM can create a file into a shared folder, MSH knows and can reach that folder, reads the messages and sends them using a mail server.
The most important MCM block is the DB handler, which reads and writes data into the database; this block works on some other Microsoft data access blocks that are DAO, OLE DB and ODBC. These blocks are very useful to create abstract layers on the DBMS so the database management can be simpler. The system could use every target database type and needs only the ODBC driver for that database.
Initially it was planned to offer to industry the access directly to the intermediate database of MCM but the feedbacks from the pilot users and the arising complexity of that database (strongly influenced by small variations of each XML document) suggested to avoid to propose the ODBC access to the database, looking for other tools to link the legacy systems to the XML document data representation.
In the MODAML Security library the present version implements the XML Signature protocol to supply authentication to the XML documents, while XML Encryption is foreseen for the next versions.
The module is thought as a dynamic library (.dll) that, when linked to the MSH module, adds the possibility to sign with a digital certificate (X509) the document in order to guarantee that the content has been sent from the owner of the certificate and without any change.
The integration of the module in the MSH module has been tested in laboratory but it has not been included in the version distributed to the pilot users until today to proceed with caution.
The original software of Moda-ML is no more available on-line. An evolution of the message handler tool (MSH2) has been developed successively and is available for free here.
A useful excel based tool to collect and sumarise Moda-ML documents is available here.