Channels ▼

Mike Gualtieri

Dr. Dobb's Bloggers

Lame Excuse: The Business Doesn't Know What It Wants

September 24, 2009

 I have grown so very weary of hearing excuses (for 20 years)  from application development professionals about why they are challenged when it comes to developing and delivering applications that meet the expectations of the business. Excuses such as:

  • The business doesn't know what they want.
  • The requirements keep changing.

Application development professionals are not served by these lame excuses because no one gets what they want or need. The business is left lacking and application development professionals deserve their reputation. If you don't make excuses, then I salute you. If you want to stop the excuses, here's how:

Solution 1: Get Over It

Stop denying reality. The business either doesn't know or can't always articulate what application features they need to make their business more productive, more responsive to customers, and more flexible to market changes. And, they often change their minds because they are just thinking this through themselves and that often results in new needs or missed requirements. This is the nature of the beast. Accept it and stopping beating your head against the wall. It's not good for you.

Solution 2: Understand The Business And Your Users

What's a poor app dev gonna do? You must learn the workings of the business, understand what customers want, what competitors are doing, and what it will take to create a great user experience for users. This will give you a much better context when you speak with the business and you can work together in the requirements, offer new ideas, and head-off many of the gothcha's that come up later. This is your job and you have to start doing it to the nth degree. Keep being strictly a tech-head if you want, but stop the excuses, please. Learn the business.

Solution 3: Build For Change

Things change constantly. You need to choose technologies, architectures, and processes that enable you to respond to change. This requires getting creative and being open to new combinations. For example, maybe an event processing architecture is a more natural way to respond to what is happening in the business than a service oriented architecture. Or, maybe you can build a more better user experience by using Adobe Flex rather than JSF. Building for change is a lot easy when you know the business because it helps you to anticipate future requirements.

Solution 4: Get Passionate About Your Craft!

The industrialization of software development has been an epic fail. Developing software is not like building a car on an assembly line or bottling beer like Laverne and Shirley at the Shotz brewery. Software development is a creative craft more akin to making a movie where talent, creativity, discipline, and passion result in great creations. For years, app dev pros have been told to keep their heads down - that all you need to do is follow the project plan and write your code. Wrong. Lift your head up, find your passion, understand the business and then use your technical creativity to make beautiful applications that users find useful, usable, and desirable.

What's your excuse?


 Mike Gualtieri, Senior Analyst, Forrester Research

Follow me on Twitter.

Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 


Video