どのようにすればプログラムを早く作れるのか。
どうすれば保守性が高いプログラムを作れるのか。
SEになり始めたときはこのような疑問がよく出てきました。
今回はこれからSEになる方・目指している方にプログラムを作るために
必要だと思うことを書いていきたいと思います。
なぜそのようにしないといけないかわかりやすく書きますので、
ぜひ最後まで読んでみてください(^^)
データ(業務)を理解すべき
大規模なシステムを構築するとなったときに一番初めに実施することは、
「データ(お客様の業務)を理解してください。」
いきなり設計書を見ながらプログラミングする行為はNGです。
そもそもデータを理解しない限りはプログラムを作ることはできません。
(もちろん簡単なマクロ程度であれば、お客様のお話を聞いてすぐに作ればよいです。)
かなり強調して書かせていただきましたが、
なぜいきなりプログラムを作ることがNGでしょうか。
筆者が経験してきたことから理由を出すと、
- データの流れが理解できないとプログラムを作ることが目的になる。
- 大量に格納されたデータからどのデータが最適か判断できない。
- イメージ(画面など)がつかない。
ざっくり挙げると上記の内容になります。
特に理解しておいていただきたいことは、
「システムを作ることが目的とならないようにすることです。」
どの作業でも共通して言えることですが、
何か夢中になると初めに設定した目標が頭から離れることばかりではないでしょうか。
システムを作ることを目的にすると、
そのシステムがお客様のニーズに合っていなかったりし、
最終的に使ってもらえなくなる可能性があります。
なのでお客様の業務内容を理解し、
どのようなシステムを取り入れたらお客様の業務が楽になるのかを考える必要があるからです。
先人の知恵をフル活用せよ
プログラムを一からすべて作ることが正
という意見を真っ向から否定します。
なぜ一から作ることがよくないのでしょうか。
それは先人が多大なる知恵を残してくれているからです。
皆さん困ったときはどうしてますか?
大半の方がネットを通じ、自分の知りたいことを調べるのではないでしょうか。
それと同じようにプログラムもネットで調べればある程度の書き方がわかりますし、
複数のシステムが管理されていれば過去のソースコードを参考にすることできます。
一番効率的なのは「今動いているプログラムを参考にする」ことです。
一つ一つのプログラムを部品だと思い、
最終的な成果物に対し組み合わせてプログラムを作ることをイメージしましょう。
悩むと考えるは違う!!!
私はOJTという形で後輩の面倒を見ているのですが、
「この子は今悩んでいるのか・考えているのかどちらだろう」
とよく感じることがあります。
皆さん「悩む」と「考える」の違いはわかりますか?
筆者が考える違いは以下の通りです。
悩む:考えているフリ。答えが見つからい思考
考える:答えに向かう道筋を見つけようとする思考。
簡単に言うと、
その考え方で答えに近づくことができるかどうかということです。
ただぼーっとしているだけでは時間も無駄になりますし、
無駄な質問をすることにより質問された側の時間もとってしまいます。
初めからプログラムがバンバンかける人は少ないですし、
SEになりたての人はどんどん質問をすべきです。
それが方向性の確認であったも問題ありません。
一番悪いこととしては、悩んで生む出した案で間違った方向に進むことです。
まとめ
- データの理解
- 先人の知恵の活用
- 悩むのではなく考えろ
上記の三つに対して、自分の考えを書かせていただきました。
もしかするとSEだけではなくどのような仕事にも役に立つ情報かもしれません。
自分の行動を見直す機会は日々あります。
一日でも早く自分の行動を見つめなおし、仕事に携わってみてはいかがでしょうか(^^)
コメント