Skip to main content

Help analyze software requirements in AECO industry

Project description

https://travis-ci.com/mristin/rasaeco.svg?branch=master

RASAECO (“Requirements Analysis for Software in AECO Industry”) is a tool we developed within the BIMprove Project to help us analyze the software requirements after the finished elicitation phase.

Since the tool is still work-in-progress, we do not document yet how to write the scenarios. Please consult sample_scenarios for examples.

Installation

Please download and unzip the latest release from the GitHub release page.

Usage

Start your native Windows command prompt.

(Please be careful not to start “Developer Command Prompt for VS 2019” or similar as it includes a 32bit version of Python3 in its environment!)

Change to the directory where you unzipped the release.

Render once

Render the scenarios in-place once:

pyrasaeco-render.exe once --scenarios_dir c:\some\path\to\scenarios

(Change c:\some\path\to\scenarios to fit your system.)

Open the scenario ontology with your browser from: c:\some\path\to\scenarios\ontology.html.

(Don’t forget to change c:\some\path\to\scenarios again to fit your system.)

Render continuously

Monitor the scenario files and re-render on changes:

pyrasaeco-render.exe continuously --scenarios_dir c:\some\path\to\scenarios

(Change c:\some\path\to\scenarios to fit your system.)

Open the scenario ontology with your browser from: c:\some\path\to\scenarios\ontology.html.

(Don’t forget to change c:\some\path\to\scenarios again to fit your system.)

Render continuously + automatic refresh

pyrasaeco-render can also start a demo server for you so that you do not have to manually re-load in the browser. You have to specify the port and the server will be automatically started:

pyrasaeco-render.exe continuously
    --scenarios_dir c:\some\path\to\scenarios
    --port 8000

(Change c:\some\path\to\scenarios to fit your system.)

The ontology will be available on: http://localhost:8000.

Help

pyrasaeco-render.exe -h
pyrasaeco-render.exe once -h
pyrasaeco-render.exe continuously -h

Cheatsheet

Directory Structure

Write documents in the following directory structure:

ontology/
    some-scenario/
        scenario.md
    another-scenario/
        scenario.md
    yet-another-scenario/
        scenario.md
...

Models

Models are defined as headings 3 (### plan/some_model) beneath the heading 2 ## Models.

Definitions

Definitions are defined as headings 3 (### some_definition) beneath the heading 2 ## Definitions.

If you want to write (pseudo)code in the definition, use ``` (three backticks):

### reception_platforms

```bim
reception_platform_label = IfcLabel("ReceptionPlatform")

reception_platforms =
    SELECT e
    FROM
        e is IfcBuildingElementType modeled in observed/main
    WHERE
        e.ElementType == reception_platform_label
```
</def>

Tags in the Scenario

Tag text in markdown with XML tags.

Model references are written using <modelref> tag:

The possible placements for the reception platform should be computed based on
the <modelref name="observed/main" />.

Definition references are written using <ref> tag:

The <ref name="receptionPlatforms" /> can not be appropriately fixed.

Marking phase and level. Use <phase> and <level> to mark the phase in the building life cycle and hierarchy level of detail, respectively.

<phase name="planning">During the planning phase, the <ref name="scaffolds" />
are wrongly planed.</phase>

<phase name="construction">The <ref name="receptionPlatforms" /> can not be appropriately fixed
on <level name="site">the site</level>.</phase>

Further Examples

Please see Sample scenarios for further examples.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rasaeco-0.0.7.tar.gz (20.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page