❖ WHAT IS A PROJECT? All of us have been involved in projects, whether they be our personal projects or in business and industry. Examples of typical projects are for example: 1. Personal projects: • obtaining an MCA degree • writing a report • planning a party • planting a garden 2. Industrial projects: • Construction of a building • provide electricity to an industrial estate • building a bridge • designing a new airplane Projects can be of any size and duration. They can be simple, like planning a party, or complex like launching a space shuttle. ❖ Project Definition: A project can be defined in many ways: A project is “a temporary endeavor undertaken to create a unique product, service, or result.” Operations, on the other hand, is work done in organizations to sustain the business. Projects are different from operations in that they end when their objectives have been reached or the project has been terminated. A project is temporary. A project’s duration might be just one week or it might go on for years, but every project has an end date. You might not know that end date when the project begins, but it’s there somewhere in the future. Projects are not the same as ongoing operations, although the two have a great deal in common. A project is an endeavor. Resources, such as people and equipment, need to do work. The endeavor is undertaken by a team or an organization, and therefore projects have a sense of being intentional, planned events. Successful projects do not happen spontaneously; some amount of preparation and planning happens first. Finally, every project creates a unique product or service. This is the deliverable for the project and the reason, why that project was undertaken. ❖ WHAT IS PROJECT MANAGEMENT Project Management is the art of maximizing the probability that a project delivers its goals on Time, to Budget and at the required Quality.
The art of planning for the future has always been a human trait. In essence a The art of planning for the future has always been a human trait. In essence a project can be captured on paper with a few simple elements: a start date, an end date, the tasks that have to be carried out and when they should be finished, and some idea of the resources (people, machines etc) that will be needed during the course of the project. Project management is the application of knowledge, skills, tools, and techniques to project activities to meet project requirements. Project management is accomplished through the use of the processes such as: initiating, planning, executing, controlling, and closing. It is important to note that many of the processes within project management are iterative in nature. This is in part due to the existence of and the necessity for progressive elaboration in a project throughout the project life cycle; i.e., the more you know about your project, the better you are able to manage it. The term project management is sometimes used to describe an organizational approach to the management of ongoing operations. This approach, more properly called management by projects, treats many aspects of ongoing operations as projects to apply project management techniques to them. ❖ Problems in Software Projects Software projects are similar to traditional projects in the sense that the same types of problems affect them both. However, the difference in managing these problems lies in the approach that you take to the specific issue. For example, a technology-related problem for a software project might be the low degree of reuse of the software components created. However, for a car-manufacturing firm, there is no chance of reusing a component such as a front axle. You can classify the problems that affect software projects into the following four categories: 1. People-related problems 2. Process-related problems 3. Product-related problems 4. Technology-related problems ⇒ People-related problems People-related problems in a software project are:
Low motivation: As the project manager it is your responsibility to ensure an optimal level of motivation within the team. Lengthy projects, complex activities1 and scarce resources often decrease the motivation level in a software development team. However, you need to lead in such a way that the team is constantly motivated to do a good job. Problem employees: Some members of any team always create a problem. For example, an employee may carry a 'holier-than thou' attitude. Problem employees raise the chances of conflicts and differences of opinions within the development team. They lower the efficiency and productivity of other team members and make it difficult to meet the objectives of the software project within the specified time. You need to ensure that employees are not allowed to create a pr9blem for the rest of the team. Even if the employee is very competent, you need to assess the indispensability of such emp1oyees for the project. Moreover, you refrain from playing favorite with certain employees and treat everyone with the same measure. Unproductive work environment: The work environment is a major factor that affects the productivity of the development team. For example, a noisy or cramped workspace decreases the motivation levels of the employees. Similarly, unfriendly organizational policies also lower the motivation of the team members. As the project manager, you need to ensure that the team is protected from harmful external make the workspace friendly to work in. Inefficient project management style: the project manager needs to lead by example. The team members absorb the work culture, work ethic, and attitude of the project manager and implement it in their work style. If you display a lack of leadership qualities and weak ideals, the motivation levels decrease across software team. Lack of stakeholder interest: For a software project to be a success, each stakeholder needs to take an active interest in the progress of the project. Al1stakeholders, including the customer, the management, and the software development team, need to commit to the success of the project. For example, if the software development team is not committed to the project, then their contribution may not be to the optimum level. Ineffective project sponsorship by management: Lack of commitment of the senior management to a software project lowers the motivation level of the team members. If the management commits to the
progress of a software project, and takes a keen interest in the progress, the confidence of the software development team will increase. ⇒ Process- related Problems The process-related problems in a software project are: Unrealistic schedule: Assigning unrealistic deadlines for a software project is a primary reason why software projects are delayed. Often, the marketing or the management team commit a delivery date to the customer in the hope of getting the project contract. However, these dates are not decided in consultation with the development team. The rationale for assigning the deadlines is unfounded. You need to ensure that the deadlines match the ability of the software team to deliver the software product. As it is not always possible to shift deadlines committed to the customer, you also need to plan the resource allocation and project execution such that the deadlines are met. Insufficient identification: Unidentified, partially identified, and unplanned risks pose a threat to the success of a software project. You need to intensively identify risks and evolve a risk management plan such that the project is completed successfully, on time. Unsuitable life cycle model selection: Different software projects require different SDLC models. For example, a project to create banking .software is different from software for a satellite where the concept needs to be researched. For the former example, the Waterfall model is more applicable. For the latter example, the Spiral model is more suitable. Selecting the correct life cycle model is critical to the success of a software project. Abandoning quality under pressure of deadlines: Where a software project faces a shortage of resources, time, and funds, project managers often push away quality concerns and focus on meeting deadlines and staying within the budget. Abandoning quality has a ripple effect that actually adds even more time, effort, and costs to the software projects. The cost of doing things right the first time is lower than the cost of inspection during product delivery. Also, the cost of inspection is lower than the cost of debugging software after the customer spots errors. Unstructured and hurried software development: When software project progresses with more focus on meeting deadlines and staying within a budget, the approach to the software development is unstructured and hurried. You should plan the software project such that all the activities are identified, sequenced properly, and roles and responsibilities assigned to the various people on the project. You