-
Notifications
You must be signed in to change notification settings - Fork 15
Software architecture
diderikvw edited this page Mar 13, 2023
·
29 revisions
This software architecture section focuses on a selected range of topics. It only focuses on components/scenarios/topics/etc. that are most relevant, which makes the value of maintaining it outweigh the costs.
The intended audience is at the moment mostly the 121 Development Team itself, to enable the development process. But the content is definitely relevant to any party with a technical or conceptual interest in the 121-platform.
Understanding of UML diagrams and terminology is assumed.
Software architecture topics
- Requirements: a categorized list of system requirements
- Actors: a UML Use Case Diagram documenting the Actors for the system
- Business Processes: a non-UML diagram giving a categorized overview of all business processes in scope for the system
- Elementary Business Processes: a UML Use Case Diagram for each Elementary Business Process that is relevant and valuable to document in more detail than only having it in the Business Processes diagram
- Use cases: a UML Activity Diagram for each Use Case from the Elementary Business Process Use Case Diagrams that is relevant and valuable to document in more detail
- Person Affected Status: a UML State Machine Diagram documenting the statuses of a Person Affected
- Entity Relationship Diagram: a page describing how to auto-generate an Entity Relationship Diagram from a live database of the system
/images/121-service-as-is-data-model.drawio.png
graph LR
ProgramModule-->SmsModule
ProgramModule-->VoiceModule
ProgramModule-->FspModule
ProgramModule-->LookupModule
CronjobModule-->WhatsappModule
WhatsappModule-->ImageCodeModule
CronjobModule-->IntersolveVoucherModule
IntersolveVoucherModule-->ImageCodeModule
IntersolveVoucherModule-->TransactionsModule
TransactionsModule-->MessageModule
MessageModule-->WhatsappModule
MessageModule-->SmsModule
IntersolveVoucherModule-->WhatsappModule
RegistrationsModule-->LookupModule
RegistrationsModule-->ProgramModule
RegistrationsModule-->FspModule
RegistrationsModule-->MessageModule
ExportMetricsModule-->ProgramModule
ExportMetricsModule-->RegistrationsModule
ExportMetricsModule-->PaymentsModule
PaymentsModule-->FspModule
PaymentsModule-->IntersolveVoucherModule
PaymentsModule-->IntersolveVisaModule
IntersolveVisaModule-->TransactionsModule
PaymentsModule-->AfricasTalkingModule
AfricasTalkingModule-->TransactionsModule
PaymentsModule-->BelcashModule
BelcashModule-->TransactionsModule
PaymentsModule-->TransactionsModule
PaymentsModule-->BobFinanceModule
BobFinanceModule-->TransactionsModule
PaymentsModule-->UkrPoshtaModule
UkrPoshtaModule-->TransactionsModule
PaymentsModule-->VodacashModule
VodacashModule-->TransactionsModule
PaymentsModule-->RegistrationsModule
ExportMetricsModule-->TransactionsModule
WhatsappIncomingModule-->ImageCodeModule
WhatsappIncomingModule-->IntersolveVoucherModule
WhatsappIncomingModule-->WhatsappModule
This graph will be automatically generated in development-mode in
services/121-service/module-dependencies.md
. The contents of that file should be saved above.