業務モデリングおよびシステム開発とは

以下は当記事に関連する動画です。本動画に関連する動画はすべてニコニコチャンネルにて閲覧可能です。
https://ch.nicovideo.jp/ai-light

1.はじめに

今回はシステム設計及び業務モデリングということについてご説明をさせていただきたいと思います。

初学者の方でしたら、システムを開発していくということは、プログラミングを作っていくということのみを思い浮かべるかもしれません。例えば、数百人のシステムエンジニアが集まって制作するような大規模なシステム開発を想定した時、数百人がめいめいにプログラムを作成していっても、とても完成するような気がしないと思います。各システムエンジニアにどの部分のプログラム制作をお願いするかだとか、各プログラム間の連携をどうするかなど、プログラムを制作する前に決めておかなくてはなりません。

具体的には、まず最初にシステムの全体構成を考えます。次に各構成毎に設計書を制作していきます。設計書が出来上がれば、設計書に基づいてプログラミングの内容を考えてコーディングを行っていくといった具合です。つまりは、全体から少しずつ機能をブレイクダウン(細分化)していって、システムを作っていくということが必要になるというわけです。その中で今回はシステム設計を行っていく部分に焦点をあわせたいと思います。システム設計は今の現状の業務ないし理想的な業務内容などからシステムの流れを作成していきますが、今回はその部分についてご説明をさせていただきたいと思います。システム設計と業務モデリングはほぼ同義語ですが、下記の自治体研修の教材を参考にさせていただいております。


出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf


2.業務モデリングとは

業務モデリングとは何でしょうか。そもそも、モデリングとは「ある事象の抽象化された概念とか図式、あるいは数理モデルを作るプロセス」と説明されます。もう少し具体的にいうと「ある業務処理」をシステム化しようとしたときに、業務の流れがどのようになっているのかということを図式化してまとめるという作業をモデリングと言います。下図では、業務モデリングを「図や表等でものごとを単純化して表現したもの」と説明されています。ただし、「単純化して」という部分に関しては、あくまでもこの先にはシステムを作っていくという前提がありますから、システムを制作する中で必要な情報を抽出して、まとめていく必要があるわけです。


出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

システムの開発者は、必ずしも業務に精通していないときがあります。というか、むしろ精通していないことの方が多いです。例えば、ある会社の業務をシステム化するプロジェクトに、システム会社として参画したケースを考えた時、当然その会社の業務が具体的にどういった流れになっているかはよく分かりません。そのため、業務の流れを理解するために内容をヒアリングして、業務の流れという極めて複雑なものを、システム化に必要な要素を抽出し、単純化して、図としてまとめていくわけです。

システムの設計段階では、システムのポイントとなるところをシステム開発者側とユーザー企業側で話をしないといけません。しかし、ユーザー企業側がシステムに精通していなければ何を説明していいかわからないということになります。ところが、システム開発者側はシステムには精通していますが、業務には精通していないので、お互いに意見がかみ合わなかったりすることがままあります。そのため、システム設計をシステム開発会社に丸投げしないで、ある程度自分たちで考えてシステム設計内容を纏めて、その纏めたものを開発会社に説明しようというのが、恐らくこの自治体CIO育成研修の主旨じゃないかなと思います。確かにユーザー企業側である程度こういった知識があると非常に話がしやすくなると思います。

3.業務モデリングの手法

システム設計の中で業務の処理の流れを整理していくときにどのように行っていくかということについて説明をさせていただきたいと思います。業務モデリングの中で使う手法というのは色々ありますが、主によく使うものとして、「DFD」と「ER図」というモデルと、「UML」というものがあります。


出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

「DFD」という手法は、これは随分昔からあって、単純で有効なモデルであり、かつ、理解もしやすいということで、昔からDFDはよく使われてきました。今も良く使われていると思います。

UMLというのは、最近といってもここ10年20年前から使用されるようになってきています。10年20年前は最近とは言わないかもしれませんが・・・。最近のプログラム言語は、オブジェクト指向が主流となってきており、UMLはオブジェクト指向に大変マッチしたモデリング手法なので、ここ最近はモデリング手法にUMLを採用するという企業は結構多いのではないかと思います。

今回は業務モデリングするという中で、主にDFDとER図、UML、こんなあたりについて解説をしていきます。

4.業務モデリング手法はなぜ必要か

そもそも、なぜモデリング手法が必要なのでしょうか?システムを開発する中では、いきなりプログラムを行っていくことはほとんどなく、ある程度の設計書を作っていきます。プログラミングが出来れば設計書は不要ではないか、という疑問がわきますが、一番初めに記載した通り、システム開発というのは、大前提として多人数で制作作業を行っていくということがあります。また、ある企業の中では、複数のシステムが稼働している場合があり、場合によっては複数のシステム間で連携を取って稼働させたいというニーズも当然出てきます。

したがって、一人でシステムを制作していくのでしたら、設計書は不要かもしれません。ただし、一人でシステムを制作していく場合でもシステムを誰かから受託して行っているのでしたら、相手さんへの確認資料として、ある程度の資料は作っておきたいですね。

そもそもシステム開発は多人数でやっているという前提がありますので、そこでそれぞれがめいめいに作業していると、てんでバラバラになってしまうということがあります。その中で重要なことは作業を標準化するということです。標準化とは均一化のことで、放っておくと、バラバラになってしまう作業を均一化して、作業結果の品質のばらつきを抑えていくことです。


出典:http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/local_support/pdf/cio_text_ps_2-1.pdf

多人数で仕事をしていくことを前提とするとシステム開発の中の設計の工程や開発の工程では作業を「標準化」すること、すなわちやり方を統一化・均一化するということが非常に重要になってきます。それは、設計の工程に限った話ではありません。プログラミングの工程でもその考え方は重要になってきます。てんでバラバラにプログラミングを作っていると、例えば、Aさんが作ったプログラムをBさんが理解できないという話になってくると厄介です。そういう意味で「標準化」というキーワードが結構重要になってくるわけです。

5.システム開発の難しさ

システムが完成すれば使う側としてはシステムが勝手に計算してくれるので、作業がオートメーション化されますが、「システム開発」という作業は、決してオートメーション化される作業ではなく、かなりマンパワーが必要な作業です。

話は変わりますが「開発」という言葉と「製造」という言葉はどのような違いがあるのでしょうか?システムを制作していくことを「システム開発」といいますが、「システム製造」とは言いません。ちなみに「システム製造」と言ってしまうとそれはプログラミングのことを指します。ここでは下図の通りに「企画」と「製造」と「開発」がどう違うのかということが説明されていましたので、ご参考にしていただければと思います。


出典:https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12149673442

ここに出てくる開発というのは「企画で考えた新製品を実際に作って形にする」ということです。下図の説明では新商品を工場で作るための製造法とかも併せて考えたりもします、ということも説明されています。


出典:https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12149673442

つまり製造業の中でいう開発というのは、製造工程にのせるということを考える段階が該当します。製造というのは与えられたやり方でモノをつくっていくという段階です。つまり、ある程度、製造段階では作業がルーチン化します。ところが、システム開発という作業は決してルーチン化(定型化)されるような作業ではありません。定型的な作業ではありませんので、バラバラに作業を進めていくと全体のつじつまが合わなくなって、システムが段々とおかしくなっていってしまいます。そこでなんとか統一感をもたせてやっていくことが重要となってくる訳です。

ということで、システム開発というのはその場その場のプロジェクトごとに違いがあって、それにも関わらずそれぞれのプロジェクト間とか1つのプロジェクトの中で、それぞれの担当者で息が合うというか内容が統一されている必要があります。そういう難しさが根本的なシステム開発の難しさではないかと思います。


弊社は、主に中小企業様向けの業務システム開発ホームページ制作パソコンサポートコンサルティングなど、ITに関する様々なサービスを格安で提供しております。
特に小規模な業務システム開発の分野では、主にAccess(アクセス)を利用した柔軟で効率的な開発を得意としており、関西でダントツの実績があります。

業務システム開発に関しては、以下のような内容で対応しております。
・顧客管理などの単機能なシステムは20万円~50万円が多い。
・受注から入金まで業務全体システムで100万円~350万円ぐらいが多い。
・Access(アクセス)-SQLserverで大規模システム開発は350万円~1500万円が多い。

詳細は、Access(アクセス)、Excel(エクセル)、WEBサイト製作による小規模システム開発のページをご参考ください。

大阪商工会議所からの推薦を受けて、中小企業庁運営の中小企業支援事業に専門家として登録されました。
通称ミラサポ。3回まで無料でのコンサルティングが可能です。ご興味がある方はご連絡ください。
https://www.mirasapo.jp/


(近畿大学にて非常勤講師も務めたバリバリの技術屋が経営する会社)

Access(アクセス)Excel(エクセル)SQL server バーコード Webシステムを使った業務システムのシステム開発の無料相談を受付中

株式会社 アイライト 担当:内藤 響(Naito Ko)
〒550-0005 大阪市西区西本町1丁目5番9号 日清ビル 5F
(四つ橋線 本町駅 24番出口すぐ)
まずは、メール・電話でご相談ください。
TEL : (06) 6599-8890 E-mail : info@ai-light.com
お電話が混んでいる場合が多いので、つながりにくい場合は
TEL : (06) 6535-5117までお願いします。


株式会社アイライト公式HP
https://www.ai-light.com/
(Access・Excelでシステム開発会社を探されている法人様はこちら)

Access・Excelに関する情報を掲載(Access・Excel倶楽部)
https://www.ai-light.com/accessclub/

ITでお困りのことがございましたら、まずはご相談(コンサルティング)
https://www.ai-light.com/itconsulting.html

格安ホームページ制作所
https://www.ai-light.com/hp2

YouTubeチャンネル(無料動画配信中)
https://www.youtube.com/user/ailightcom

ニコニコチャンネル(月額固定で見放題)
http://ch.nicovideo.jp/ai-light