While at SAP TechEd ’07, I found myself in a conversation explaining why I’m always racing to connect software with making money. Commercial software that is. Close readers will probably know that I try to use the word “cash” and “money” as much as possible when discussing the business of software.
While I’m acutely aware of and spend much time discussing the non-monetary aspects of software, in the context of commercial interests in software, I’m always trying to get to how you bring in the bags of cash.
The Goal Translation Chain
This time, I found myself explaining the sort of business requirements life-cycle for (usually) in-house, business software:
- Business person: “I want to make money with X, Y, Z business process! Give me some IT to do that!” Business people are always with the yelling and excitement.
- Business analyst: “All right. Let’s talk more about what you want exactly so I can understand what ‘The Business’ needs and translate it to developer talk.” The role of business analyst “translates” all that business person yelling into a plan for IT to implement, with careful notice to elict from the business person things they may not realize they need to ask for, like, “must handle 15x customers during Thanksgiving and Christmas.”
- Developer: “OK, I understand you want this type of system that performs these tasks. Let’s figure out how long it’ll take, which corners we can cut to accelerate delivery (if you want that), and then how we’ll support it long term.” Developers could typically give a rats-ass how you’re actually going to use their work-product to make money, so talking to them about that is sort of a waste of time, in general. They just want to know “what you want” — the slot A’s and tab B’s — not why, and esp. not how. Developers who think otherwise usually get promoted to management, which can be good or bad, depending on how much the developer wants to code or not.
At the end of the cycle, the only commercial goal is for the company to make more money or, at least, avoid loosing money.
There’s Always a Goal
Now, as I keep trying to point out with the use of the word “commercial,” this doesn’t apply to all software cases. That said, most every software endeavor has a goal of some sort: it may be just to achieve status, become a rock-star, do something “cool.” It may be to make money. It may be just something to do when you’re bored. Occasionally, there are even “virtuous” goals to simply build a good software and platform for others to use, as in the case of Apache and Eclipse.
But, when you’re talking in a business, commercial, the goal is always to make money, either directly or indirectly. Directly could be selling something, while indirect goals are usually ones that support and multiply direct efforts. Indirect goals could be establishing goodwill and “marketing voodoo” that allows you to make money (or save money) in other areas.
Using The Goal as Thinking-Tool
Once I established this frame in my head — thanks to one of my old co-workers and managers, Divakar Jandhyala, passing along The Goal to me — analyzing and thinking about commercial software become much easier: just ask how it’s going to make money. Of course, the answer to that question isn’t always rational or “good,” like spending a billion whatever on Skype. But, hey, it’s a good tool.
Technorati Tags: money, business, thegoal, sapteched07
this is a best idea to convince any one that may be human being or software.if any one want to make or design any software the most important thing how to understand.