webアプリの抽象化について考える

まあ、基本はMVCで、Mをデータ永続層とそれを処理する層に分け、Vをプレゼンテーションロジック、プレゼンテーション構造、プレゼンテーション意匠とわけて、6層になるわけだ。
しかし、これだけでは不足で、ブラウザからGET, PUTで渡されるデータのところの抽象化がいる。strutsとかに倣って、ユーザが入力するところをフォームと呼ぼう。で、WEBアプリが動作のために自ら設定する値をコマンドとでも名付けよう。これらも抽象化が必要と。
あと、WEBアプリに必須な要素として、ユーザ認証がある。
という訳で、9つに別け抽象化する必要があると思われる。