CCTOS:
Software Architecture
/
Draft Version 6.5, 10 May 2011, Etienne Saliez, ---- Next - Previous
- Index of CCTOS Issues,
- Issues:
- The main objective of the project is patient care. A patient may
need care from a very large panel of specialized services, requiring an
integration platform.
- To make distributed developments possible.
- The logic of the intended medical applications require a relatively
large set of temporary persistent information. More information than
just a few data about the next HTML page to be displayed, as usual in
many web frameworks.
- The general philosophy should be real time and measures should be
foreseen in order to prevent conflicts in case that 2 users would be
working on the same record.
- Approaches:
- A very modular approach:
- A "Core" intended as a generic integration platform.
- As far as possible reuse of software components available in Open
Source and adapted as "services". Interfaces allowing that these
external component may be in different programming languages.
- The Core itself is also a component to be upgraded step by step,
although particularly critical. The Core of the experimental
prototype is in Python. A choice in function of a good level of
abstraction, a great flexibility, availability of large libraries and a
growing and a mostly open source minded community.
- Incremental development beginning by relatively simple components, to
be upgraded one at a time.
- A compromise between a traditional application logic and a stateless
web framework. This can be seen as 2 levels:
- Core Patient Record Coordination Logic. A multi-user setup, but
during a user session, maintenance of a Session object containing
temporary session data related to the current user. Every user
should have such a session object. Session objects should be
maintained on a fast type of memory.
- Front-end web interface dealing with all the external
communications, in principle called "views". The most frequent
views are intended for a web browser, but other types of "views"
should also foreseen in the front-end, as smart phones, HL7
messages exchanges, etc...
- .... more information at http://www.chos-wg.eu/Tech/VCT-Network-Architecture.html
.