The required investment in many major organizations is in design and designers. This is often an unpalatable truth to be faced. You need to actively look for things that can be reused from other applications. Each project should have a task attached to it for "trawling" or "scavenging" for reuse. If the organization has an organized reuse catalog of components and patterns, this is an obvious starting point. However, few organizations appear to have done such cataloging well, if at all.
An effective approach is to schedule a series of short meetings with the design leaders in other projects. At these meetings, discuss the existing application and the new application both technically and from the business point of view and identify similarities. These areas of similarity should point to reuse. Then take a guided tour of the similar parts of each application. Reuse any applicable code, ideas, or good practices. Generally speaking, one workweek should be sufficient for trawling.
Contribute to the reuse catalog, or start one. Reuse comes for free with good design. Duplication is a product of politics.
Finding the Right Tools
Basic data modeling tools are adequate for small-scale development. If application development is extended to large-scale Visual Basic 6 distributed development, a sophisticated CASE tool is required that supports object modeling and partitioning the application into components that can be distributed among processors. Such a tool will require a higher level of expertise to use. A source code control system will be required to manage the software and documentation when applications become of significant size or complexity.
An essential part of managing the risk in Visual Basic 6 distributed development is testing performance under realistic stresses. Load-testing tools are available to assist in this process. Other classes of test tools test the user interface and the code structure.
To use such tools effectively, you must first understand them and then use a method to guide their use during development. Most tools and methods are not mature; some might not exist. Test the methods with the tools. Old methods might not be appropriate or might need adapting.