13.07.2015 Views

Java™ Application Development on Linux - Dator

Java™ Application Development on Linux - Dator

Java™ Application Development on Linux - Dator

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

11.3 How to Develop Software265software costs, you pay it because the c<strong>on</strong>sequences of not doing it perfectly arefar too high.TIPOur discussi<strong>on</strong> is not meant to be scholarship <strong>on</strong> the topic of software developmentmethodology; instead, it is meant to show simple, basic processes thatcan bring a reas<strong>on</strong>able amount of c<strong>on</strong>trol to a software development project.These steps are, to name a few, requirements gathering, specificati<strong>on</strong>, objectanalysis, database design, development iterati<strong>on</strong> (code, unit test, repeat),and so <strong>on</strong>.But most of us who write software do not deal with such c<strong>on</strong>sequences.Most of us are keeping track of purchases and payments. We’re recording producti<strong>on</strong>data. We’re tracking manifests and updating inventories. We are thegreat unwashed mass of MIS software developers. Here we, too, want to do itperfectly right. But every time we go to management and tell them how muchit will cost and how l<strong>on</strong>g it will take, the little “mass layoff” vein throbs in theirforeheads. We are always being told to do it faster and cheaper. And so we findourselves, again and again, tilting at the windmill of quality.So where does that leave us? When we go to management with the textbooksof software engineering, they either laugh or scowl. Clearly, the m<strong>on</strong>eypeople are not prepared to support the cost of doing it right. So what do youdo? The best that you can. The <strong>on</strong>e thing we can tell you for certain is that theformula for success is not “start writing code and trust to luck.”It is fair to say that even the minimal software development method shouldinclude the following steps:• Requirements gathering• Use case specificati<strong>on</strong>• Class discovery and problem domain decompositi<strong>on</strong>• Technical requirements specificati<strong>on</strong> (architecturing)• Testing• Code and release management• Producti<strong>on</strong> and operati<strong>on</strong>s support• Bug and enhancement tracking

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!