Software

We release the algorithms behind our research as usable software. Everything is on GitHub; the Python, R, and Julia packages install through their usual ecosystems.

Software reliability modelling

pysrat Python

A Python package for fitting and analysing NHPP-based software reliability models.

Install

Rsrat R

An R package for evaluating software reliability from fault data.

Rphsrm R

Phase-type software reliability models (PHSRM) for R.

msrat R

An R package that assesses software reliability using development metrics.

gof4srm R

Goodness-of-fit tests for software reliability models (Kolmogorov–Smirnov, EIC).

Software development support

JuliaMBD.jl Julia

A block-diagram based tool for model-based development (MBD) in Julia.

Numerical analysis of stochastic models

PhaseTypeInference.jl Julia

Phase-type distribution fitting for incompletely observed data, with AIC/EIC model selection.

NMarkov.jl Julia

Numerical computation for Markov chains in Julia.

DEQuadrature.jl Julia

Numerical quadrature on finite and semi-infinite intervals using double-exponential formulas.

mapfit R

An R package for fitting phase-type distributions and Markovian arrival processes. Available on CRAN.

Install

deformula R

An R package for one-dimensional numerical integration with double-exponential formulas. Available on CRAN.

Install

Dependability and performance evaluation

gospn Go

A tool for analysing stochastic Petri nets.

relibmss Python

A Python package for binary and multi-state system reliability using BDD/MDD.

Install

relib-rs Rust

Rust libraries for decision diagrams (BDD, ZDD, MDD) and reliability analysis.

Unsupported

These may still work, but are no longer maintained and can fail on current systems.

phsrm Java

A Java implementation of phase-type software reliability models.

Unsupported

SRATS2010 C

The earlier version of the SRATS Excel add-in.

Unsupported