A development stream is strictly defined as the negation of an Integration stream. That is: All the streams that are not integration streams in a UCM project are per definition development streams.
That said, there are a few variants of development streams that deserve their own terms, examples are Shared streams and Team streams.
In general development streams are named using the userID of the developer who creates them as prefix, this is a healthy approach and should be implemented either through correct and disciplined naming upon creation - or perhaps enforced by a trigger.
A very important distinction between a development stream and an integration stream is that on development streams developers can attach activities and check out files to that activity - they are developing on the stream. But on integration streams it's not intended use to checkout directly to an activity. Only activities that are created as part of rebase or deliver operations are allowed on integration streams. In other words you are not developing on integrations streams - you are integrating!