I’ve been organizing Cucumber features in Rails apps using a strict directory convention:
features/admins/
features/api_clients/
features/users/
features/visitors/
All features go inside a directory named after a user type (including non-human users such as API clients).
I believe the single-most important attribute of a well-written feature is that it clearly captures the mindset of an end user.
The convention keeps the vocabulary tight and enforces the concept that all stories should be written by walking a mile in the shoes of some one or some system.
