富士通がAIでプログラムソースコードの診断を始めると聞いて

富士通がAIを使って品質の悪いソースコードの抽出を始めるらしい

一昨日、日頃から読んでいるITプロに興味深い記事が上がっていた。

「できの悪いソースコードをAIで発見、富士通が不採算案件の抑制へ」

どうやら富士通がAIを使って、ソースコードを深層学習させ、品質の悪いソースコードを抽出するといった取り組みを始めるらしい。

非常に面白いと思う。これまで私も多くのプロジェクトを経験しプログラムを作ったり、レビューしたりしてきたが、実に面倒な作業だった。プログラミング言語が嫌いではないのだが、プロジェクトの様々な管理作業や膨大な調整業務を抱えながら、真剣にソースコードをレビューすることは不可能に近かった。

結果的に、ポイントを絞ったレビューとなり、見落としたところはテストで拾うという方針でいた。テストで拾えなければそのまま本番へ。なんてこともよくある話。それが少しでも解決すると思うと嬉しい限り。

ソースが読めないシステムエンジニアにはもってこい

 システムエンジニアの中にはソースコードが読めない、プログラミングが出来ない人間が意外と存在する。

 元々文系で入社し、プログラミング経験のないまま上流工程を担当する大手ベンダーの人間なんかがそうだ。
 そういった人たちにはうってつけのツールになると思う。

 ただますます技術力のないシステムエンジニアを増やしかねませんが。




そもそも良いソースコードなんてあるのか疑問

 ソースコードの診断にAIを活用することは大賛成。これでプロジェクト推進の業務時間が減ったり品質が上がればいいと思う。

 ただ良いソースとは何を基準に良いものとされるのだろうか。人が読みやすいソースでもコンピュータからすると効率が悪かったりすることはあると思う。コードの書き方だけでなく、コメントの書き方一つでも可読性は大きく変わってくる。

 保守性の面もそうだと思う。処理が共通化されていて1行だけの修正で済むことを良いとするのか。ただその場合はその共通化された処理を通る全てのプログラムの検証が必要となる。こういった場合に保守性が高いと評価するのか、低いと評価するのか。

 やはり何か物差しとなるもの、基準となる考えが必要になってきて、それによって判別されるのだろうか。

 どのようなものになるのか非常に興味がある。そしてAIソースコード診断、ぜひ試してみたいシステムが山ほどある(笑)