Surprisingly, most new small businesses have either no effective automation or only loosely
coordinated suites of desktop applications that are excessively labor intensive. Most
entrepreneurs and start-ups focus on product and don’t consider the efficiencies of the process
that creates their product. They’ll spend evening and weekend hours constructing and revising
spreadsheets, sorting and filing orders and invoices, totaling payroll vouchers, and manually
updating their accounting software. Thirty five years ago, this data management model would
have been sufficient and about as good as you could do, but in today’s information-centric, just-in-time business environment, effective automation isn’t just a matter of convenience, it’s likely
to become a feature of your competitor’s business and, therefore, a matter of your survival.
Do you need to automate?
Try this quick self evaluation:
|
Yes
|
No
|
Is your business process stable?
|
|
|
Does your process involve repetitive but well-defined functions or
procedures?
|
|
|
Does your business deal with forms?
|
|
|
Are forms routed between individuals or departments?
|
|
|
Are interoffice memos common?
|
|
|
Do you periodically distribute paper copies of policies, addresses,
or phone numbers?
|
|
|
Does it take more than a few minutes to determine the status of
operations?
|
|
|
Do management reports require significant labor and time?
|
|
|
If you answered yes to one or more of these questions, you may want to take a closer look. For
most small businesses, especially those that compete in or near major metropolitan markets, there
is really only one answer: automate! Increasing competition is forcing all American businesses to
cut costs and, at the same time, improve product and service quality. The trend to global markets
marked by the North American Free Trade Agreement (NAFTA) and the General Agreement on
Tariffs and Trade (GATT) has already and will continue to confront American organizations with
lower-wage, yet technically qualified work forces. So in the future you can expect that successful
businesses will be known by their effective use of data automation to conduct daily business and
to support the improvement of business efficiencies.
What makes a competent software developer?
You’ll need help building the automation you need, but you must exercise due diligence as you
seek a software developer. There are minimum requirements for a competent software
development organization that you must confirm. Any organization, big or small, for any size
development, must address fundamental issues of organization and resource management,
software engineering process and management, the use of tools and technology, and the central
role of the user in any software development project. For example:
• Will the developer designate a software manager for the project?
• Will the developer implement appropriate software quality assurance? Will it be
independent?
• Does the developer have a mechanism for maintaining state-of-the-art awareness of
software technology?
• Will the developer implement appropriate formal procedures for management reviews
prior to contractual commitments and during development?
• Will the developer conduct appropriate audits at each step of project development? Will
they be independent?
• Does the developer have formal procedures for estimating software size, schedules, and
development costs?
• Will the developer implement appropriate mechanisms for controlling changes to
software requirements, designs, code, tests, ...?
• Does the developer use automated tools to trace requirements to design? Design to Code?
• Does the developer use standards?
• Does the developer plan software inspections?
• Will the developer produce an appropriate test plan for the project?
• Does the development plan include frequent user interaction and feedback?
• Will the developer produce a User’s Guide early in the development cycle?
Of course, all of these issues require effort for any development project, and effort will always
result in cost. However, not every project requires equivalent effort and cost for every issue, and
a competent software developer will know how to tailor the effort required for any given issue to
your goals for the software, your budget, and your schedule. Be sure the developer understands
the importance of automation that’s:
• designed and built to the specific, minimum requirements of the current business plan
• able to grow as the business grows with minimum adjustment costs
• fixed price when and where possible, so that it can be planned and budgeted
• supported when changes must occur to meet new business requirements
Why consider TDSI?
We do not undertake large and complex software development projects because of our limited
size, resources, and mission. However, TDSI has built many small-to-medium sized software
applications on Windows-based and other platforms for corporations, government agencies, and
small businesses, both domestically and overseas, since 1989. These applications include:
• a system that managed membership data for100 teaching hospitals (currently retired)
• a system that manages part purchases and inventory for a 300+ vehicle government
department of transportation
• a system that managed nation-wide installations of military telecommunication equipment
for a fortune-100 corporation (currently retired)
• A system that tracks submarine sail problems and supports failure trend analysis for the
U.S. Navy
• a system that manages automated shipment dispatching, pricing, and invoicing for a 15-person regional courier
• a system that manages ledgers, journals, payroll, payables, receivables, employees, and
contracts for a small software consulting business (Us)
Some of these systems have been retired or replaced with improved systems, and, as with all
software development projects, none was problem free. However, all of these experiences have
given us a well-earned understanding of software-development best practices.