A feature is any aspect of your software that is useful to you. Anything you can express, that is possible, and that you an afford, can be a feature. A bug is a feature that isn’t useful.
Since we’re talking about development, we’re discussing software features that don’t exist yet, that we’d like to build [or existing features we’d like to make better]. Often we can describe these things with should statements:
- It should email all the clients once a month.
- It should have a setting page in the admin area.
- It should have a custom post type called GPS coordinates for each subscriber.
- It should show a timeline of Civil War battles in the footer area.
The bottom line, at some point you have to have a conception of what you want in your mind. This thing is called a feature, and it’s what you want your developer to build you.