Didac trainer has been developed from the ground up as a cloud based application. Its services and data is available through either a public web interface, or a secured REST interface. The application is built using industry standard, tried and tested technologies.
The production environment is hosted on infrastructure run by Orange Business (formerly: Basefarm). The servers involved, run on a VMWare stack, to ensure a high level of security and performance on demand. The servers run Microsoft Windows Server 2019. All components in the operational environment are continuously updated.
The application runs in a load-balanced IIS environment, supported by dedicated application and database servers. As of 01.01.2024, all production servers have 64GB of memory and 8 processor cores. All critical components have redundancy in case of failure.
The application itself, has been constructed applying well documented development patterns such as “Domain Driven Design” and “Test Driven Design”. DDD ensures a proper distribution of concerns through layering and longevity for the core of the application, whereas TDD ensures that every aspect of the inner functions of the application is tested prior to implementation. Code is maintained and versioned using GIT.
The server side of the application has been developed utilizing mainly technologies and libraries from Microsoft. This comprises C#, ASP.NET, MVC5, Entity Framework 6 etc. On the client, the web interface is built on HTML5, CSS3, and libraries such as Bootstrap, jQuery etc. All first and third party components used in development are continuously updated.
To ensure continuous quality of the application's source code, the entire application is regularly tested for security vulnerabilities and errors using relevant and industry-leading third-party tools as part of the Visma Security Program. Regular assessments of technology and architecture are also conducted as part of the Visma Architecture & Technology Program. See a separate article on this.
Customer data is stored securely. Each customer is granted a separate database on the SQL Server backend. Access to the backend is only available to appointed technical personnel. Sensitive data, such as passwords is stored in encrypted form. All available interfaces to both backend and frontend are also secured using encryption protocols.
To prevent loss of data, backup is performed on regular intervals. For data, this involves log backup every hour, differentiated backup every day, as well as full database backup every week. For files, a differential backup is performed every day. Recovery is available at daily resolution for 7 days, then weekly resolution. Data is retained for 31 days.
The application offers functionality that allows for easy anonymization/ and or removal of user data, to ensure compliance with international, government or internal user privacy policies. Only personal information necessary for the completion and follow-up of training is stored. No data considered sensitive is stored.
All requests to the applications are logged and stored for a minimum of 3 months. Attempts at security breaches, any application errors, as well as important events both in the application and the operational environment, are logged in separate logs. Continuous 24/7 monitoring of the services is set up regarding both availability and response time. Any deviations from agreed quality requirements are first reported to the operations provider, who assesses the severity and escalates as needed.
Note! All of or parts of this article has been translated using AI. Errors may occur.
Comments
0 comments
Please sign in to leave a comment.