SaaS ERP Simplified: Everest’s In-System Development and Git-Like Branching
Oct 13
2 min read
3
60
0
In the previous post, we explored the differences between inside-out development and Git-like version control in ERP systems, emphasizing the importance of choosing the right approach. Today, we dive deeper into Everest ERP’s unique methodology for developing business applications—a system designed to offer the best of both worlds.
Our Approach: In-System Development with Live Sandboxing
At Everest ERP, we have chosen to adopt the “in-system development” methodology. This approach allows developers to work directly within the ERP environment, ensuring that all changes are immediately integrated and consistent across the system. However, we didn’t stop there. Recognizing the need for flexibility and parallel development, we introduced branching within the system, providing developers with an experience akin to working in a Git environment.
Why This Approach Works:
Comprehensive Modification of System Artifacts: Our in-system branches enable developers to modify all system components—from table definitions and code to user interfaces and runtime data—within a unified environment. This ensures that every aspect of the system can be tailored to specific business needs.
Guaranteed Consistency: With our platform, consistency is a given. At every moment, the system ensures that all changes—whether code, metadata, or other artifacts—are aligned. This allows a developer to validate changes in a complete system environment.
Permits real-time testing: Testing is conducted directly within the system, with test data readily accessible. This means that the tests reflect real-world scenarios, providing more accurate and reliable results.
Elimination of Deployment Hassles: Since all changes are made within the system itself, there’s no need for a separate deployment process. This streamlines the development workflow, allowing for faster implementation of new features.
Cloud-Only Development: Our platform supports a cloud-only development process, eliminating the need for local installations. This not only simplifies setup but also enhances collaboration across geographically dispersed teams.
Reduced System Complexity: By enabling changes to be made directly in the productive system, we significantly reduce the complexity of the system landscape. This makes managing and maintaining the ERP environment more straightforward and less resource-intensive.
The Power of Consistent Branching:
One of the key innovations of our platform is the way we handle branching. All primary data, including source code, is stored in the database, allowing for consistent branching across all system artifacts. Each user can start an individual sandbox (branch) deploying different versions of the code or data as needed. Because branching is based on a logical snapshot of the current state, it’s both efficient and cost-effective.
A Git-Like Experience Within the System:
Just like working with a local branch in Git, our system branches are fully isolated from the rest of the environment. Each user is provided with their own application server process and private data, allowing them to develop and test independently. Multiple branches can be stacked and tested in parallel, supporting a development process that is both scalable and efficient.
Conclusion: The Everest Advantage
By integrating in-system development with Git-like branching, Everest ERP offers a development platform that is not only powerful and flexible but also streamlined and consistent. This unique approach empowers businesses to innovate rapidly, without sacrificing stability or increasing complexity.