【システムエンジニア採用強化中ブログ】~システム開発は思いやりを持って~
みなさま、こんにちは。株式会社CREARAIZE SE兼人事担当のInoueです。
最近は理解していたつもりのものが、実体験することで本当の意味が分かるようになってきました。🍧
知識と経験が結びつく感覚!自分でも成長を感じています。😊
ドキュメントに残そう
最近、また1つ社長の言っていることが分かるようになってきました。
社長は常々、開発の心得として「開発する時はバッグボーン(経緯)を理解することが大切」で、後々のことを考えて「しっかりとドキュメントを残すことが一番!」と言われています。
当初、私には社長の言葉がピンと来ていませんでした。
ソースにコメントはいらないの?
ソースコードにコメントを書くことが一般的だと思います。
また、入門者などにもコメント残すことと書かれていることが多いです。
コメントを残すとは、開発した人がソースコードに説明文を入れることです。
よく書くコメントは・・・
・TODO:あとでやること
・FIXME:既知の不具合があるコードへの警告
・HACK:キレイに書くための解決策
・問題があるときなどのインフォメーション
・機能の説明
・変数の説明
などなどです。
そんな私も何となく、コメントを書いていました。
それは私がシステムエンジニアになりたての頃、先輩からソースにコメントを書くように教わっていたんです。その代わりにあまりドキュメントを残す文化がありませんでした。
私が作成したソースをクレアライズの先輩がレビューした際に、私が書いたコメントに対して、先輩は、「気持ちは分かる。けど、そのコメントはあまり意味がないよね!」と話がありました。
どういうことでしょうか・・・🙄
先輩からの説明は、「どんな処理をしているのか」はソースを読めばわかるし、「変数の意味」は、意味が分かるような変数名を付ければ良いとのことでした。
コメントに頼るのではなく、ソースコードで意味が伝わるように書き方を工夫することでコメントが不要になるとともに、ソース全体の可読性も上がるんですね。
そんなクレアライズでの新人研修では、ソースへのコメントはなるべく控えて、分かりやすいソースを書くこと、そしてドキュメントを残すことを推奨しています。
なぜ推奨なのかと言うと、なるべくコメントは書かない方が良いんですが、難しい処理など場合によっては、コメントが必要な時もあるんです。
バックボーン(経緯)を書こう!
そしてここからが本題です。
ソースコードからは、処理は読み取れてもバックボーンは読み取れません。
だからと言って、ソースにコメントをしっかり書いてしまうと、ソースが肥大化してしまい、管理しづらくなるのであまりおススメできません。
そのため大事なのはソースにコメントを残すのではなく、設計書などドキュメントに正しく残すことなんです。
バックボーンとは、「なぜそのような処理になったのか」や「あえてやっていないこと」などの開発の背景やストーリーを残しておくことが重要です。
バックボーンは、他のメンバーに聞けば必ず分かると言いう訳でもないんです。規模の大きいプロジェクトや保守開発などのプロジェクトは長期間に及びます。仕様や処理を決めた担当者が移動になることは良くあります。
そうなると、後で見返したときに何故そのようになったのかが分からなくなってしまいます。
先輩が言うには、ここで気を付けるのは、「必ずこうしなければいけないってことではないよ!」ということでした。
期間が長いプロジェクトだと、メンバーがそのやり方に慣れている場合など、うまく踏襲しながらプロジェクトを進めることも重要なのだそうです。
整理すると・・・
・処理が分かりやすいソースを書く
・バックボーンが分かるようにドキュメントに残す
です。
今の自分の作業のみに集中するのではなく、後々のことも考えて業務を行う。自分のためだけでなく、他のメンバーにも分かりやすいものを残す。
未来を想像して他のメンバーのことも考えて業務を遂行する。
そんな優しさが大切ですね😀
まとめ
みなさま、いかがでしたか?
ソースの書き方を工夫して、コメントはドキュメントに纏めると良いんですね。今回先輩に教わったことで、持続可能なプロジェクトを心がけていこうと思いました😊
ここまで読んでいただきありがとうございました!
また次回も読んでいただけると嬉しいです🎵
-------------------------------------------------------
弊社では、
新卒の方、転職活動中の方、検討中の方含め
経験者未経験者問わず積極採用中!
あなたのことを聞かせて下さい!
https://en-gage.net/crearaizeinfo_career/
-------------------------------------------------------
リンク
弊社ホームページ:
弊社ブログ:
弊社Facebook:
弊社Twitter:
投稿者 InoueのTwitter: