Softadmin® can be developed with different priorities regarding development speed, cost, and quality to align with the project's goals and development process. There are many factors to consider, but these are three rough categories to assist in selecting an appropriate setup. The categories are called Light, Agile, and Enterprise.
These should only be seen as recommendations. It is, of course, always possible to maintain a higher level of ambition even for smaller projects. However, it is often a poor idea to maintain a lower level of ambition for larger projects.
The following section describes how Softadmin® DbSync.exe can be used to import and export code and table data to and from the database. The choice of version control system and code review tools is entirely flexible and is managed outside of Softadmin®.
| Development setup | Light | Agile | Enterprise |
|---|---|---|---|
| Shared server development | X | ||
| Shared server development with version control | X | ||
| Local development | X |
| Version Control | Light | Agile | Enterprise |
|---|---|---|---|
| Softadmin® built-in versioning | X | ||
| DbSync - code objects | X | ||
| DbSync - code objects and table data | X |
| Code Review | Light | Agile | Enterprise |
|---|---|---|---|
| Manual review in SSMS / Softadmin version history | X | ||
| Review after check-in | X | ||
| Review before check-in (pull requests) | X |
Small projects often prioritize development speed over strict processes in order to achieve rapid progress with minimal overhead. This setup is suitable for small systems where a single developer can easily understand the entire system.
For technical details, see Shared server development.
This setup has the goal of balancing overhead and development speed. Fundamentally, it is the same as Light, but with additional quality assurance processes. All development still takes place on a single central server, but DbSync.exe is used to enable code reviews.
For technical details, see Shared server development with version control.
This setup differs significantly from the previous ones. Here, the external version control system becomes the source of truth rather than the central database. This enables parallel development on each developer's local machine. More controlled hotfix releases are also possible.
Enterprise provides greater flexibility and enables large-scale collaboration, but it also requires greater discipline and adherence to well-defined processes.
For technical details, see Local development.