Take it easy.

SIerの話を中心に気になったこと等書いていくつもり。



SIerって何?SIerとは?

SIer = えすあいあー

って読んでます。
System Integratorの略。

詳細はこちら↓
wikipedia:システムインテグレーター



情報システム作ってる会社のことをひっくるめてこう呼んでるわけですね。

情報システムってのがピンとこない人のために例を挙げると・・・

  • Webから飛行機予約したり
  • ATM等の専用端末からお金預けたり残高見たり
  • オンラインショッピングとか
  • 企業内ネットワーク限定で動く、業務用の専用システムとか

まぁそんな感じ。

JALとかamazonとかBtoC(企業対個人)のシステムなんかはイメージしやすいのかと思います。


具体的に何してるのか

で、SIerはその情報システムを作るために何してるのかって話。

まーここは会社によりけりなところがありますが、情報システムを作るために何をする必要があるのかって話ですね。


大体以下のような感じ。

システム化の検討

 情報システムといったらプログラミングで作ることを想定されている方もいると思いますが、
 いきなり作りません。その前に何がしたいか、そのために何が必要かって部分についての話をします。

  1. お客さんの課題の整理
    • 今年度新しく工場作るけどシステム無い
    • モノの管理を紙の台帳でやっててミスが多いし手間もかかる、発注に支障をきたしてる
    • 在庫無くなってから発注してるから注文の対応が遅い
  2. 課題に対する解決策を考える
    • 手間がかかるなら人を増やすとか
    • 早めに余裕をもって、在庫確認のタイミングで発注しとくとか
    • バーコードリーダー導入して在庫管理システム作って発注システムも作って連携させて業務のやり方も変えるとか

必ずしもIT化が目的ではないです。
コスト、効果、実現可能性などをベースに考えます。


ここちゃんとしないと、システム作ったはいいけどあまり効果ないとか、なんかよく分からんことになっちゃうわけです。

ITってのは自動化とか効率化ってのは得意領域なので、大体システム化しようってなります。
で、以下の流れにいきつきます。

実現可能性の検討、見積&開発範囲の定義

  1. どんなシステムを作るか
    • 在庫管理するためにどんな画面、機能が必要か
    • 誰が使うのか、アクセス制限とか持たせるか
    • どんなデータが必要か
    • どんなハードウェア(サーバとか業務用端末とかNW機器とか)が必要か
  2. どうやって作るか
  3. 誰(どの会社、どの組織)が作るか
    • 作るためにどれだけの期間が必要か
    • どんな人が、何人、いつからいつまで働いてもらうか(いわゆる人月計算)

この辺で一回、お金(人件費とか機器、ソフト購入費)がどれくらい必要か見積りします。
やりたいこと全部システム化しようとなったとき、思いの外費用がかかったりするので。
ここまでの整理がきちんとできていれば、一気に全部作らなくても、この部分は後で案件化して作ればいいよねとかうまく整理できたりします。
うまくできていなかったら開発側に認識ない機能が突如出てきて不幸な目に遭う可能性が上がります。


開発

こっからやっと開発。中小規模の会社なんかは前段の部分を他の会社にやってもらって、開発以後のみ受注してやってるとこも多いです。

開発の流れとしては
設計→開発→テスト→本番移行準備→本番移行
って感じになります。

  • 画面作るなら部品どんなのをどこに置くか、ボタン押したらどうなるか
  • 毎朝〇時に自動起動する機能を作るなら、起動する条件は時間だけなのか、どんなデータが必要かとか

やることはとにかく具体化です。
また、お客さんやら発注元に聞かないとわからないこと聞いたり、
画面これでどうでしょうとか打ち合わせたり、開発の進捗はこんな状態ですとか資料作ったりしながら仕事を進めるわけですね。


んで作ったものが本当に動くのかテストします。
この辺でバグが大量に出て収束しないと開発者にとっては悲しいことが起きます。


で、お客様と一緒に機能確認してもらう等して納品できたら後々の話もします。

  • 今後機能拡張したくなったらうちに言ってね!とか
  • 他に課題とかない?とか


そんな感じで情報システムを作っていってるわけです。



おわりに


システム作るって言ってもいろいろやる必要があるってことですねー・・
それこそでかいシステムは上記の業務を1年以上かけてやることもざらですので。

ただ、かなり上流工程からやってる会社に入ればやれることの幅も広い分それなりの自由度を持って仕事ができるという点が特徴です。
(個人的には開発とかテストだけやってる会社はお勧めできません)