タグ

ブックマーク / arclamp.hatenablog.com (24)

  • 未決定を決定する - アーキテクトの考え方 - arclamp

    「アーキテクチャ設計の難しさについて」というエントリをしましたが、続きとして「未決定を決定する」という話を。 決定していないことを決める アーキテクチャは「作り方」を示すものなので作り始める前に決定している必要があります。つまり、アーキテクチャ設計はプロジェクトの最初に行います。ところが、皆さんもご存知の通りプロジェクト開始時点で全ての要件が出ることはありません。要件定義>基設計と進んで行き、さらには実装も後半になってからアーキテクチャ上で対応すべき問題が発覚することもあります(後工程で問題が発覚するというのはアジャイルでも同じことです)。 ですから、アーキテクチャ設計では「決定していないことを決める」必要があります。 どう決定していないかを決める 決定していないことの設計方法は「どう決定していないかを決める」ということです。 前回のエントリで「接続先のサーバが決まっていない」という例を

    未決定を決定する - アーキテクトの考え方 - arclamp
  • JJUG CCC 2013 Springをやってみた - arclamp

    2013年5月11日、JJUG CCC 2013 Spring(日Javaユーザーグループ クロスコミュニティカンファレンス 2013 Spring)を開催しました。朝の総会から夜の懇親会まで12時間以上、280名の方に参加いただき、無事に終了することができました。まずは講演者の皆様、参加して頂いた皆様、そして幹事会スタッフの皆様に感謝いたします。ありがとうございました。そして、エントリが遅くなってごめんなさい。 会長になってから2回目の大型イベントとなりますが、前回の反省を踏まえつつ色々と手配をしました。 講演者とのコミュニケーション 前回は連絡不徹底から「公募したのに候補に入っていない」「当日、講演者が来ない」などの事故があり、関係者には大変ご迷惑をおかけしました。今回は「公募をメールではなくフォームにする」「当日、緊急連絡先を聞く(実際には使わずにすみました)」といった形で事故を防

    JJUG CCC 2013 Springをやってみた - arclamp
  • 技術的な結合度と設計的な結合度 - arclamp

    ささっとBlogを書く訓練。 エンタープライズシステムではシステム間を疎結合に保つことが重要とされます。結合度が下がっていれば両者の依存関係は弱くなります。システムAとBがあったとして、Aが停止した場合に、それによってBが停止しない(縮退はするかも)、あるいはAの内部仕様に変更があった場合に、それによってBが仕様変更を強制されることがない、という示しています。 結合度が低ければシステムのライフサイクルをずらすことができるため、運用上も保守上も大きなメリットになります。 とはいえ、結合度が高いことでのメリットもあります。主にはコストの低下や性能の向上が見込めます。 マスタデータを共有したい場合、ファイルによるデータ交換は結合度を下げることができます。ですが、双方がファイルを入出力する仕組みを作る必要があり、かつ、連携遅延が出てしまいます。そうではなくて、直接データベースを共有するようにすれば

    技術的な結合度と設計的な結合度 - arclamp
  • 歴史から考えるアーキテクチャとマネジメント - arclamp

    ソフトウェアアーキテクチャとプロジェクトマネジメントは相互に絡み合う要素です。この関係性を歴史の流れから考えていくと面白い推測が成り立ちます。 アーキテクチャの歴史 「アーキテクチャとは」というのに定まった定義はありませんが、大枠では「システムの目的や環境を前提とし、様々な利害関係者の関心事を整合させた、システムの構成や構造」のことです。 これはもちろん「あるべき姿」です。完成されたシステムには必ず構成や構造がありますが、それが「システムの目的や環境、あるいは様々な利害関係者の関心事」と完全に合致しているとは限りません。 (ソフトウェア)アーキテクチャという言葉、あるいは(ソフトウェア)アーキテクトという用語は2000年前後から一般的になってきました。逆にいえば当時は「システムの構造や構成」と「システムの目的や環境、あるいは様々な利害関係者の関心事」の不一致があったということでしょう。 で

    歴史から考えるアーキテクチャとマネジメント - arclamp