Showing results for 
Search instead for 
Did you mean: 

Discussion: Why no centralize development for Java (like the one in ABAP)

Former Member
0 Kudos

I am reading the NetWeaver Development Infrastructure, and noticed that due to the distributed development nature of Java, SAP recommend The Four-System Landscape for the development lifecycle.

Each developers has their own local development environment, that's why it is necessary to 'reconcile' the environment using one more layer of system. Although they checked out the particular Development Object, the necessary library from the central is being copied by DTR to the local environment. However, there are still possibilities that someone changes the library, or other classes that being refered. And we are not talking only about the business logic, but other object in the persistance level too. Let's say your program refered to a certain field in a certain table, but someone else had changed the field name. Or even worse, you want to get the setting value from a certain setting table, but someone else had deleted the value of that record (for whatever reason).

In short, I believe there are many 'reconcilliation' process that need to be done when the development environment is not centralized. These problems won't happen in the ABAP world, because you will notice the problem straight away when you activate your component, or test run it. In distributed environment, you will only notice it when you check-in your development object back, but it might be after some time lags, and you might not remember which part need to be taken care of.

Not only this, the setting of 'correct' IDE environment in each local PC must be done properly. Again, in ABAP you just need to install SAP GUI and it will be your development environment.

So, I had discussion with a friend of mine, and he asked, why there is no central development environment, like the one in ABAP? Hmm, to be frank, I also don't know. Performance problem? I notice that most IDE in the market based on the assumption that development will be done locally. Or is it for the convenient purpose, so that people can keep the development eventhough there is no connection to central server? But what is the cost for this convenient?

What other people think?



ps: As you might notice, this thread is not marked as question. I am just curious of what other people think about this issue. There will be no points rewarded for the replies.

Accepted Solutions (0)

Answers (1)

Answers (1)

0 Kudos

Hi Hiroshi,

This is more of a technical limitation. All this CVS kind of development environment works check-in/check-out methodology and local development environment. It's same for C++, Java development not only for SAP.

ABAP world is much different as it offers a centralized repository (kind of old mainframe environment) which is not possible for JAVA. However, SAP tried to solve this with Netweaver Developer Infrastructure (NWDI coming from JDI concept) where it's possible for developers to share there development repositories and also transport across system landscape (like you do in STMS for ABAP program). However, it has it's limitation too...

That's what I understood and you can say why I love ABAP

Cheers !!


Former Member
0 Kudos

Hello Satya,

So if it's a 'mere' technical limitation, then there should be a way to create centralized development for Java

It might be an old mainframe environment, but from the development process point of view, centralized environment offers benefit where lots of versioning problem (library or data dictionary) can be solved.

I used to work in a distributed development environment to create a web based FI/SD/MM related application. We have tons of classic problem of '<i>it is working in my environment, but not in yours</i>' type of thing. With centralized (read: ABAP), version integrity problem can be reduced to minimum.

For the NWDI itself, I think SAP now moves toward embracing the open source platform to support the development environment. From what I've understood, Ant, for example will be used as the build tool. My personal opinion is, better if SAP creates it's 'proprietary' environment to centralized the java development process. Then it will save lot's of hidden cost during the implementation of new application/enhancement/maintenance in the whole supply chain.