Skip to content

Commit

Permalink
Extract duplicated and common non-functional requirements to the comm…
Browse files Browse the repository at this point in the history
…on file
  • Loading branch information
banderror committed Feb 18, 2025
1 parent d39b5fd commit a63fd92
Show file tree
Hide file tree
Showing 9 changed files with 37 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [User stories](#user-stories)
- [Terminology](#terminology)
- [Assumptions](#assumptions)
- [Non-functional requirements](#non-functional-requirements)
- [Scenarios](#scenarios)
- [Editing prebuilt rules](#editing-prebuilt-rules)
- [**Scenario: User can edit a non-customized prebuilt rule from the rule edit page**](#scenario-user-can-edit-a-non-customized-prebuilt-rule-from-the-rule-edit-page)
Expand Down Expand Up @@ -87,6 +88,10 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [Common assumptions](./prebuilt_rules_common_info.md#common-assumptions).
- Rule package used will have all previous rule versions present (no missing base versions)

### Non-functional requirements

- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

## Scenarios

### Editing prebuilt rules
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [User stories](#user-stories)
- [Terminology](#terminology)
- [Assumptions](#assumptions)
- [Non-functional requirements](#non-functional-requirements)
- [Scenarios](#scenarios)
- [Core Functionality](#core-functionality)
- [Scenario: Exporting prebuilt rule individually from rule details page](#scenario-exporting-prebuilt-rule-individually-from-rule-details-page)
Expand Down Expand Up @@ -72,6 +73,10 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

- [Common assumptions](./prebuilt_rules_common_info.md#common-assumptions).

### Non-functional requirements

- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

## Scenarios

### Core Functionality
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [User stories](#user-stories)
- [Terminology](#terminology)
- [Assumptions](#assumptions)
- [Non-functional requirements](#non-functional-requirements)
- [Scenarios](#scenarios)
- [Core Functionality](#core-functionality)
- [Scenario: Importing an unmodified prebuilt rule with a matching rule\_id and version](#scenario-importing-an-unmodified-prebuilt-rule-with-a-matching-rule_id-and-version)
Expand Down Expand Up @@ -71,6 +72,10 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

- [Common assumptions](./prebuilt_rules_common_info.md#common-assumptions).

### Non-functional requirements

- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

## Scenarios

### Core Functionality
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,12 +84,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

### Non-functional requirements

- Notifications, rule installation workflows should work:
- regardless of the package type: with historical rule versions or without;
- regardless of the package registry availability: i.e., they should also work in air-gapped environments.
- Rule installation and upgrade workflows should work with packages containing up to 15000 historical rule versions. This is the max number of versions of all rules in the package. This limit is enforced by Fleet.
- Kibana should not crash with Out Of Memory exception during package installation.
- For test purposes, it should be possible to use detection rules package versions lower than the latest.
- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

### Functional requirements

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [Tickets](#tickets)
- [Terminology](#terminology)
- [Assumptions](#assumptions)
- [Non-functional requirements](#non-functional-requirements)
- [Scenarios](#scenarios)
- [Rule field doesn't have an update and has no custom value - `AAA`](#rule-field-doesnt-have-an-update-and-has-no-custom-value---aaa)
- [**Scenario: `AAA` - Rule field is any type**](#scenario-aaa---rule-field-is-any-type)
Expand Down Expand Up @@ -81,6 +82,10 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- All scenarios will contain at least 1 prebuilt rule installed in Kibana.
- A new version will be available for rule(s).

### Non-functional requirements

- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

## Scenarios

### Rule field doesn't have an update and has no custom value - `AAA`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [User stories](#user-stories)
- [Terminology](#terminology)
- [Assumptions](#assumptions)
- [Non-functional requirements](#non-functional-requirements)
- [Functional requirements](#functional-requirements)
- [Scenarios](#scenarios)
- [Rule upgrade field preview](#rule-upgrade-field-preview)
Expand Down Expand Up @@ -90,6 +91,10 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [Common assumptions](./prebuilt_rules_common_info.md#common-assumptions).
- A prebuilt rule is shown in the Rule Upgrade table when there's a newer version of this rule in the currently installed package with prebuilt rules.

### Non-functional requirements

- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

### Functional requirements

- User should be able to upgrade prebuilt rules one-by-one with the ability to preview:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -105,12 +105,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

### Non-functional requirements

- Notifications, rule installation and rule upgrade workflows should work:
- regardless of the package type: with historical rule versions or without;
- regardless of the package registry availability: i.e., they should also work in air-gapped environments.
- Rule installation and upgrade workflows should work with packages containing up to 15000 historical rule versions. This is the max number of versions of all rules in the package. This limit is enforced by Fleet.
- Kibana should not crash with Out Of Memory exception during package installation.
- For test purposes, it should be possible to use detection rules package versions lower than the latest.
- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

### Functional requirements

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one
- [Features](#features)
- [Common terminology](#common-terminology)
- [Common assumptions](#common-assumptions)
- [Common functional requirements](#common-functional-requirements)
- [Common non-functional requirements](#common-non-functional-requirements)
- [Common functional requirements](#common-functional-requirements)

## Tickets

Expand Down Expand Up @@ -114,10 +114,15 @@ Unless explicitly indicated otherwise:
- on the `Essentials` tier in a Serverless Security environment.
- User has the required [privileges for managing detection rules](https://www.elastic.co/guide/en/security/current/detections-permissions-section.html).

## Common functional requirements
## Common non-functional requirements

TBD
- Package installation, rule installation and rule upgrade workflows should work:
- regardless of the package type: with historical rule versions or without;
- regardless of the package registry availability: i.e., they should also work in air-gapped environments.
- Rule installation and upgrade workflows should work with packages containing up to 15000 historical rule versions. This is the max number of versions of all rules in the package. This limit is enforced by Fleet.
- Kibana should not crash with Out Of Memory exception during package installation.
- For test purposes, it should be possible to use detection rules package versions lower than the latest.

## Common non-functional requirements
## Common functional requirements

TBD
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,7 @@ https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

### Non-functional requirements

- Package installation, rule installation and rule upgrade workflows should work:
- regardless of the package type: with historical rule versions or without;
- regardless of the package registry availability: i.e., they should also work in air-gapped environments.
- Rule installation and upgrade workflows should work with packages containing up to 15000 historical rule versions. This is the max number of versions of all rules in the package. This limit is enforced by Fleet.
- Kibana should not crash with Out Of Memory exception during package installation.
- For test purposes, it should be possible to use detection rules package versions lower than the latest.
- [Common non-functional requirements](./prebuilt_rules_common_info.md#common-non-functional-requirements).

### Functional requirements

Expand Down

0 comments on commit a63fd92

Please sign in to comment.