アーキテクチャってどうやって勉強すればよいのでしょう?

年始はいきなり体調不良で潰れておりました。
お陰で目標の本はまったく読めず・・・(´;ω;`)

さて、今担当している案件は1画面のみのツールのようなシステムをやっております。

基本設計は他の方がやったので私は実装以降を担当。
今いる現場はシステムを作る際のアーキテクチャがまったく確立されていないので、自分で考えなければなりません。
※共通フレームワークにしようとしているものはあるのですがバグが多すぎて現状使い物にならない・・・。

自分は独学でプログラミングを覚えたため、アーキテクチャを考えるのが得意ではありません(;><)
皆さんどうやって勉強されているんでしょうか?

とりあえず今回はC/Sなので

にしました。

以前C/SでもWebアプリ並みにMVCモデルでアーキテクチャを考えられたものを実装したことがありますが、Controllerクラスが意味がなさ過ぎて本当に必要なの??って感じでした。
  
データアクセス関連の機能をModule基底クラスを作って持たせ、Moduleクラスに継承させてます。
1画面しかないシステムでやるのは大仰な感じですが、次に作るかもしれないシステムのサンプル的に試してみてます・・・。
継承じゃなくてコンポジションのほうが正しいのかな?とも思いますがどうなんでしょうか?
もしくはDAOクラスを作るほうがいいとか?

しかし本当にどういう構成が正しいのかってどうやって判断したらよいのでしょう????