ZeePedia

Problems in Software Projects, Process- related Problems

<< Project Execution: Product Implementation, Project Closedown
Product-related Problems, Technology-related problems >>
img
Software Project Management (CS615)
LECTURE # 11
2. Software Development Fundamentals
Management Fundamentals
2.11
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:
·
People-related problems
·
Process-related problems
·
Product-related problems
·
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.
85
img
Software Project Management (CS615)
·
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. Al1
stakeholders, 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.
86
img
Software Project Management (CS615)
·
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 should also maintain the focus of the development
team toward a structured approach to software development.
Product-related Problems
There are many product-related problems that you can face in a software project.
These are:
·
Product scope changed toward the end of the project life cycle: The project
time, effort, and cost estimates for a software project can go up dramatically
when the customer changes the scope 9f the product toward the end of the
project. In such situations, you should verify the criticality of the scope
change. However, if the change request is not critical, you should retain the
original scope with a proper explanation to the customer. If the change request
is critical, you should explain the situation to the customer. Usually, a
customer gives more time and funds to a software project if proper
justification is provided. In some cases, the scope change may also be because
of a change in government policy. It may become mandatory for you to
include such change requests.
·
Research-oriented software development: Many software projects digress
from the original scope because of the nature of the software product or
technology used. When a totally new kind of software is developed or a new
87
img
Software Project Management (CS615)
technology is used, the software development team can lose focus of the
objectives by getting into a research-oriented approach. It becomes your
responsibility as the project manager to maintain the focus on the objective.
88
Table of Contents:
  1. Introduction & Fundamentals
  2. Goals of Project management
  3. Project Dimensions, Software Development Lifecycle
  4. Cost Management, Project vs. Program Management, Project Success
  5. Project Management’s nine Knowledge Areas
  6. Team leader, Project Organization, Organizational structure
  7. Project Execution Fundamentals Tracking
  8. Organizational Issues and Project Management
  9. Managing Processes: Project Plan, Managing Quality, Project Execution, Project Initiation
  10. Project Execution: Product Implementation, Project Closedown
  11. Problems in Software Projects, Process- related Problems
  12. Product-related Problems, Technology-related problems
  13. Requirements Management, Requirements analysis
  14. Requirements Elicitation for Software
  15. The Software Requirements Specification
  16. Attributes of Software Design, Key Features of Design
  17. Software Configuration Management Vs Software Maintenance
  18. Quality Assurance Management, Quality Factors
  19. Software Quality Assurance Activities
  20. Software Process, PM Process Groups, Links, PM Phase interactions
  21. Initiating Process: Inputs, Outputs, Tools and Techniques
  22. Planning Process Tasks, Executing Process Tasks, Controlling Process Tasks
  23. Project Planning Objectives, Primary Planning Steps
  24. Tools and Techniques for SDP, Outputs from SDP, SDP Execution
  25. PLANNING: Elements of SDP
  26. Life cycle Models: Spiral Model, Statement of Requirement, Data Item Descriptions
  27. Organizational Systems
  28. ORGANIZATIONAL PLANNING, Organizational Management Tools
  29. Estimation - Concepts
  30. Decomposition Techniques, Estimation – Tools
  31. Estimation – Tools
  32. Work Breakdown Structure
  33. WBS- A Mandatory Management Tool
  34. Characteristics of a High-Quality WBS
  35. Work Breakdown Structure (WBS)
  36. WBS- Major Steps, WBS Implementation, high level WBS tasks
  37. Schedule: Scheduling Fundamentals
  38. Scheduling Tools: GANTT CHARTS, PERT, CPM
  39. Risk and Change Management: Risk Management Concepts
  40. Risk & Change Management Concepts
  41. Risk Management Process
  42. Quality Concept, Producing quality software, Quality Control
  43. Managing Tasks in Microsoft Project 2000
  44. Commissioning & Migration