Collective Wisdom from the Experts 181
Your job is to ask the right questions about various final performance results
expected by the customer, and about how existing resources/software/systems
and your new code ouput are to interrelate. You may be able to lay a foundation
for changes your customer will want in the future using this resource-oriented
approach. At the end of this analysis, your software begins to take shape as a
set of new resources—things that not only solve today’s problems, but that can
be used to complete future projects and interact with future software.
Once you know what the customer wants and what resources are already avail-
able within your organization, now you can choose your best weapon to fight
the problem. Actual development can first focus on a few key requirements
you deliver to gain the customer’s confidence. The modules and services
needed for satisfying the key requirements should be implemented first.
Leaving your mind open to new paths for software design provides a pleasant
way to handle software projects in the world of constantly changing require-
ments. This flexibility will simplify your project management challenges, and
creating fresh weapons and plans keeps your workday interesting and enriching.