Inside-Out Development vs. Git-Like Version Control: Choosing the Right Approach for ERP Systems
Oct 5
2 min read
6
44
0
In this post, we’ll explore the two dominant approaches to ERP system development—direct in-system coding and Git-like version control—and explain why the choice of development strategy is crucial for the future of business system innovation.
An ERP (Enterprise Resource Planning) system is made up of three major components: the applications that allow users to perform business tasks, the development platform that serves as the foundation for creating these applications, and the life cycle management tools that enable administrators to run, deploy, support, and upgrade the system.
In this discussion, we'll focus on the development platform because it plays a crucial role in shaping how the entire ERP system is built and maintained. A well-designed platform not only streamlines the development process but also empowers businesses to easily adapt and customize their ERP systems to meet evolving needs. This flexibility is key to ensuring that the ERP system remains efficient, scalable, and capable of supporting business growth over time. The choice of development approach is therefore pivotal, as it directly impacts the system's ability to evolve and accommodate new demands.
Traditionally, there are two main approaches to ERP development. The distinction between these two methods also hinges on how they define and manage different types of ‘code,’ such as metadata, configurations, and business data. The classification of these elements varies greatly across different roles—whether they are database developers, application programmers, business users, or system administrators.
The first involves direct coding and modifications within the ERP system itself, a strategy that many development paths use. While this “in-system” strategy ensures that all changes are tightly integrated within the ERP environment, it can also lead to rigid development cycles and slower adaptation to new requirements.
The second approach utilizes external version control systems like Git, where development is conducted outside the ERP environment in distinct branches. Changes are made in these separate branches and are later merged into the main branch. Testing can occur within these branches or in a central test environment after integration. This Git-like approach offers greater flexibility, parallel development, and more iterative processes, making it easier to adapt and innovate rapidly. However, it can also pose challenges in maintaining consistency and cohesion across the different system components once they are merged back into the main ERP environment.
The Everest “live sandboxing approach.” aims to blend the best aspects of both traditional and modern ERP development methods, creating a system that is not only highly integrated and efficient but also adaptable and scalable. In our next post, we’ll dive into the specifics of the Everest approach and how it sets a new standard for ERP systems, pushing the boundaries of what’s possible in enterprise solutions.