Allowing JDE Developers to Promote Projects into PY and PD

tiradoj

tiradoj

Well Known Member
Hello Fellow JDE-ers

Just wanted to know how many consultants have worked at sites that allowed their JDE Developers (instead of CNC) to promote their Projects into PY and more importantly the PRODUCTION pathcode? Assume the Project has been approved by customer management to move into PROD.

Thanks
Joe Tirado
Senior CNC Consultant
 
I did and my experience..................It was a disaster.
Barb Kramarski


In a message dated 6/4/2009 3:28:50 P.M. Central Daylight Time,
[email protected] writes:

Hello Fellow JDE-ers

Just wanted to know how many consultants have worked at sites that allowe d
their JDE Developers (instead of CNC) to promote their Projects into PY
and more importantly the PRODUCTION pathcode? Assume the Project has been
approved by customer management to move into PROD.

Thanks
Joe Tirado
Senior CNC Consultant
 
Unless you are a 1 person develo-functional-cnc operation I don't think allowing developers to promote to production is a good idea. However I don't usually find a problem in allowing them to promote to PY. Developers are responsible for their own unit testing. Once they are satisfied with unit testing it makes sense for them to promote to PY so that regression/user acceptance testing can occur. Allowing them to do the promotion themselves speeds up the process and removes extra work from the CNC administrator.

Where this approach won't work is in a large project with many developers who may work on the same objects for different streams of modifications. In a complex or high volume development environment I believe that someone else should manage DV to PY promotions to assure that testing for one set of changes has completed in PY before replacing objects with the latest version.
 
[ QUOTE ]
a 1 person develo-functional-cnc operation

[/ QUOTE ]

I am. I don't have a problem with allowing myself to promote the Projects into PY and PRODUCTION pathcode, after it has passed our change management processes. But then again, I'm not a consultant.
 
I agree completely Peter. If you can't trust yourself then who can you trust? I have run into many 1-person shops like yours. Now, consultants should definitely not be trusted with PY to PD promotion. But of course I don't include myself in that group. I am a contractor not a consultant --- I work for a living! ;-)
 
Joe,

In our shop, we have around ten full time developers. They have the rights to do the object promotion from DV to PD. When we have a big project and bring in contractors and consultants, the contractors and consultants all are assigned to a developer. The developer acts as the PM and manages their work. The in house developer does the object promotion. The other key is our change control process. All projects go through a stringent approval process and all object promotions must go through the change control process. This process is then audited by both internal and external SOX auditors.

- Gregg
 
We do the promotion all the way to PD . . . but we're only a 2.5 man shop
smile.gif
 
Thanks all for your responses.

Gregg you are the first person/site I have heard that allows developers to do that. I see in Oracle's Best Practices that they suggest - allow it - they also suggest CNCs be the only ones to put objects into Production and promote back down the pathcodes.

I can tell you this I rarely go into Production environment (I don't want to be blamed for anything :)) unless I have to; and I would probably NEVER start off taking an ESU from Oracle and putting it into PROD FIRST as a CNC or even a Service Pack without testing in normal DV - PY - PD cycle. So I'm not sure about that Oracle recommendation and I don't agree with it after 14 years of field experience.

Same thing about Developers. I am live with them promoting into PY but not PROD. Like the government separation of different branches of exec, legislature and judicial.

I respect everyone's view, if it were my company I would never let developers promote into PROD consultant employee contractor and otherwise.

I realize that may put me at odds with certain customers but so be it.

Thanks for your input all.

Joe Tirado
Senior CNC Consultant
it's all the same.
 
So where is the CNC in your group then Gregg? :)

Who does package builds and such? Why isn't the CNC doing the promotion like most places I have been to?
Joe Tirado
 
You CNC guys break me up. How is it that you think that you somehow have some superior knowledge or authority where it is okay for you to promote to E1 environments, but developers cannot.

I have worked at more than one account (yes I am a consultant) where promotions were a major issue because they didn't happen like they should.

There should be rules around promotions and then whoever needs to promote OMW projects should be allowed to do so. Anyone not following the rules should be sternly disciplined.
 
CNC folks do not play God. I have been involved with trying to promote bes t
practice for years. My opinion is if you are a small shop then fine allow
your developers to promote.. If you have several developers then promotio n
should be left up to the CNC. Have a Change management model in place.
The worst mess I had to clean up was a developer that promoted a change to
PD he never tested in PY. When I spoke to him regarding the change He told
me he did not need to test it because (your going to love this)
He was very careful when he made the code changes.
Barb Kramarski



In a message dated 6/5/2009 1:39:55 P.M. Central Daylight Time,
[email protected] writes:

You CNC guys break me up. How is it that you think that you somehow have
some superior knowledge or authority where it is okay for you to promote to
E1 environments, but developers cannot.

I have worked at more than one account (yes I am a consultant) where
promotions were a major issue because they didn't happen like they should .

There should be rules around promotions and then whoever needs to promote
OMW projects should be allowed to do so. Anyone not following the rules
should be sternly disciplined.
 
[ QUOTE ]
So where is the CNC in your group then Gregg? :)

Who does package builds and such? Why isn't the CNC doing the promotion like most places I have been to?
Joe Tirado

[/ QUOTE ]

I am the CNC. As a policy, we always do full package builds, this way I don't have to worry missing a promoted object. We have five countries accessing our North American servers, so that's too much change to keep track of. We put our trust in the developers to thouroughly test their objects before promoting them to PD.

- Gregg
 
[ QUOTE ]
You CNC guys break me up. How is it that you think that you somehow have some superior knowledge or authority where it is okay for you to promote to E1 environments, but developers cannot.

[/ QUOTE ]

Because, to "appease" the functional folks, developers will take short cuts that end up crucifying the system in the long term.

CNC folks are naturally distrustful of change, have a much better understanding of the architecture, and therefore are much better suited to being the "goalkeepers" of what gets promoted to production.

Not only that, but if you work in any public organization in the US, developers are STRICTLY not allowed to promote ANYTHING to production - its called SOX Compliancy, and its probably the only SOX compliancy regulation I completely agree upon.

There are exceptions - for example, smaller private companies might have a single person doing development, testing and running CNC functions. But the point is that in larger organizations, there is a REASON why "deployments" take time and "promotions" are scheduled. If you don't understand why, then you're probably NOT the right individual to be managing an Enterprise ERP System (and probably why you're a developer!)
 
[ QUOTE ]
Because, to "appease" the functional folks, developers will take short cuts that end up crucifying the system in the long term.

[/ QUOTE ]

Wow, that's a cynical point of view. Do you really want to classify all developers as kiss-ups to the functional guys? That's not all accurate.

[ QUOTE ]

CNC folks are naturally distrustful of change, have a much better understanding of the architecture, and therefore are much better suited to being the "goalkeepers" of what gets promoted to production.

[/ QUOTE ]


Jon, The CNCs aren't the goal keepers of the code. We're the goalkeepers of the system and security, but not the code. The goalkeeper of the code is the development manager.

[ QUOTE ]

Not only that, but if you work in any public organization in the US, developers are STRICTLY not allowed to promote ANYTHING to production - its called SOX Compliancy, and its probably the only SOX compliancy regulation I completely agree upon.

[/ QUOTE ]

That's a load of crap - SOX is about segration of duties, it doesn't get anywhere near that specific. SOX is all about interpretation by the auditing firm and developing good strong best practices that work for the company and the auditors. SOX is about setting a policy and following it. We have undergone twice annual SOX audits for years, the auditors have no problems with our developers managing the object promotions. The key is that all objects and projects are documented in a strong change control process. Before an object is modified or created, there is a written business case for it. From DV through to PD there are documented change control documents with appropriate managers and/or functional experts signing off on the changes.

- Gregg
 
I have worked for clients where we had to clean up behind CNC folks as well. So, don't say that us developers are the only ones who mess up.

Also, I don't believe that CNC personnel know the technical aspects of E1 better than developers. Come on.

Like I previously stated, if you don't follow the rules(Change Management Plan), or you don't know what your are doing, then some type of dicipline must be applied. Otherwise, we should work together. The result would be that we, our companies and/or clients will be the better off for it.
 
Hmm. I seemed to have stirred up an interesting divergency of opinion here.

It is not in my viewpoint a matter of superior knowledge or playing God. This is an ERP system. Let's keep perspective here, not curing cancer. :)

It's a matter of division of responsibility and as Jon said or implied DELIBERATELY slowing down promotions so code does not get to Production that hasn't been tested.

Developers are not keepers of the code in my opinion, customer is. Code and the CHANGE is PROTECTED by the CNC person ideally if the customer has the luxury of having a CNC on staff.

It really is quite simple: the CNC is the system admin of JDE, why would anyone have a problem with a capable CNC person managing or protecting the code and change in system? During upgrades or troubleshooting in doing restore if need be, it is the CNC who is going to have to "fix the system" if need be, so why make the job any harder? A competent paranoid CNC who is dedicated to protecting the ERP system is a great thing for a customer to have.

I am NOT a developer. I took a little bit of training on tool long ago. I could "mess around" "do development" but why? I don't. I let developers do their thing, what they do best. I let applications folks do their thing. I would not presume to tell a Payroll expert how to do their job (of course, that doesn't stop everyone under the sun on giving me the CNC tips on how to do mine, or wishing they could have sysadmin access) or contradict what they feel is best practice (not in front of customer-I might have questions I would ask privately to a colleague)

Really, if I am managing a system it's best I am a control freak and knowing what is going on at all times. It minimizes "redo work" or "fix it" work. I'd much rather be boning up on the latest service packs OR fleshing out how I think something is SUPPOSED to work but doesn't then emailing Oracle about it. :)

Someone mentioned a developer putting code into Prod that caused problems. Some developers (and many others) ALWAYS want to cut corners when it comes to promotion best practice. These folks always are like, "it's just a little change" or "yeah but that's an extra step". Frankly I don't care if the risk is "low" I don't want to have to THINK about someone else promoting and screwing system up or causing me extra cleanup.

It's just general sloppiness and laziness and LACK OF TRUST in your CNC to do the job appropriately for a customer site to do otherwise. If you can't trust your CNC person, then get another one.

Developers' jobs are to develop. Not to secure and protect the system or look after it in a global way. Their job is to crank out the changes and they have plenty to do.

Leave system management to the system admins. I like to compare it to Windows admins--I tell customers "hey I'd like to be able to change my own password on the network if I disable it. I'd love to have a domain admin account. I know a thing or two about Windows networks and servers, so can I have domain access pretty please? It would make my life so much easier. And it's just 'one more step' for you to change my password for me, just let me do it myself, ok? I am trustworthy, etc etc" Is there any IT Operations Manager or CIO going to change company policy so I can be left to myself? I don't think so. :)

Ok enough on this topic since it sounds like those who don't have their CNCs control the system have their reasons for doing so.

I honestly didn't know there were accounts that were not letting their CNCs handle the job. In super large acccounts perhaps there might be a need for a couple CNCs with one having promotion responsibility, or maybe shared alternating promotion responsibilities. I just don't get why some would hand that over to non CNC (unless a really small customer instance). To each his or her own I suppose.

Thanks all for your contributions. Thanks Mr. Steele.

Regards,
Joe Tirado
 
Sorry but if you are cleaning up after a "CNC" you need a new CNC. And as I mentioned before, I don't presume to tell a developer how best to do their job nor do I expect them to tell me how to do mine (of course I am open to ideas and suggestions, etc). To some degree, I don't care whether he or she is the more "knowledgeable" about technical aspects or not. It misses the point, a competent CNC takes care of system and developers develop. Not sure why folks insist on making things more complicated than they need be.

I guess it comes down to whether the person is a jerk or not; or trying to impress (intimidate?) me (or the customer) as to how receptive I am to working with them but that is natural I suppose.

Joe Tirado
 
While cooperation between Development and CNC is important to successful
projects, CNC is in fact responsible for and accountable for the proper
operation of OMW and the entire JDE infrastructure - and is often (unfairly)
the first assumption of failure when something goes wrong.



Necessarily, then, CNC had better understand the technical aspects better
than development - e.g. Web infrastructure - because if they don't
understand the WHOLE picture then somebody will be cleaning up after them
someday.



Discipline ought to be there BEFORE something goes wrong.

From: [email protected] [mailto:[email protected]] On
Behalf Of eagleralph
Sent: Sunday, June 07, 2009 2:23 PM
To: [email protected]
Subject: Re: Allowing JDE Developers to Promote Projects into PY and PD



I have worked for clients where we had to clean up behind CNC folks as well.
So, don't say that us developers are the only ones who mess up.

Also, I don't believe that CNC personnel know the technical aspects of E1
better than developers. Come on.

Like I previously stated, if you don't follow the rules(Change Management
Plan), or you don't know what your are doing, then some type of dicipline
must be applied. Otherwise, we should work together. The result would be
that we, our companies and/or clients will be the better off for it.

_____


The entire
JDELIST thread is available for viewing.


Looking for a job? Check out the Job
forum


This is the JDELIST EnterpriseOne Mailing List.
JDELIST is not affiliated with JDEdwardsR.

To unsubscribe from this list via email, Click
<mailto: [email protected]?Subject=Unsubscribe&Body=Sirs,

Pl
ease remove this address from the JDELIST EnterpriseOne M
 
Ok, of course this was bound to end in a flame war - once again, the whole "developer vs CNC" argument has arisen on the board. Luckily this isn't actually the situation in a day-to-day work environment - but there ARE times when developers AND CNC guys overstep their marks...

Now, first of all, I'm exhausted today - I had to rescue an implementation over the weekend, and I just flew back to my regular customer - and I literally had no sleep last night - so if my comments seem "curt" or a little out of character, I apologize in advance !

Secondly, I thought we already had a big argument not that long ago in another thread with almost exactly the same question being asked ?! I'm not sure that anyones opinions are different from then....but nevertheless...

So, let me answer Greggs comments...

[ QUOTE ]
[ QUOTE ]
Because, to "appease" the functional folks, developers will take short cuts that end up crucifying the system in the long term.

[/ QUOTE ]

Wow, that's a cynical point of view. Do you really want to classify all developers as kiss-ups to the functional guys? That's not all accurate.


[/ QUOTE ]
No, you're right. Not all developers are like this. I was actually aiming this at the development ORGANIZATIONS that I have seen set up in the past. Maybe they don't specifically "kiss up" but the organization will certainly agree to any specification or change in the system proposed by higher-ups or the business.

This is actually a criticism of many development organizations - where the development team is a "service" that is used by the business - ie, their customer. When this occurs, "the business is always right" - and the development organization pretty much develops based on whatever their customer requirements are - then there is always going to be friction against a "standard/vanilla" JDE style environment. Not saying that ANY JDE environment is "standard" or "vanilla" - but there are definite long-term advantages to ensuring that the code is as "vanilla" as possible.

Now, whether having a separate CNC or Development Manager being able to curtail the changes, is another matter. If the CFO demands that a change needs to occur, then usually that change occurs. Decisions are not always made with the best advice !

[ QUOTE ]
[ QUOTE ]

CNC folks are naturally distrustful of change, have a much better understanding of the architecture, and therefore are much better suited to being the "goalkeepers" of what gets promoted to production.

[/ QUOTE ]

Jon, The CNCs aren't the goal keepers of the code. We're the goalkeepers of the system and security, but not the code. The goalkeeper of the code is the development manager.


[/ QUOTE ]
True in your case, but in many other cases, the role of Development Manager is a task shared by the CNC - or the development manager is viewed as a "part" of the CNC group. However, either way you look at this, the GOALKEEPER'S role is to keep out bad code - and not allow the DEVELOPER (code writer) to promote unless the code has been tested thoroughly and meets correct standards.

[ QUOTE ]
[ QUOTE ]

Not only that, but if you work in any public organization in the US, developers are STRICTLY not allowed to promote ANYTHING to production - its called SOX Compliancy, and its probably the only SOX compliancy regulation I completely agree upon.

[/ QUOTE ]

That's a load of crap - SOX is about segration of duties, it doesn't get anywhere near that specific. SOX is all about interpretation by the auditing firm and developing good strong best practices that work for the company and the auditors. SOX is about setting a policy and following it. We have undergone twice annual SOX audits for years, the auditors have no problems with our developers managing the object promotions. The key is that all objects and projects are documented in a strong change control process. Before an object is modified or created, there is a written business case for it. From DV through to PD there are documented change control documents with appropriate managers and/or functional experts signing off on the changes.


[/ QUOTE ]

OK - this is the "crux" of this post, and why I felt I had to put some more explanation to my original quote.

First of all, Segregation of Duties has NOTHING to do with Sarbanes Oxley. SOD is often implemented as part of a SOX initiative - but SOX does NOT require SoD in any way, shape or form.

You are also incorrect about SOX not being specific. A quick read of the wikipedia summary of the SOX act (http://en.wikipedia.org/wiki/Sarbanes-Oxley_Act) identifies that although there are certain controls that are "loosely" defined, there are very SPECIFIC controls that are MANDATED by the SEC - by law.

Section 302 mandates that internal controls have been documented - which is what you are referring to - but section 404 mandates the ASSESSMENT of internal control - and this is where the entire thing gets a little tricky. A large number of auditors are now using COSO (http://en.wikipedia.org/wiki/Committee_of_Sponsoring_Organizations_of_the_Treadway_Commission) as an answer to section 404 - and this is starting to integrate SoD into SOX.

Now, the question is whether these auditors SHOULD be using COSO - which, at the end of the day, is not a SOX requirement, but if implemented, does answer section 404 of SOX. The point here is that auditors like to implement "known" systems (and also like to implement controls that they can benefit from with vast billable hours !). The quote from the Wikipedia website states

[ QUOTE ]

Under Section 404 of the Sarbanes-Oxley Act, management and the external auditors are required to report on the adequacy of the company’s internal control over financial reporting. Auditing Standard No. 5, published by the Public Company Accounting Oversight Board, requires auditors to “use the same suitable, recognized control framework to perform his or her audit of internal control over financial reporting as management uses for its annual evaluation of the effectiveness of the company's internal control over financial reporting”


[/ QUOTE ]

So this means that as more and more companies allow COSO to be implemented in their IT Controls, then more and more auditors will require SoD as part of SOX Compliancy - and, therefore, is far more specific and restrictive than the original ideas behind SOX.

I've been quoted on SOX compliancy a number of times before, as far as development and IT Controls (I provided a presentation on SOX compliancy for Collaborate last year) but even I can see the chalk on the wall as far as how code is promoted into production.

The question is, of course, is whether SOX will continue. There is a lawsuit which just the other week went to the supreme court about whether SOX and the Public Company Accounting Oversight Board is constitutional. The complaint argues that because the PCAOB has regulatory powers over the accounting industry, its officers should be appointed by the President, rather than the SEC. Further, because the law lacks a "severability clause," if part of the law is judged unconstitutional, so is the remainder.

On May 18, 2009, The United States Supreme Court agreed to hear this case.

Long winded, I know, but I'm still in favor of separating the developer from promoting code into production - and instead ensuring that a development manager or CNC be the oversight to promotion. If that process is "too long winded" then it needs to be sped up - but I've seen too many issues with code promotions and spec corruption, and after all, wouldn't the developer prefer just to code instead of having to trace why code didn't promote correctly ?

Flame on...
 
Back
Top