Software development, be it for customized solutions or generic products, is a continuous
activity of meeting the customers’ changing requirements. The changes may be due to
technology changes, expanded business needs of customers or changed government
regulations. It is also possible to extend the existing solution or product for use in other
areas with modifications. The changing requirements are generally met through
successive releases of the products or solutions by the organizations. Large software
organizations tend to work with products and solutions that are mature in terms of
number of years the solutions have been used. Changes in these products or solutions
may be difficult to take up and a lot of impact analysis on existing customers and existing
core modules may have to be done. Incorporating technology changes may require
longer times with this software. Medium and small companies generally develop
software solutions specific to a single customer or a set of customers. While technology
adaption is easy with this software, incorporating changing customer needs in
compressed time durations becomes a challenge for these organizations. As the
organizations develop initial versions of solutions and products and move towards enriching the software further, catering to multitudes of customers’ needs keeping in
mind the returns on investment in the software development, the factors of business value
of customer needs or requirements, when the product or solution needs to be available in
the market, how many resources in terms of human and technological resources would be
required, are there any components to be readily used—become the factors to be considered.
Due to the limited resources in terms of time and development team and constraints of time
to market, there is a need to prioritize the requirements that will be incorporated in the
upcoming solutions releases. Requirements prioritization is the most significant part of
software development to enable right products/solutions development in right time with
optimal resources.
|