業務ではZendFrameworkを使っています。
なので独自のライブラリ作成など、拡張をする際にも出来るだけZendFrameworkのコーディング規約に合わせて開発を行ってきたのですが、Zend Framework 1.9.0 以降では、ファイル名の規約が変更になります。
B.3.2. 抽象クラス
一般に、抽象クラスの規約は通常の クラス と同じものとなります。追加の規則として、抽象クラスの名前は最後が “Abstract” (そしてその前にはアンダースコアはつけない) でなければなりません。 たとえば Zend_Controller_Plugin_Abstract は規約にそった名前ではありません。規約に従った名前は Zend_Controller_PluginAbstract あるいは Zend_Controller_Plugin_PluginAbstract となります。
B.3.2. 抽象クラス
そんなもんなんでしょうか?私は Zend_Controller_Plugin_Abstract の方が、クラス名もファイル配置も解りやすいと思うのですが。。。まぁ、ZendFrameworkの規約に準ずるというポリシーで開発しているので、今後は Zend_Controller_Plugin_PluginAbstract として開発する事にします。