ENUM should be editable from the Application as well like Modify caption and add or delete record to ENUM.
I would not think so, In all languages I know like Pascal, Modula, C++, C# and more this is not possible.
You should always use enums when a contant or variable (especially a method parameter) can only take one out of a small set of possible values. Examples would be things like type constants .
If you use enums instead of integers (or String codes), you increase compile-time checking and avoid errors from passing in invalid constants, and you document which values are legal to use.