545,562 active members*
7,291 visitors online*
Register for free
Login Register
WIBU-SYSTEMS Blog

Perfection in Protection, Licensing, and Security

Brownfield vs. Greenfield Part 1

April 2021
30
Author: Wibu-Systems
Company: WIBU-SYSTEMS AG
Brownfield vs. Greenfield Part 1

Software development practices typically fall into two categories – Brownfield projects or Greenfield projects – each of which utilizes different tools and requires different strategic approaches. Brownfield software development refers to the development and deployment of a new software system in the presence of existing or legacy software systems. This implies that any new software architecture must take into account and coexist with previously created code. On the other hand, Greenfield software development refers to creating code for a totally new environment without any legacy code in the picture. Essentially, the developer is starting with a clean slate.

Both Brownfield and Greenfield development approaches have their own discreet advantages and disadvantages. In either case, application components like license and entitlement management are treated differently as well. This blog will briefly summarize the advantages and disadvantages of each development approach and their ramifications on licensing and entitlement management. In this post, Part 1, we will delve deeper into Brownstone development. Part 2 will follow with more discussion on Greenfield development.

Brownfield development usually applies when the goal is to develop or improve upon an existing application. In this case, new software architecture must take into account and coexist with systems already in place with the objective to enhance existing functionality or capability. Examples of Brownfield software development include building a new module onto an existing enterprise system; integrating new features into an existing application; making a code upgrade to extend application functionality; and adding a new system into an existing system landscape.

According to global systems integrator Synoptek, the advantages of Brownfield development are:

  • Offering a place to start with a predetermined direction
  • Giving a chance to add improvements to existing technology solutions
  • Supporting working with defined business processes and technology solutions
  • Allowing existing code to be reused to add new features.

They note the disadvantages as:

  • Requiring thorough knowledge of existing systems, services, and data on which the new system needs to be built
  • A possible need to re-engineer a large portion of the existing complex environment so that it makes operational sense to the new business requirement
  • Requiring detailed and precise understanding of the constraints of the existing business and IT, so the new project does not fail
  • A slow down of the development process and likely an addition to overall development costs due to dealing with legacy code

Another byproduct of Brownfield development is that a disproportionate amount of time can be spent on understanding and integrating with the existing complex system and business environment rather than delivering value with new functionality.

Now, let’s take a closer look at the integration of licensing and entitlement management functionality in a Brownfield project.

For license and entitlement management, data collection of the appropriate end user license attributes and license states, and creating the optimal user interfaces, whether new or improved, are key.

In Brownfield development, various systems already exist and collect or provide data. This includes systems like SAP, other ERP solutions, and existing User Portals, with or without Single Sign-On mechanisms. Collecting the same data a second time in the license management system would require data synchronization, making the integration process more complex and harder to maintain. Collecting only the data that is relevant to the licensing system is the key to optimizing the integration process. This is where a strong API capability in the license management system can make a big difference. The system needs the ability to use the API to request or push the data as needed across all the legacy systems, as well as using the API to create new systems for acquiring and delivering data where needed.

The Graphical User Interfaces for managing data collection and licensing and entitlement processes are just as important as the strength of the API for integration. Some systems already come with pre-built GUIs – while a developer may find one that fits nicely into the process, it is more likely than not that a pre-built interface would not fit the process exactly and add a level of unnecessary complexity to the process. A better solution is to use customizable and extendable tools to build the interfaces to conform exactly to the process at hand.

In part II of this blog post, I will present a similar overview of the pros and cons of Greenfield software development and the best approaches to integration of license and entitlement management. In the meantime, you can take a look at CodeMeter License Central, which includes a powerful SOAP-based interface that provides developers with exceptional flexibility in designing the user interface to fit comfortably into established business processes, and offers the opportunity to retrieve or push data from or to legacy systems.

0 comments

Blog Archiv

July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
December 2016
October 2016
September 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016