モジュール結合度。
過去に所属していたプロジェクトでは、自モジュールの内部状態を他のモジュールに提供するための関数を作っていた。
マルチタスクで動く機能的に独立したモジュール間で「モジュールAのある状態のときはモジュールBの動作を変える」などの制御をするために。これがシステム内の複数のモジュール間で相互に関数を提供・参照しあっているので、結合度は言わずもがな。相手の状態が自モジュールの動作に大きく影響するのだから…。
さらに提供先モジュールごとに、相手が必要とする状態の種別が異なる場合があるとモジュールC向け、モジュールD向けと関数を分けて作ったりするということが代々の機種で行われてきた。
こういうことが設計上良くないということを分かった上で納期や工数の制限に負けて実装したチームもあれば、何の疑いも無く使っているチームもあったり。
どうもそのプロジェクトを見てると、こういうやり方がAndroidになっても同じ事が行われそうな予感。
要求仕様を満たすには、アプリ間で状態を提供・参照して動作制御する必要があるとか無いとか…。独立したアプリ間でそんなことやりたくないのだけど…。
もっとAndroidが用意している仕組みを使って上手くできないものなのかなぁ。
コメント
[…] This post was mentioned on Twitter by findup and *モリノユージン™ / 森野憂人, #1 Doncaster Network. #1 Doncaster Network said: モジュール結合度: モジュール結合度。 過去に所属していたプロジェクトでは、自モジュールの内部状態を他のモジュールに提供するための関数を作っていた。… http://bit.ly/aRs3n6 #dncreco #dncaster […]
androidのフレームワークを理解することが大事ですよね。。。
もっと勉強しなくては。
レガシーな開発スタイルとか、別のプラットフォームでの方法を同じノリでAndroidとかの新しい環境に持ち込んだらダメってことです。
仕事で開発やってる人たちはずっとやっていたことを当たり前と思って思考停止しがちなんで、結果的にそれが長期的に自分の首を絞めてることに気づかないんですよね…。