(Git) Versioncontrol of Board-Database-Schema
Problem to solve
Currently, it is a difficult task to carefully document a database schema. Often this task is postponed until later or is completely forgotten. Even if there is documentation, it is often not available centrally in one place for all project participants, but distributed in different places with different versions. It is therefore desirable to have living documentation and version control, as is common in software development.
Target
Managing the database schema in a remote repository, such as Github, Azure Repos, Gitlab or similar.
Implementation
To enable the user to work, it is necessary to store the database schema in a human-readable format. XML, JSON or similar would be suitable for this.
The database schema includes:
- Entities
- hierarchies
- Data cubes
- DataReader
- Rules
- Procedures
- API queries
The list is not exhaustive and can be extended by further elements.
Only meta-information is stored in the Git repository. It explicitly does not store content such as entity elements or transaction data of data cubes.
Example of meta-information for entities:
- Name
- Code Width
- Description width
- Physical name
- Group
- Max Item Number
- Sorting
- Item Display
- Allow in user view
- Is RollUp Entity
- Unbalanced Hierarchy
This list is also not exhaustive and can be extended to include other elements. In simple terms, all information in the Git repository that is used by the board transport tool should be taken into account.
The configuration should be possible for OnPremise customers in the server configuration and for Cloud customers in the Admin Portal. Capturing commit messages, displaying the commit history, creating branches and merging branches is done in the board interface.
It should also possible connect transport-tool to Git-Repository.
Benefits
- Tools and procedures known from software development
- Lively and always up-to-date documentation of the database schema
- Faster troubleshooting possible, because it is always known
- Who originally developed something
- who made changes
- When changes were made
- What changes were made
- Implementation of customer requirements can be linked to code and substantiated. The prerequisite for this is the capture of requirements in the appropriate tools such as Github, Azure DevOps, Gitlab and similar.
- The strategy of providing standard apps for customers is supported.
- Apps are versioned
- Deviations from the standard can be analysed more quickly
- Developers can develop in parallel in different branches without interfering with each other
Comments
-
Thank you for sharing your idea, Nico. We understand the need of this solution.
We are aiming to release the Phase 1 of our ALM in the Summer release of 2023. Our goal is to have something in the platform that will facilitate all the steps we have described in the presentation attached.
We encourage you to continue submitting your ideas and suggestions in the future, as we are always open to hearing new perspectives and feedback.0
Categories
- All Categories
- 2K Forums
- 1.8K Platform
- 159 Academy
- 325 Resources
- 1 Board Knowledge Base
- 50 Best Practices
- 49 How-To Guides
- 19 Board Advocacy Program
- 192 Blog
- 4 Groups Hub
- 4 About Groups
- New Community Members
- DACH
- Japan
- 4 Community Captains
- 1 About Community Captains
- 2 Meet the Community Captains
- 1 Topics & Thought Starters
- Learn from the Board Captains
- Release Notes
- Academy
- 2 Board Academy
- 8 ILT/VILT Course Catalogue
- 13 e-Learning Course Catalogue
- 4 Academy Forum
- 1.2K Idea Exchange
- 337 Partner Hub
- 94 Support
- 14 FAQ's
- Customer Support Portal
- 54 Support Articles
- BEAP