Package: ramstk
The RAMS ToolKit (RAMSTK)A ToolKit forReliability,Availability,Maintainability, andSafety (RAMS) analyses.TestsQualityPackages🚩 Table of ContentsFeaturesInstallingPrerequisitesDownloadRunning the TestsUsageDocumentationContributingAuthorsLicenseSimilar ProductsDisclaimerRAMSTK attempts to useSemantic Versioning2.0.0.  Per
spec item 4, major version 0 is for initial development and anything may
change at any time.  That is certainly the case for RAMSTK!  Because RAMSTK
is a one developer show, there is no active develop branch at the moment.
This may change after release of 1.0.0.  Until then, tagged releases can be
used, but thelatesttag may not work and may not be backwards-compatible.
While major version is at 0, breaking changes will be reflected in bumps to
the minor version number.  That is, version 0.15.0 is not compatible with
version 0.14.0.🎨  FeaturesRAMSTK is built on the concept of modules where a module is a collection of
related information and/or analyses pertinent to system development.  The
modules currently included in RAMSTK are:Revision ModuleUsage profileFunction ModuleFunctional decompositionHazards analysisFailure definitionsRequirements ModuleStakeholder input prioritizationRequirement developmentAnalysis of requirement for clarity, completeness, consistency, and verifiabilityHardware ModuleReliability allocationEqual apportionmentAGREE apportionmentARINC apportionmentFeasibility of ObjectivesHardware reliability predictions using various methodsSimilar items analysisMIL-HDBK-217F parts countMIL-HDBK-217F parts stressFMEA/FMECARPNMIL-STD-1629A, Task 102 Criticality AnalysisPhysics of failure analysisValidation & Verification ModuleTask descriptionTask acceptance value(s)Task timeTask costOverall validation plan time/cost estimates💾  InstallingRAMSTK usespostgresqlfor its database
engine.  You'll need to have a user with read/write access to a postgresql
server to use RAMSTK.  Instructions for setting up the postgresql servers and
creating users with the appropriate permissions can be found in the projectWiki.Download and InstallSince RAMSTK is still a version 0 product, it's highly recommended that you
install in a virtual environment.  The instructions below presume you will
be installing in a virtual environment and system-wide Python packages that
RAMSTK depends on will be unavailable.  That being the case, you will need
various system development packages available via your operating system's
package manager to install RAMSTK.Once you have installed any missing development file packages using your
operating system's package manager, download the <version> of RAMSTK
source from GitHub you wish to install.$wgethttps://github.com/ReliaQualAssociates/ramstk/archive/v<version>.tar.gz
$tar-xfv<version>.tar.gz
$cdramstk-<version>The other option for obtaining the RAMSTK source code is to clone the
repository.$gitclonehttps://github.com/ReliaQualAssociates/ramstk.gitramstk.git
$cdramstk.gitCreate and activate a virtual environment however you are acustomed to.
One approach is to use pyenv and poetry.  Using pyenv isn't necessary
unless you want to install and use a Python version other than that
provided by your operating system.$pyenvinstall3.8.7
$poetryenvuse~/.pyenv/shims/python3.8
$poetryshellThis will install Python-3.8.7 and tell poetry to use the Python interpreter
you just installed.  Finally, poetry will create, if needed, and activate
the virtual environment using Python-3.8.7 as the interpreter.Now that the virtual environment is activated, you can install the
necessary RAMSTK dependencies and RAMSTK itself.  Omitting the PREFIX
variable will cause RAMSTK to install to /usr/local by default.$makedepends
$makePREFIX=$VIRTUAL_ENVinstallWhen upgrading RAMSTK, you can simply:$pipinstall-UramstkThis will only install the latest RAMSTK version from PyPi and will leave
configuration, data, and icon files untouched.  If you cloned the RAMSTK
repository, you can also use the Makefile:$gitswitchmaster
$gitpull
$makeinstall.devDevelopment DependenciesWe usepoetryto manage the
dependencies for developing RAMSTK.  Using the Makefile, install as follows:$makedependsThis should get all the needed development and runtime requirements installed
if they're not already.Running the TestsTo run the entire test suite for RAMSTK after installing, simply execute:$maketestTo run the test suite with coverage, execute:$makecoverage
$makecoverage.reportTo run specific tests or groups of tests, use pytest:$pytest-mintegrationtests/modules/test_allocation.py
$pytest-munittests/analyses/prediction🔨  UsageAfter installing RAMSTK, it can be launched from a terminal emulator:$ ramstkThis is a good option if you need to file an issue as the output should be
included in your report.  RAMSTK also installs a *.desktop file and can be
found where ever applications in the category Math or Science are listed.
If you've installed in a virtual environment or other non-standard location,
this *.desktop file may not be found.See the User Guide for the latest usage instructions.DocumentationDocumentation for RAMSTK is built and included as release assets.  For each
release, you will find a pdf and html implementation of the User Guide.  For
each minor and major version release, you will also find a pdf and html
implementation of the Developer's Guide.💬  ContributingPlease readCONTRIBUTING.mdfor details on our code of conduct, and the process for submitting pull requests to us.Also readDEVELOPMENT_ENV.mdfor instructions on setting up a development environment to work on and test RAMSTK.🍞  AuthorsDoyle 'weibullguy' Rowland-Initial work-weibullguy📜  LicenseThis project is licensed under the BSD-3-Clause License - see theLICENSEfile for details.RAMSTK is also registered with the United States Copyright Office under
registration number TXu 1-896-035 because I have an attorney and attorneys
like to file paperwork for $300/hour.Similar ProductsThe following are commercially available products that perform RAMS
analyses.  We are not endorsing any of them; they are all fine products and
may be a better fit for you or your organization depending on your needs
and budget.  Obviously, we would prefer you use RAMSTK.PTC Windchill QualityReliaSoft Synthesis