Tuesday, June 14, 2011

Sustainable Development?

Sustainability is a buzzword in business today, whether talking about maintaining growth or minimizing environmental impact, and seems to be tacked on to a variety of products from cereal bars to cars. So what do I mean when I talk about sustainable development with Microsoft Dynamics GP?

Now, first, I have to add in my own disclaimer. I am not a developer. So I really would love to hear from others on their experiences. But I have been involved in enough functional and technical design processes over the years, that I have seen some themes emerge around customizations that truly increase satisfaction with the software versus those that seem to limit the software’s capabilities and the customer’s satisfaction.

In my mind, sustainable development is custom development that is approached in a way that:

• Enhances the user’s experience with the system, does not diminish it

• Does not try to replace the need for training and time to adjust to a new system

• Uses supported tools and recognized approaches for solving a problem

• Includes documentation, including foresight regarding upgrading and changes in business requirements

Given the robust toolset that we now have to customize Microsoft Dynamics GP, it is not unusual to have some degree of custom development on even the smallest projects. These minor customizations can often reap big rewards in terms of satisfaction with the system. How do we go about developing these customizations in a “sustainable” way?

I think that there are three key principles to keep in mind when considering custom development, to ensure that you are approaching it in a sustainable way:

1. Ask Why? Why is this needed? Is it to support a business process and requirements? Get to the heart of the need, and address it appropriately—which may not be with development. It may be training, it may be the learning curve that comes with a new system, it may be understanding that business requirements can sometimes be differ from an individual user’s perspective.

2. Document the design. Putting it down on paper can make a world of difference in terms of the thought processes applied—thinking through upgradeability, appropriateness of the selected toolset, and flexibility for future requirements. Plus this gives everyone something to respond to, something concrete to reference and consider.

3. Don’t limit yourself. This is a hard one, because we all rely on the tools we know best. But when something falls outside your comfort level, or you sense that there may be a better approach, ask around. Trying to shoehorn the tools you know to meet a need can create a cell you will be forced to live in for years…and years…and years :)

Of course, I am always interested in hearing your perspectives! Please let me know if you agree/disagree or want to add to the list above.

Christina Phillips is a Microsoft Certified Trainer and Dynamics GP Certified Professional. She is a supervising consultant with BKD Technologies, providing training, support, and project management services to new and existing Microsoft Dynamics customers. This blog represents her views only, not those of her employer.

No comments: