Information Technology Reference
In-Depth Information
1..
Factors Creating Problems in Software
Development Process
Software development is a very difficult and labor-intensive process. Not many
people have software development skills. That is why good software developers are
always in great demand. If you are building software application from scratch, then
you will need a meticulous plan to define a good process, assemble a good team,
provide a detailed idea as to what the software will do, provide details about dif-
ferent functionalities in the application, select appropriate programming language,
select appropriate technology and tools, and so on.
Let us see in detail what major problems are encountered by software develop-
ment teams:
Intangibility
—When you develop any physical product, all of the product
attributes can be seen and measured. Hypothesis can be done for changes
in any product attribute whether it is physical dimensions, colors, chemical
composition, and so on, and resulting product attribute changes can be again
measured and any abnormal or undesired properties of the product can be
observed or measured by creating mathematical models of the product. So
testing a physical product is easy. But in the case of software products, you are
dealing with intangible products. The only thing you see is the user interface.
How the product is conceived, architectured, and implemented remains a
mystery. By going through the documentation and code reviews you can find
out about these things, but still on a large scale these things are a mystery.
This is why software product development is a difficult proposition.
Poor requirements
—If requirements are unclear, incomplete, too general, or
not testable, then there are bound to be problems in software development.
Poor requirements also lead to bad design.
Unrealistic schedule
—If too much work is crammed into too little time,
problems are inevitable. Loading of resources to an unrealistic level leads to
downfall in resource productivity.
Inadequate testing
—Without software testing in development, no one will
know whether the program is performing as per specifications. All the defects
will be found by customers, which is the worst-case scenario.
Featuritis
—Like diseases, too many changes in requirements leads to
unhealthy software. This is called featuritis. In most software development
projects it happens and is a major cause of defective software application.
Miscommunication
—Even when customers, the development team and
other stakeholders are located nearby and meet frequently and exchange
information, miscommunication happens. This leads to wrong expectations
and wrong information, and everything about the project gets messed up.
Search WWH ::




Custom Search