Softwarium was contracted to design and implement a proof of concept (prototype) for the next generation DMS. The philosophy behind the system’s design is to build a Service Oriented Architecture (SOA) centric platform versus an architecture geared towards a specific application.
The strategy chosen for this design is the separation of the static code from the customizable one, more intensive reuse of the existing software and technologies, and generalization of the common business process categories. The design makes an attempt to reuse the currently developed functionality as much as possible without compromising its major concepts.
The platform in such context means that the high level library is executed in a modern application server environment developed for the commonly used language and operational framework allowing for the development of the custom applications. In this sense, the delivered application standard package is just the one possible implementation based on the platform APIs and features.
J2EE framework with thin WEB client was chosen to be the system’s deployment and execution environment.
The system is divided into four basic tiers:
- Client tier - includes WEB based, thin client GUI and a number of small MS COM utilities executed on the client PC and communicating with the WEB tier. Client tier also includes a number of Java utilities (applets and standalone programs) serving as agents for collecting process specific data.
- Presentation tier - implemented as a set of servlets and JSPs being executed in J2EE WEB container. Presentation tier is responsible for maintaining presentation object model of the system, controlling users’ and applications’ actions, and presenting the model for the application clients.
- Business logic tier - core of the system handling all business operations, integrating all system tiers and components, and maintaining business model of the subject area. Business logic tier is based on the synergy of the forward chaining Rules Machine (RBMS) and Workflow Management System (WFMS). RBMS handles states of the system’s objects and transitions between them while WFMS controls the execution of the customer defined system processes. Business logic tier uses message queue as an internal integration media. Business logic tier employs JCA based adapter architecture ensuring smooth integration with customer specific services like RDBMS, LDAP, or content storage. Finally, the business logic tier utilizes WEB Services technology while communicating with the system service layer as well as with customer specific or third party services.
- Service tier - represents various system services integrated and utilized by the business logic tier providing meaningful functionality. System’s SOA centric and WEB Service based approach allows for seamless extensions and variations in number, distribution, and functionality of used services. The services include, but are not limited by, RDBMS for business model persistence: Content repositories, Content rendering and publishing services, Dictionary services, User Directories, Search engines.
Based on work performed by Softwarium the Company was able to offer an implementation of the new DMS to several of their large customers in the United States. As core tiers were developed and tested the Company quickly adopted the system for specific business needs of its customers allowing quick deployment of the flexible and customizable document management solution.
- Oracle, PL/SQL
- EJB, JSP, Servlet
- JCA, JMX, JDBC, JNDI, JMS
- Jasper Reports, Crystal Reports