web-dev-qa-db-ja.com

「保守性」のどの側面がIS実装テクノロジの選択に影響を与える可能性がありますか?

背景:私は見習いで、特定のISシステムを開発するプロジェクトを担当しています。現在は要求分析と情報処理設計のみを担当していますが、ソフトウェア開発者として、実際のWebポータルとしても実装したいと考えています。テクノロジーの選択に関しては、個人的には、JavaScriptフレームワーク(jQuery、Bootstrap、DataTables.Netなど)に基づいてフロントエンドを構築したいと考えています。これにより、フロントエンドの実装の柔軟性が高く、すぐに使用できます。モダンなデザインで、これらをコードビハインドで.NETMVCに配線します。何十年もコードを書いていなかった私の周りの人々は、.NETControlsを使用してMSWebサイト開発パッケージに固執するのと比較して、そのようなシステムを維持するのが難しいことを心配しています。ですから、私が育てようとするときはいつでも、見栄えが良く、ユーザーフレンドリーでモダンなポータルを構築できるようになります。最初のコンセプトフェーズが終了すると、見た目が気になり、「保守性」と「 DBに接続されたSharepointAnalysisServicesを使用することをお勧めします。」.

質問:「保守性」のどの側面がシステム実装技術の選択に影響を与える可能性がありますか?

目標:座って、私のアプローチが彼らが提案しているものと同じように維持可能であることを「証明」したいと思います。そうでない場合は、それを改善する方法を特定したいと思います。


私が面白いと思った質問:

保守性のいくつかの抽象的な側面:

  • 読みやすさ
  • カップリング
  • 一貫性
  • コードの背後にある理由が文書化されています
3
Rafael Emshoff

一般に、保守性とは、既存のコードにどれだけ迅速に変更を加えることができるか、バグを導入したり既存のコードを壊したりするリスクなしにどれだけ簡単に変更できるかを示します。あなたがリンクした質問( ここここ )は、保守性のこれらの一般的な側面を非常によくカバーしています。

私はここでいくつかの仮定をしていますが、あなたの同僚は保守性のこれらの一般的な側面に興味がないようです。彼らは、「どうすれば既存のコードに変更を加えることができるのかfind誰か」という質問に興味を持っています。 SharePointは、(私が思うに)特定のプログラミング経験のない人がカスタマイズできます。 ASP.NET WebFormsは、非常に簡単な学習曲線から始まり(Web開発で導入されるすべての詳細を抽象化するのが最善であるため)、少なくとも最低限の知識を持っている人がたくさんいます。

ASP.NET MVCとjQueryには、より多くの学習曲線があります。 2つの異なるプログラミング言語(C#とJavaScriptなど)に精通している必要があります。 HTMLとCSSを知っている必要があります。ベンダーに一貫性のある優れたフレームワークを提供させる代わりに、自分でアセンブルするいくつかのライブラリのコレクション(例ではjQueryとDataTables.Net)を使用しています。

MVC + JavaScript Webサイトには多くの利点があり、より保守しやすくなります熟練した開発者向け。しかし、ソフトウェア開発を専門とせず、その才能を開発して保持する必要がない組織の場合、できる人がいるかどうかさえ確信が持てなくなるため、保守性が大幅に低下し始めます。変更を加えます。

3
Josh Kelley