Skip to content

Application Architecture

Jim Tyhurst edited this page May 5, 2017 · 4 revisions

The budget application has three layers:

architecture diagram

Dependencies between components exist in only one direction: The UI depends on the Web Service and the Web Service depends on the Database. There is no dependency in the other direction, so the Database does not depend on the other two components and the Web Service does not depend on the UI. Given that the Web Service is available publicly and is implemented independently of the UI, it is reusable by other potential UIs. This makes the Web Service an independent deliverable, which needs to have its own documentation and its own testing independent of the UI.

Technology

Role Technology Framework
User Interface JavaScript React
Web Service Python 3.5 Django
Database PostgreSQL 9.5.5 (Relational DBMS)

Deployment

The three components are deployed separately on AWS EC2 instances. The web service is deployed as a Docker image.

Clone this wiki locally