inhouse_se
inhouse_se 与えられる役割や肩書き、職務に関係なく、ソフトウェアアーキテクトには次の8つの役割が期待される- アーキテクチャ決定を下す- アーキテクチャを継続的に分析する- 最新のトレンドを把握し続ける- 決定の遵守を徹底する- 多様なものに触れ、経験している- 事業ドメインの知識を持っている- 対人スキルを持っている

ソフトウェアアーキテクトに求められる8つの役割

# アーキテクトに期待される8つの役割 与えられる役割や肩書き、職務に関係なく、ソフトウェアアーキテクトには次の8つの役割が期待される - アーキテクチャ決定を下す - アーキテクチャを継続的に分析する - 最新のトレンドを把握し続ける - 決定の遵守を徹底する - 多様なものに触れ、経験している - 事業ドメインの知識を持っている - 対人スキルを持っている
## アーキテクチャ決定を下す
**アーキテクトにはチームや部門、あるいは企業全体の技術的な決定を導くために使用されるアーキテクチャ決定や設計指針を定義することが期待されている。** つまり、 https://techblog.short-tips.info/inhouse_se/1000software_arch.md ここに書いてあるアーキテクト全てだ。
## アーキテクチャを継続的に分析する
**アーキテクトには、アーキテクチャや現在の技術環境を継続的に分析し、その上で改善策を提案することが期待される。** アーキテクトには、3年以上に定義されたアーキテクトが今日時点でどれくらい持続されているかを、ビジネス、技術の二つの視点から評価することを期待されている。 **既存のアーキテクチャを継続的に分析することにエネルギーを注いでいるアーキテクトは少ない。**その結果、ほとんどのアーキテクチャは構造的崩壊を起こしてしまっている。 **構造的崩壊の結果、開発者がコーディングや設計を変更していく中で、パフォーマンスや可能性、スケーラビリティといったアーキテクチャ特性に影響が出てしまう。** アーキテクトが継続的に分析し忘れてしまいがちなものに、テストやリリースのための環境がある。 ユニットテストの通過率やCICDツールの活用、レビューやドキュメントの有無などは、必ずチェックしなければならない。
## 最新のトレンドを把握し続ける
**アーキテクトには、最新の技術や業界の動向を把握しつづけることが求められる** なぜなら、アーキテクトが下す判断は一定期間変更が難しいものがほとんどであるからだ。 主要な業界の動向を理解し、それに沿うことはアーキテクトが見据えた適切な判断を下すのに役に立つ。
## 決定の遵守を徹底してもらう
**アーキテクトには、アーキテクチャ決定や設計指針の遵守を徹底することが期待される** - 具体例:レイヤードアーキテクチャの場合 レイヤードアーキテクチャは技術的な側面でいくつかの層に役割を分担するモノシリックなアーキテクチャだ この場合、レイヤードアーキテクチャでのデータベースアクセスをビジネス層とサービス層のみに限定する。 しかしながら、ユーザーインターフェースの開発者がパフォーマンス上の理由からデータベースにアクセスしようとした場合、 レイヤードアーキテクチャの規約から違反が発生してしまう。 その後、アプリケーションやシステムはアーキテクチャの特性という面で期待に応えられなくなってしまう。 - 決定の遵守とは何か つまるところ、**アーキテクトが定義し文書化し伝達したアーキテクチャ決定や基本方針に開発チームがしたがっているかを、アーキテクトが継続的に検証することが求められるのである。**
## さまざまなものに触れ、経験している
**アーキテクトには、さまざまな技術、フレームワーク、プラットフォーム、環境に触れていることが求められる** 少なくとも、さまざまな技術に親しんでいなければならないという期待だ。 というのも、今日ほとんどの環境は異種混合のものとなっているからだ。 この期待は開発者に求められるものと同じではなく、**一種類のキャッシュソフトウェアの専門家であることよりも、10修理のキャッシュソフトウェアそれぞれの長所と短所をよく捉えていることが価値がある** Webフレームワークについても、それぞれの長所と短所、言語などを把握しておくほうが良い。
## 事業ドメインの知識を持っている
**アーキテクトには、事業ドメインに関する一定の専門知識が求められる** 事業ドメインの知識がなければ、システムが満たすべきアーキテクチャ特性を設定できず、ビジネス要件を満たす効果的なアーキテクチャを設計できない。 大手金融機関で働いていながら、平均方向性指数や社交契約、金利上昇などの一般的な金融用語を理解していないアーキテクトを想像してみると まずコミュニケーションの点で躓くだろう。 title:ソフトウェアアーキテクトに求められる8つの役割 description:与えられる役割や肩書き、職務に関係なく、ソフトウェアアーキテクトには次の8つの役割が期待される- アーキテクチャ決定を下す- アーキテクチャを継続的に分析する- 最新のトレンドを把握し続ける- 決定の遵守を徹底する- 多様なものに触れ、経験している- 事業ドメインの知識を持っている- 対人スキルを持っている img:https://s3.amazonaws.com/xmindshare/preview/2R2h-wDFCWcM-45469.png category_script:True