A.2 Motivations#

[1t] Background#


rivt is an open source software project that simplifies sharing and reuse of engineering documents. This has always been a challenge because the inclusion of text, images, tables, calculations, models and computer code required in reports has led to incompatible programs. Sharing and reuse has been restricted by the design and terms of use of existing software, including:

  • documents written by different programs are incompatible

  • frequent software updates are needed to maintain document access

  • update costs are high

  • newer document formats become inaccessible without upgrades

  • software is limited to specific platforms

  • document version control is limited

  • report generation features are limited

  • collaboration features are limited

The table below summarizes and compares limitations between different software programs. rivt is designed to address these limitations and function as a complement or replacement to existing software.

Software Comparison

Program

Rep [1]

Ver [2]

Txt [3]

Comp [4]

CP [5]

Collab [6]

Matlab

no

no

no

no

no

no

Mathcad

no

no

no

no

no

no

Mathematica

no

no

no

no

no

no

Cloud SaaS

limited

no

no

no

yes

limited

Excel

limited

no

no

yes

no

yes

Jupyter

no

no

no

yes

yes

yes

rivt

yes

yes

yes

yes

yes

yes

[2t] Use Cases#


The primary use case for rivt is producing engineering documents that lie somewhere between back of envelope notes and calculations, and formal journal publications. In other words, it produces formatted, organized documents that are easy to edit.

The second use case is when flexibilty is needed to produce documents in a variety of formats including text, PDF or HTML.

rivt files can function as a front and back end for:

  1. software control

  2. visualization

  3. instrumentation

rivt docs can be used for:

  1. internal communication

  2. research documentation

  3. government permits

  4. technical reports

  5. funding applications

Because rivt is compatible with collaborative tools it may be used in:

  1. teaching

  2. for presentations

  3. real time collaboration