Not being specifically in this field (not having a computer science background) I am trying to workout web application architectures. I’m doing my uni assignment on open MRS - I have a bit of an understanding but I do not have a structure where I can put these keywords in in order to draw a fitting multi layer architecture (nor do I understand all keywords). this diagram is sort of how it works in my head …. Im not sure it is right though?
The question is - What web application architecture does openmrs subscribe to (using the MSDN examples?
• Mobile application
• Rich client application
• Rich Internet application (RIA)
• Service application
• Web application
Or does it look a little bit more like this diagram also borrowed from Microsoft.
If so then what makes up the following components of this diagram?
Presentation Layer - I gather that would be HTML 5
Rich UI Engine - ?no idea?
Business Processing Components with This Be the X Forms Module?
Isolated Storage - ?no idea?
Service Interfaces - ?no idea?
Message Types - HL7/FHIR
Application Facade - with this be tomcat
Business Workflow - ?no idea?
Business Components - ?no idea?
Business Entities - ?no idea?
Data Access Components - with this be hibernate
Data Helpers Utilities - ?no idea?
Service Agents - ?no idea?
Data Sources - MySQL
Any help you could give me would be great
sorry here is the diagram that i am refering too from Micro$oft (can only post 1 picture )
Wow this is nice work. Once I also drew a basic diagram similar to that, but it’s not detail as this much.
goodwork on the diagram - its always hard getting your head around this stuff.
The second architecture you posted is of a Rich Internet Application, this is not what Open MRS is built on, Rich Internet Applications are usually built on something like MS silverlight. @judeniroshan page is quite good and explains a lot but I think that you are after a bit more detail?
I am really just an implementer so i cant really help much maybe some of the more wise developer types can help
there are a few postes around though - here are a few i have found
@gsluthra posted a high level architecture diagram for Bahmni here: https://bahmni.atlassian.net/wiki/display/BAH/Bahmni+Architecture
@jthomas had a design forum on the subject - Design Forum 2017-07-17: Sync 2.0 architecture draft
@burke @wyclif and @lluismf have a good discussion on it here Getting to know the architecture of the openmrs code base
I hope that helps
Hi @ralphy I think your diagram is pretty close, may be I can shade some light on a few things here and there.
The glaring thing that is missing is spring which is kind of like the glue that brings most things together by providing the MVC framework, dependency injection, AOP, transaction management and its integration with hibernate provides the data access layer. FHIR sits on top of the service layer while HL7 is part of the service layer and isn’t used for access to the database. Hibernate is the actual DAO implementation that we use to access the database which also in turn uses JDBC at its core.
Tomcat is just one of the application servers where OpenMRS can be hosted and it isn’t part of the service layer, in fact it isn’t part of OpenMRS.