System scope and context - as the name suggests - delimits your system (i.e. your scope) from all its communication partners (neighboring systems and users, i.e. the context of your system). It thereby specifies the external interfaces.
If necessary, differentiate the business context (domain specific inputs and outputs) from the technical context (channels, protocols, hardware).
The domain interfaces and technical interfaces to communication partners are among your system’s most critical aspects. Make sure that you completely understand them.
Various options:
-
Context diagrams
-
Lists of communication partners and their interfaces.
Specification of all communication partners (users, IT-systems, …) with explanations of domain specific inputs and outputs or interfaces. Optionally you can add domain specific formats or communication protocols.
All stakeholders should understand which data are exchanged with the environment of the system.
All kinds of diagrams that show the system as a black box and specify the domain interfaces to communication partners.
Alternatively (or additionally) you can use a table. The title of the table is the name of your system, the three columns contain the name of the communication partner, the inputs, and the outputs.
Entity |
Description |
User |
Interacts with the application front-end and sends requests to the backend. |
POD |
Stores user’s private information. In case the user is not registered it creates a new POD. |
System |
It is responsible for making the application work. |
API |
We are using OpenStreet Maps to visualize the locations. |
Technical interfaces (channels and transmission media) linking your system to its environment. In addition a mapping of domain specific input/output to the channels, i.e. an explanation with I/O uses which channel.
Many stakeholders make architectural decision based on the technical interfaces between the system and its context. Especially infrastructure or hardware designers decide these technical interfaces.
E.g. UML deployment diagram describing channels to neighboring systems, together with a mapping table showing the relationships between channels and input/output.
Technology |
Description |
REACT |
We use it to develop the frontend of the application |
SOLID |
We use SOLID PODs to store users information |
JavaScript |
Principal language for our code application |
CSS |
Language to set different styles and positions to our components. |
Docker |
Used for the system deployment |
Netlify |
Used for the system deployment |
Bootstrap |
Simplifies the use of CSS and HTML, using the HTLM5 standards. |
We use OpenStreet Maps as the main API for the project to visualize the maps.