While I admire the intent, I can definitely see bad developers simply writing long functions in multiple "parts" to get around the system.
public void shittyLongFunctionPart1(...) { //First line of screen 1
..
..
shittyLongFunctionPart2(...);
}//last line of screen 1
public void shittyLongFunctionPart2(...) { //First line of screen 2
..
..
shittyLongFunctionPart3(...);
}//last line of screen 2
Yet another example of culture trumping process. At the end of the day you need developers who give enough of a shit about their craft to write readable/testable/maintainable code. And that sucks because it seems relatively rare.