Information Technology Reference
In-Depth Information
The development team gets wrong requirements and so design becomes
faulty and subsequently the coding will be entirely wrong. In today's world
of scattered teams located at far-flung geographic locations, communication
becomes even more difficult, which leads to more miscommunications.
1..
Solutions to Software Development Problems
It is easy to get carried away with the common problems that exist with most of
the software development projects. Nevertheless it is possible to overcome these
problems. Using a well-documented and well-defined process coupled with good
planning for the project can ensure successful navigation of these bottlenecks.
Let us take a look at solutions for solving these problems:
Solid requirements
—Clear, complete, detailed, cohesive, attainable, and
testable requirements do wonders for any project. In agile-type environments,
continuous close coordination with customers/end users is required to ensure
that changing/emerging requirements are understood by the development
team. This is the first step in software development: that requirements should
be clear and no ambiguity should exist.
Realistic schedules
—Allow adequate time for planning, design, testing,
defect fixing, retesting, and changes to be made as per requirements and
documentation at each stage including requirements, design, coding, and
testing. Without a realistic schedule, team members will be forced to take
recourse to make shortcuts, which is detrimental to any project.
Adequate testing
—Start testing early on right after getting requirements,
always retest after fixes or changes, and plan for adequate time for testing
and defect fixing. Testing should include static code analysis/testing, test-first
development, unit testing and integration testing by developers, built-in test-
ing and diagnostic capabilities, automated postbuild testing, and so on, apart
from the usual performance, system, and acceptance testing that is done after
the application is built.
Communication
—Communication has always been the most important
worry in any project where a team is working to achieve a shared goal. In soft-
ware projects its importance increases, as software development work is a very
specialized form of group work. Any layman will never understand the kind
of work being done. Communication among software project team mem-
bers is thus different in scope and importance. Even after strict adherence to
processes and standards set for the project, a communication gap is bound
to happen and will impact the project adversely. Some of the communica-
tion channels used in software projects include walkthroughs, inspections,
knowledge transfer, white boards, and conference calls. The team should
make extensive use of group communication tools like groupware, instant
Search WWH ::




Custom Search