SEの仕事の流れ(前編)

【1章-1】SEの仕事の流れ(前編)

SE(システムエンジニア)とはお客様の希望をコンピュータを使って叶える仕事です。
もう少しつっこめば「お客様の要求を実現する『システム』を作る」仕事です。

システムと聞くと皆さんものすごいロボみたいなものを想像する人がいるかもしれませんが、 皆さんがこのホームページを見ているInternetExplorerのような「ブラウザ」も「ホームページ(HTMLファイル)がみたい」という要求を実現させた『システム』です。
やりたいことによっていろいろな規模のシステムがあるわけですね。

さて、そんなコンピュータシステムを作るSEの仕事の流れは 大きく分けて下のようになります。


※このように、仕事の流れの各段階を「工程」と呼んでいます。

ただし「工程」の区切り方は会社やチームによって異なっています。
「フェーズ」とか「ステップ」とかだったりしますね。

それではさっそく
各工程の仕事の内容を簡単に紹介しましょう。

以降、このようなSEの仕事を仕事の流れ、必要な力、そして
それを身につけるための教育という観点で紹介していきたいと思います。

1.要求分析(ヒアリング)

お客様の「やりたいこと」「やって欲しいこと」を逃さず聞き出して、「何を作ったらいいのか?」をはっきりさせます。
そしてそのシステムを作るのに、どれくらいの人数が必要で、いくらくらいで売るのがいいのかを考えます。

建築に例えると、お客様の「カラオケをやりたいなぁ」なんて願望に対して、「どういった形でカラオケをしたいのですか?」
と聞きます。
その結果、もし「いつでもできるように自宅にカラオケ機材を入れたい」と要望がくれば、「その要望でしたら、カラオケ機材を入れるだけでは、周囲へ騒音による迷惑がかかるので出来ません。
しかし地下に防音付きの部屋を作ればできますよ。
それなら、3人の大工が1週間がんばれば作れます。」
と考える工程です。

このようにお客様と話をして
「何を望んでいるのか?」「それは実現可能なのか?」、「具体的には何を作ればよいのか?」
を把握するのがSEの仕事の最初のステップです。

実際の要件分析では、資料を調べ、お客様との打ち合わせを何度も行い、お客様のニーズを漏れなく拾い上げます。

これら調査や打ち合わせの結果は、ドキュメントにまとめ、お客様と自分たちの考え方にずれがないようにします。

さっきの「カラオケルーム」だって、友達数人と歌うだけではなく、
「50人は入れるようにしたい!!」
っていうお客様だっているかもしれないですよね。
私たちが「これはこうするのが当たり前だよ」と思っていることでも、案外食い違うものです。

またお客様自身でも、自分の「やりたいこと」がはっきりしていないことは多いものです。
それを見つけてはっきりさせてあげるのもSEの重要な仕事です。
お客様の言うとおりにモノを作っているだけでもダメなのですね。

このようにお客様のニーズをしっかり捉えるというこの工程が、SEの仕事では一番難易度が高いと思います。

2.設計(デザイン)

お客さんの要望を一通りまとめたら、今度はそれが実現できるようにシステムの設計をします。
建築ならば家の設計図をキチッと描く作業に相当するでしょう。
これをしっかり行わないと、実際に家を建てる大工さんたちが困ってしまうわけですね。

システム開発では、
「どういうやり方でコンピュータをコントロールするのか。」
「システムをどんな部品(分け方によって、モジュール、サブシステム、等と言います)を使ってくみ上げるのか。」
といったことを決めていきます。

実際の設計作業の仕方は仕事や人によってまちまちで、会議室で同僚とディスカッションしながら行ったり、コーヒーショップで一人で集中して考えたり、いろいろなスタイルがあるでしょう。