Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# navigation2

ROS2 navigation

# Contributing
Currently we are in the design phase, and are accepting input and requirements. To contribute, see the [design README.md](design/README.md)
15 changes: 15 additions & 0 deletions design/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# ROS2 Navigation Design documenation

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo: documenation -> documentation

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent capitalization. I'd say either "ROS2 Navigation design documentation" or "ROS2 Navigation Design Documentation" Should be consistent on titles.

This is where the ROS2 Navigation design documentation is being collected and vetted

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"ROS2 Navigation" here is inconsistent with the previous README.md, which uses "ROS2 navigation"


# Use Cases
These are for defining how the user interacts with the system

See the [use case template](use_cases/_template_use_case.md)

# Requirements
These are for defining the technical requirements

See the [requirement template](requirements/_template_requirement.md)

# Contributing
To submit a request for a use case or requirement, copy and modify the template and submit a pull request for review
18 changes: 18 additions & 0 deletions design/requirements/_template_requirement.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Requirement Title
The <navigation system> should be able to <shall> <do something>
Copy link

@mjeronimo mjeronimo Jun 5, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think these angle brackets should be escaped. Markdown allows for some inline markup, so these are not being interpreted correctly by the renderer. They don't show up correctly in Visual Studio code, at least. Searching online, it seems you can use a single backslash before the opening angle bracket: \<navigation system>, for example, instead of <navigation system>.


## More details
- Why is this needed?
- What is the expected user interaction?
- What use case does this map to?

Copy link

@mjeronimo mjeronimo Jun 5, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest we add: "Are there any non-functional requirements associated with this functional requirement?"


#Example:

# Warehouse Navigation
The navigation system should include a modular collision avoidance algorithm that can be replaced with a new algorithm at run time

## More details
- I want to be able to write or use my own collision avoidance algorithm without having to re-compile the entire stack from source
- Ideally I can just change out a node using a custom launch file
- This maps to the "Collision avoidance" use case

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd suggest use case names be capitalized: "Collision avoidance" -> "Collision Avoidance"

16 changes: 16 additions & 0 deletions design/use_cases/_template_use_case.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Use case Title

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Inconsistent capitalization: "Use Case Title" or "Use case title"

As a <Developer, Researcher, Technician, etc.> I want the robot to <action> so that <I, the robot, etc.> can <do something important>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As before, we should escape these angle brackets.


## More details
- Why is this needed?
- What is the expected user interaction?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest we add: "Are there any non-functional requirements associated with this use case?"


#Example:

# Warehouse Navigation
As a warehouse robot operator, I want the robot to navigate without colliding into people or objects so that it doesn't hurt anyone or damage anything

## More details
- I want this so that I know the robot won't damage itself, damage property or hurt anyone
- I shouldn't have to interact with the robot to prevent it from crashing into people or things