I agree with Alexandr that smaller iterations would be beneficial for JanusGraph. One of the main reason for the delays in the current release process (0.3.0 and 0.2.1) were the many bug fixes that fixed bugs from contributions added since last release. With smaller releases, there would be less contributions per release and therefore also less changes that could have introduced new bugs.
Regarding possible deadlines for releases, I think that the way we handle that in TinkerPop works quite well. There, a member of the PMC (usually Stephen) shares a very rough release plan months in advance, like right now that version 3.4.0 will be released this summer. Then, about a month in advance the week of the planned release is announced together with a discussion about which issues need to be resolved until then. Finally, a code freeze of about one week ensures that there is some time to test out the release artefacts before the actual release. PRs created during code freeze won’t be merged until the release which lifts the code freeze.
Maybe something similar makes sense for JanusGraph?