js-pert
    TypeScript icon, indicating that this package has built-in type declarations

    2.0.1 • Public • Published

    js-pert

    Program evaluation and review technique

    Given a set of activities with pessimistic, optimistic, probable times and the set of dependencies, will provide:

    • expected time for every activity
    • variance for every activity
    • the description of the activity on node [AON] network diagram with predecessors and successors
    • earliest start [ES] times for every node
    • earliest finish [EF] times for every node
    • latest start [LS] times for every node
    • latest finish [LF] times for every node
    • slack for every node
    • critical path description

    With the pert description will also provide a function to calculate the probability to complete the project in x days.

    Install

    npm install js-pert --save

    Example

    Please look at this example.

    Documentation

    jsPERT

    The default exported function allow you to retrieve the description of the PERT network.

    Given activities:

    {
      [key: string]: {
        id: string;
        optimisticTime: number;
        mostLikelyTime: number;
        pessimisticTime: number;
        predecessors: string[];
      };
    }

    You can use jsPERT as follow:

    import jsPERT from 'js-pert';
     
    const pert = jsPERT(activities);
     
    console.log('PERT', pert);
     

    Should log the PERT description in following shape:

    {
      activitiesParams: {
        [key: string]: {
          expectedTime: number;
          variance: number;
        };
      };
      network: {
        [key: string]: {
          successors: string[];
          predecessors: string[];
        };
      };
      earliestFinishTimes: {
        [key: string]: number;
      };
      latestStartTimes: {
        [key: string]: number;
      };
      earliestStartTimes: {
        [key: string]: number;
      };
      latestFinishTimes: {
        [key: string]: number;
      };
      slack: {
        [key: string]: number;
      };
      criticalPath: string[];
    }

    pertProbability

    You can get the probability of completing the project in less than x days submitting the PERT description and x in the pertProbability ancillary function.

    import { pertProbability } from 'js-pert';
     
    const Pz = pertProbability(pert, 22);
     
    console.log('P(x<22):', Pz);

    License

    See the LICENSE file for license rights and limitations (MIT).

    Install

    npm i js-pert

    DownloadsWeekly Downloads

    11

    Version

    2.0.1

    License

    MIT

    Unpacked Size

    51.3 kB

    Total Files

    49

    Last publish

    Collaborators

    • marcolanaro