Skip to main content

LOBSTER Tool for Codebeamer

Project description

LOBSTER

The Lightweight Open BMW Software Traceability Evidence Report allows you to demonstrate software traceability and requirements coverage, which is essential for meeting standards such as ISO 26262.

This package contains a tool to interface with the proprietary requirements management tool Codebeamer.

Tools

  • lobster-codebeamer: Extract requirements from codebeamer.

Configuration

This tool works with an optional config file. It allows to configure the following features:

References

Codebeamer items can reference other items through Reference Fields. This piece of information can be extracted by the tool, and serialized into the LOBSTER output file. It only needs to know which fields to take into account. Following the LOBSTER JSON schema, the item references will be added to the refs property of the LOBSTER item. Accordingly, the configuration parameter to specify the codebeamer field names is called refs, too. It can contain a single field name, or a list of field names. Field IDs cannot be used, only the field names.

Examples:

{
  "refs" : "cb-fieldname"
}

or

{
  "refs" : ["cb-fieldname"]
}

or

{
  "refs" : ["cb-fieldname1", "cb-fieldname2"]
}

Bearer Authentication Token

It is also possible to define the Bearer authentication token in the configuration file:

{
  "token" : "your-codebeamer-Bearer-token"
}

Note:

  • The Bearer authentication token can also be provided as a command line argument (use --cb-token=your-codebeamer-Bearer-token).
  • If the token is provided in the configuration file and as command line argument, then the configuration file takes precedence.
  • If --cb-user or --cb-pass is given together with a Bearer token (either as a command line argument or through the configuration file), then the Bearer authentication method is used, and the username and/or password are ignored.
  • If neither a token nor a username or password are given, then the tool tries to read the username and password from the .netrc file in the user's home directory.

Example Configuration

Here is an example configuration file:

{
  "refs" : ["derived from", "satisfied by"],
  "token" : "SomeTokenStringABC123"
}

Is it also possible to define the codebeamer token in this file:

{
"refs" : "cb-fieldname",
"token" : "your cb-token"
}

Schema

You can also specify the type of schema for the resulting output file. The supported values for the schema field are:

  • Activity: Sets the schema to lobster-act-trace.
  • Implementation: Sets the schema to lobster-imp-trace.
  • Requirement: Sets the schema to lobster-req-trace.

If the schema is not specified, the tool will default to Requirement, and the schema lobster-req-trace will be used.

Here is an example configuration file:

{
  "schema": "Activity",  // Specifies schema
  "refs": ["cb-fieldname1", "cb-fieldname2"]  // Specifies references
}

If an invalid schema is provided, the tool will raise an exception. Supported schema values are Activity, Implementation, and Requirement.

Command-Line Arguments and Configuration

When running the tool, you can specify the --schema flag via the command line or set the schema value in the configuration file. The configuration file will always take precedence over the command-line argument.

  • --schema: The schema to be used (optional, overrides the config file if provided).
  • Configuration file: If schema is defined in the configuration file, it will be used, and the command-line --schema argument will be ignored.

Usage

There are two ways you can use this tool:

  1. Download all requirements mentioned by another lobster trace (this way you do not get a completeness check) (using --import-tagged)

  2. Download all requirements generated by a saved codebeamer query (using --import-query)

  • Configure the 'refs' upstream reference (this argument is optional) (using --config)

  • Additionally, you can specify the schema and references:

    1. Specify the schema of trace to be generated (optional, defaults to Requirement) using the --schema argument, or configure it in the config file.
    2. Configure the 'refs' upstream reference (optional) using --config or specify directly via command line.
    • For example: codepython lobster_codebeamer.py --config lobster-codebeamer-config.json --schema "Activity" --references "custom_ref_1

      This command will extract activity traces (lobster-act-trace) with specified references.

Limitations

The key limitation is item text, which is currently not imported. However, we do plan to also import item text eventually.

Copyright & License information

The copyright holder of LOBSTER is the Bayerische Motoren Werke Aktiengesellschaft (BMW AG), and LOBSTER is published under the GNU Affero General Public License, Version 3.

This tool has no actual dependency on, or with, Codebeamer. It just talks the API as described here: https://codebeamer.com/cb/wiki/117612

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file bmw_lobster_tool_codebeamer-0.9.19-py3-none-any.whl.

File metadata

File hashes

Hashes for bmw_lobster_tool_codebeamer-0.9.19-py3-none-any.whl
Algorithm Hash digest
SHA256 8a0da1823ce5ae894ef2dc84091c997ad98c52a0dea9e5612635f804ea626ca0
MD5 b3f734ca51f488475d39aae1e4919fa3
BLAKE2b-256 4e9fca049691c70388abf7b92f5a57e75e9382cc7c6b0154ef4e75c1a209fb41

See more details on using hashes here.

Provenance

The following attestation bundles were made for bmw_lobster_tool_codebeamer-0.9.19-py3-none-any.whl:

Publisher: package.yml on bmw-software-engineering/lobster

Attestations:

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