Title: Calculates Earned Value for a Project Schedule
Version: 0.1.2
Author: David Hammond [aut, cre]
URL: https://github.com/david-hammond/pmev
BugReports: https://github.com/david-hammond/pmev/issues
Maintainer: David Hammond <anotherdavidhammond@gmail.com>
Description: Given a project schedule and associated costs, this package calculates the earned value to date. It is an implementation of Project Management Body of Knowledge (PMBOK) methodologies (reference Project Management Institute. (2021). A guide to the Project Management Body of Knowledge (PMBOK guide) (7th ed.). Project Management Institute, Newtown Square, PA, ISBN 9781628256673 (pdf)).
License: MIT + file LICENSE
Suggests: testthat (≥ 3.0.0)
Config/testthat/edition: 3
Encoding: UTF-8
RoxygenNote: 7.3.2
Imports: dplyr, lubridate, zoo, rlang, ggplot2, scales, vdiffr
Depends: R (≥ 2.10)
LazyData: true
NeedsCompilation: no
Packaged: 2024-08-27 12:55:40 UTC; david
Repository: CRAN
Date/Publication: 2024-08-27 13:30:02 UTC

pmev: Calculate Earned Value from a Project Schedule and Associated Costs.

Description

pmev implements project management tracking metrics as outlined in the Project Management Body of Knowledge (PMBOK) manual which can be found here.

Details

From an inputted list of project activities, start and end dates, planned costs, progress and costs to date, it calculates the following PMBOK metrics:

Author(s)

Maintainer: David Hammond anotherdavidhammond@gmail.com

See Also

Useful links:


Calculate the Earned Value of a Project Schedule to Date

Description

Given a set of project activities start times, end times, progress and costs, this function calculates the Earned Value at a certain Date

Usage

earned_value(
  start,
  end,
  progress,
  planned_cost,
  project_value,
  cost_to_date,
  date = today()
)

Arguments

start

Start Date of activity

end

End Date of activity

progress

Proportion between 0 and 1 representing percentage completed for each activity (1 = 100% complete)

planned_cost

The planned costs of each activity

project_value

The total value of the project

cost_to_date

The total amount spent on the project to date

date

Character date "YYYY-MM-DD". Defaults to today.

Value

A list of two data frames:

Examples

data(project)
earned_value(start = project$start,
              end = project$end,
              progress = project$progress,
              planned_cost = project$planned_cost,
              project_value = 150000,
              cost_to_date = 10000,
              date = "2024-07-03")

Get linearly scaled variable based on optimal bins

Description

Get linearly scaled variable based on optimal bins

Get linearly scaled variable based on optimal bins

Details

Finds outliers and then bands between 0 and 1 on optimal bins of non-outlier data

Public fields

planned_value

(numeric())
Planned value schedule

earned_value

(numeric())
Earned value calculations

Methods

Public methods


Method new()

Usage
ev$new(
  start,
  end,
  progress,
  planned_cost,
  project_value,
  cost_to_date,
  date = today()
)
Arguments
start

Start Date of activity

end

End Date of activity

progress

Proportion between 0 and 1 representing percentage completed for each activity (1 = 100% complete)

planned_cost

The planned costs of each activity

project_value

The total value of the project

cost_to_date

The total amount spent on the project to date

date

Character date "YYYY-MM-DD". Defaults to today.

Returns

A new ev object.


Method plot()

Plots the planned and earned values

Usage
ev$plot()

Method clone()

The objects of this class are cloneable with this method.

Usage
ev$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Examples

data(project)
tmp <- ev$new(start = project$start,
                       end = project$end,
                       progress = project$progress,
                       planned_cost = project$planned_cost,
                       project_value = 150000,
                       cost_to_date = 10000,
                       date = "2024-07-03")
plot(tmp)


Calculate the Planned Value of a Project Schedule to Date

Description

Given a set of project activities start times, end times, progress and costs, this function calculates the Planned Value across the Project Schedule

Usage

get_planned_value(df, project_value)

Arguments

df

A Data Frame of the Project

project_value

The total value of the project


Dummy Project Schedule

Description

A dataset of a dummy project. The variables are as follows:

Usage

data(project)

Format

A data frame with 12 rows and 4 variables