この記事では、業務アプリケーションを設計するときに大事なことについて書いてみたいと思います。
私は2020年で業務アプリケーションのシステムエンジニア歴11年目になります。6年間は社内SEとしてシステム開発をしていますが、基本的な設計スキルを身につけていれば応用が効くと思います。
1. 業務フロー図を作成して、業務の流れを理解しよう
業務アプリケーションですので、何かの業務を行うシステムを構築しようとしていることは間違いありません。
そのため、そのシステムの裏側には業務をしている人間が必ず居ます。
この業務を理解していないと、使えないシステムが出来上がってしまう危険性があります。
業務内容をドキュメント化するのに1番手っ取り早いのは、業務フロー図を書くことです。
- どこの部門が、どんな作業をするか
- 作業するとき、何がインプットになっているか
- その作業をした結果、どんなアウトプットがあるか
- そのアウトプットは、どこにインプットされるのか
- システムと作業はどのように関連があるか
業務フロー図の登場人物は、だいたい以下のとおりです。
- 業務部門
- システム
- 取引先などの他社、外部組織
会社は、部門もシステムも取引先も複数存在すると思います。対象が多くなれば多くなるほど、複雑性が増していきます。
2. システムが出力して担当者が目にするモノをまとめよう
システムが出力して、担当者が目にするモノ、それは帳票やラベルやデータ、画面に表示される情報など、たくさんあります。
これらは外部設計になります。また業務に直結する情報になりますので、担当者とよくよく話しをしながら設計していく必要があります。
業務システムの1番大事なところは、正しいアウトプットを業務担当者や他システムに連携できるかどうか、です。
帳票設計
帳票であれば、印字項目と編集条件、出力タイミング、再発行可否、これらが設計のメインになります。
紙に印刷するのか、電子帳票としてサーバーに出力するか、PDFなどのファイル出力にするのかも検討しましょう。
画面設計
画面設計で必要なことは、表示する内容だけでなく、ボタンをクリックした場合にどのような動作するか、データの更新を許可するかどうかなど、たくさんあります。
画面設計では、目的を明確にしておくと設計しやすくなります。データ参照のみの画面、既存データの更新のみ許可する画面、新しくデータを新規作成する画面、などです。
また、PC画面が必要なプログラムはデータ照会/更新系だけでなく、データ出力系、ステータス更新系など様々です。
業務フロー図に則り、必要な機能を必要な分だけ設計・構築しましょう。
3. システム間連携インタフェースを設計しよう
業務システムは複数存在するのが一般的です。ERPのような基幹業務システムを柱とし、EDIやデータウェアハウス、その他業務システムなどが構築されているパターンが多いと思います。
案件によっては1つのシステム内で留まる改修もあります、複数システム跨って改修が必要になる案件もあります。
他システムへデータ連携が必要になる場合、インタフェース設計を行いましょう。
インタフェースは、システム間でデータを受け渡す役割があります。CSVであったりテキストファイルであったり、データ形式は様々ですが、インタフェース設計に
不具合があると、手戻りが大きくなります。入念に設計しておきましょう。
4. 最後に
業務システムの設計は、業務知識が豊富にあるほど有利です。また、大規模システムを構築した経験も有利に働きます。大規模システムであれば、
システムが複数存在してインタフェース設計が必要になったり、複数部門が密接に連携して作業内容や帳票も膨大になるためです。
大規模システムの設計経験があれば、小規模のシステムにおいてお十分に高い品質を保った設計ができます。
コメント