This vendor-written tech primer has been edited by Network World to eliminate product promotion, but readers should note it will likely favor the submitter's approach.
While my co-founders and I were in business school, we saw firsthand how painful and frustrating it is to be involved in the application development process from the business side. So we set out to improve collaboration between IT and the business and to make development radically faster and simpler while ensuring project success.
Here are the seven keys to successful IT/business collaboration.
1. Focus on the business problem, not the customer envisioned solution. The customer's view of what is possible is often limited by the tools or technology with which they have prior experience. In other words, what they might think is the best way of doing something might not be the best way at all.
It is the responsibility of business engineers — a term we use to refer to non-professional developers who are business savvy, yet have some affinity for technology — to understand the business problem and design the best solution. Business engineers are in a unique position to do so because they possess a deep understanding of the business as well as capabilities of the platform.
One example of a client that was boxed in by previous tools was a large health insurance company. The business problem they were trying to solve was an automated way to collect information from customers. Their envisioned solution was distributing and collecting Excel sheets — simply because they didn't realize how easy it would be to build a specific web-based interface for customers that is also tied to their existing back-end system. By adding a user role, security rules, and optimized forms, a high-quality interface was built for a fraction of the cost and resulting in a much more scalable and user-friendly solution compared to the Excel alternative.
2. Divide work based on user stories instead of specialties. The latter is a more traditional way of approaching application development, where specific team members each focus on specific technical areas, such as database/data model, UI, etc. This isn't the most efficient way to work because business engineers can typically complete 80% to 100% of the work themselves, with the exception of some very technical topics (such as styling or integration).
Instead of dividing tasks based on specialties, project work should be divided based on user stories, a term used in scrum or agile development methodologies to refer to a specific feature or piece of functionality written in in the everyday language of the end user (one format is "As a <role>, I want <goal/desire> so that <benefit>."). These stories should be developed by one or more business engineers as a whole. This way, every business engineer develops a full working piece of functionality each sprint rather than working on a certain activity. In the process, they're able to better focus on the business solution (see point #1) and deliver the best solution, versus simply completing his/her assigned task. The result is better software and happier end users.
Sign up for CIO Asia eNewsletters.