Projects may differ because of the different technical products to be created. Thus we need to identify the characteristic of a project which could affect the way in which it should be planned and managed. Other factors are discussed below.
Compulsory versus voluntary users
In Workplaces, there are systems that staffs have to use if they want to do something, Such as recording scale. However, use of a system is increasingly voluntary, as in the case of computer games. Here it is difficult to elicit precise requirements from potential users as we could with a business system. What the games will do will thus depend much on the informed ingenuity of the developers, along with techniques such a market surveys, focus groups and prototype evaluation.
Information systems versus embedded systems
A traditional distinction has been between information systems which enable staff to carry out office processes and embedded systems which control machines. A stock control system would be an information system. An embedded or process control System might control the air conditioning equipment in a building. Some systems may have elements of both where, for example, the stock control system also controls an automated warehouse.
While developing a large project, sometimes, it makes good commercial sense for a company to outsource some parts of its work to other companies. There can be several reasons behind such a decision. For example, a company may consider outsourcing as a good option, if it feels that it does not have sufficient expertise to develop some specific parts of the product or if it determines that some parts can be developed cost-effectively by another company. Since an outsourced project is a small part of some project, it is usually small in size and needs to be completed within a few months. Considering these differences between an outsourced project and a conventional project, managing an outsourced project entails special challenges.
Indian software companies excel in executing outsourced software projects and have earned a fine reputation in this field all over the world. Of late, the Indian companies have slowly begun to focus on product development as well.
The type of development work being handled by a company can have an impact on its profitability. For example, a company that has developed a generic software product usually gets an uninterrupted stream of revenue over several years. However, outsourced projects fetch only one-time revenue to any company.
Projects may be distinguished by whether their aim is to produce a product or to meet certain objectives.
A project might be to create a product, the details of which have been specified by the client. The client has the responsibility for justifying the product.
On the other hand, the project requirement might be to meet certain objectives which could be met in a number of ways. An organization might have a problem and ask a specialist to recommend a solution.
Many software projects have two stages. First is an objective-driven project resulting in recommendations. This might identify the need for a new software system. The next stage is a project actually to create the software product,
This is useful where the technical work is being done by an external group and the user needs are unclear at the outset. The external group can produce a preliminary design for a fixed fee. If the design is acceptable the developers can then quote a price for the second, implementation, stage based on an agreed requirement.