Introduction to Software Project Management
eBook - ePub

Introduction to Software Project Management

  1. 296 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Introduction to Software Project Management

About this book

Although software development is one of the most complex activities carried out by man, sound development processes and proper project management can help ensure your software projects are delivered on time and under budget. Providing the know-how to manage software projects effectively, Introduction to Software Project Management supplies an acces

Frequently asked questions

Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
No, books cannot be downloaded as external files, such as PDFs, for use outside of Perlego. However, you can download books within the Perlego app for offline reading on mobile or tablet. Learn more here.
Perlego offers two plans: Essential and Complete
  • Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
  • Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
Both plans are available with monthly, semester, or annual billing cycles.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere — even offline. Perfect for commutes or when you’re on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Introduction to Software Project Management by Adolfo Villafiorita in PDF and/or ePUB format, as well as other popular books in Business & Project Management. We have over one million books available in our catalogue for you to explore.

Information

Chapter 1

Introduction

1.1 What is a Project

1.1.1 Projects and Operational Work

Project Management Institute (2004) defines a project as a temporary endeavor undertaken to create a unique product or service. The definition entails five important characteristics of a project, some explicitly mentioned and some following as a consequence. These characteristics also define some of the requirements of a good project manager, as we will see later.
The first characteristic is that a project is temporary, that is, it has a beginning and an end. In many cases, determining the start and the end is easy. Consider the following examples: a contract sign-off, a formal authorization to proceed from senior management, a system going in production. In practice, however, many projects begin by slowly building up resources and interest, while the official start happens sometime after the resources and work have been invested. Others have residual work and activities going on after the official end, for instance to follow up on defects and problems found in project outputs. In all cases, however, projects have a start and a conclusion.
The fact that a project is temporary has a natural consequence. Every project will, in fact, have
  1. An initiating phase, during which the project infrastructure and the project’s goals are drafted.
  2. A planning phase, during which project goals are refined, activities identified and scheduled, and many other support activities are properly planned.
  3. An executing phase, during which the actual work takes place. Running in parallel, a monitoring phase measures the progress and raises flags when plans and reality disagree.
  4. A final closing phase, where the project outputs are handed out and the project is closed.
The amount and intensity of work in a project change according to the project phase. The initiating and planning phases will require a relatively small amount of work. Work will accumulate fast during the execution phase, as the project activities, many of which are running in parallel, unfold. As the project gets near to its conclusion, work will reduce and stop, of course, when the project delivers its outputs. If we plot the cumulative work produced in a project, we get an s-shaped curve. Both the phases of a project and the typical trend of cumulative work are shown in Figure 1.1.
Figure 1.1
Figure showing Project phases and cumulative work.
Project phases and cumulative work.
As a side remark, Figure 1.1 also introduces the notation we will use for process diagrams, which was inspired by the activity diagram notation of the Unified Modeling Language (UML). In particular, rounded rectangles represent activities, a black dot represents the initial state, and a bull’s eye represents the final state. The arrow shows the order in which activities run. Although not shown here, we will also use rectangles to denote artifacts and diamond for choices.
The second characteristic is that a project delivers an output in the form of a product, a service, or a capability. The outputs are tangible, and often their properties are also measurable. Thus, a project can be set up and organized, starting from the description and the characteristics of the outputs it delivers. Such description, in fact, entails the work that has to be done to build the outputs. The description of the project outputs also defines the project completion criteria: the project ends when the outputs are delivered as specified. Things are not always so simple, however. Many projects have a clear output, but the way in which this is achieved might not be clear. Consider, for instance, a situation in which we want to improve the performances of a software system. The goal is clear, but the means to achieve it might not. In other situations, the outputs might not be completely clear or well spelled out. This is quite common in software development, where coming out with a complete and unambiguous description of a system is not always easy.
The third characteristic is that projects are resource constrained. A limited time is available to build the project outputs. Also limited will be other project resources, such as the budget and the team. An important consequence is that the project manager and the team have to find an achievable solution, while respecting all project constraints. Thus, the output of a project is seldom the best possible solution but rather the best solution given the constraints.
The fourth characteristic is that a project requires a progressive elaboration to build the project outputs. At the beginning, different ways are possible to achieve the project goals. As we move along, many project activities require to take choices, which reduce the degrees of freedom, till we get to the end of the project with the only possible implementation of the project goals. Thus, the cost of changes increases as a project progresses, since the amount of rework necessary to implement a change increases as we reduce our degrees of freedom.
The fifth and final characteristic is that a project delivers a unique output. Thus, what a project delivers has some novelty, one way or the other. This allows us to introduce the last important characteristic, namely, that a project always has some risk coming in the form of menaces or opportunities. Risks come from the unique characteristics of the project outputs, which sometimes are not fully understood or not clear when a project starts. Other risks derive from additional constraints that are set in a project; consider, for instance a situation in which a customer pushe...

Table of contents

  1. Preliminaries
  2. Dedication
  3. Preface
  4. Acknowledgments
  5. Author
  6. Chapter 1: Introduction
  7. Chapter 2: The Basics: Software Development Activities and Their Organization
  8. Chapter 3: Making IT Right: Managing Goals, Time, and Costs
  9. Chapter 4: Making IT Better: Managing Changes, Risks, and Quality
  10. Chapter 5: Making IT Perfect: Managing People and Organizing Communication
  11. Chapter 6: Software Project Pricing
  12. Chapter 7: Managing Software Development Projects
  13. Chapter 8: Development and Management Standards
  14. Chapter 9: Open Source Tools for Managing Projects