X



【IT】ソースコードの不備をAIで見つける富士通、新しい診断ツール
■ このスレッドは過去ログ倉庫に格納されています
0001ノチラ ★垢版2017/12/26(火) 17:21:11.16ID:CAP_USER
人工知能(AI)などを活用し、システム開発プロジェクトのプロセス改革に取り組む富士通。この改革のために、2017年11月から本格活用するツールの1つが「ソース診断」だ。このツールでは、英数字や記号といった文字列の固まりであるソースコードを、テキストデータとしてではなく、画像として分析するという。

 どのような仕組みでソースコードの不備を見つけるのか。ツール活用により、開発プロセスをどう改善するのか。ツールの開発責任者である富士通アプリケーションズの森崎雅稔取締役兼ソフトウェアエンジニアリングセンター長に聞いた。

関連記事:できの悪いソースコードをAIで発見、富士通が不採算案件の抑制へ

保守性の低いコードを見逃しやすい
 ソース診断は、ソースコードのレビュー作業の効率化と精緻化を支援するツール。画像化されたソースコードを基に、AIが主に可読性を診断する。ツールで可読性が低い箇所に当たりを付け、該当箇所を集中的にレビューすることによって、レビュアーは作業の効率化と精緻化が見込める。

 ソースコードのレビュー作業を支援するツールとしては、以前からFindBugs、PMDといった静的解析ツールがある。静的解析ツールは、不具合が発生しそうな箇所や、コーディング規約を順守しているかどうか、セキュリティ上の不備がないかなどのチェックに役立つ。ただし、「人間にとっての可読性の観点は検出しにくい」と森崎氏は指摘する。テストで不具合が検出されず、コーディング規約を守っていても読みにくいコードは少なくないという。

可読性が低いコードを見過ごすと、システム稼働後の保守作業などが難しくなる。とはいえ、ツールでは見つけにくいため、目視によるレビューに頼る部分が多くなる。結果として、大規模なプログラムの場合はどうしても見過ごしが発生しやすかった。

 また、可読性を落とす原因に関する指摘も「レビュアーのセンス任せになりがちだった」(森崎氏)。レビュアーごとの重視する観点の違いによって、指摘の内容がばらつくなどの問題が生じやすかった。これらの課題にメスを入れる狙いで、森崎氏らはソース診断を開発した。

40行単位の画像で善しあしを分析
 ソース診断は、機械学習の手法の1つであるディープラーニング(深層学習)を応用している。ソースコードを画像データに変換し、それをあらかじめ約1万件の教師用データで学習させておいたモデルと照合。AIが可読性の善しあしを分析して、結果を出力する仕組みである。

 画像化に当たっては、まずキャラクターコード1文字ごとに色を付与しているという。そのうえで、色付けした1文字分を1ピクセルの画像にする。色付けによって、単純に画像化するよりも、ソースコードの「特徴」を把握しやすくしている。

AIに診断させる画像データは、40ピクセル×120ピクセル(ソースコード40行×120桁分)を基本単位とした。理由は、人間の可読性の判断に近くするためだという。「プログラマとレビュアーがPCを利用してレビューをする場合、40行程度のソースコードを画面に表示・共有して進めることが多い。そこでAIにも40行単位で可読性を診断させるようにした」(森崎氏)。

 この40行分ごとに、可読性が高い箇所を「1」、低い箇所を「0」として分析結果を出力する。可読性が低い原因としては、複雑なネスト構造や、if文やfor文の直前にコメントがあるかどうかなどを検出している。原因を分析しやすくするため、ソース診断ツールでは「複雑度」と「コメント密度」については、全体の可読性とは別にそれぞれ表示している。
以下ソース
http://itpro.nikkeibp.co.jp/atcl/column/14/346926/122501258/
0003名刺は切らしておりまして垢版2017/12/26(火) 17:29:13.55ID:WcBvM/ly
AIでもなんでもないと感じるが・・・
0005名刺は切らしておりまして垢版2017/12/26(火) 17:31:59.63ID:b0lXU8du
誰が喜ぶの?
だって、日本のソフトウェアに信頼性なんて定義されてねえんだからさ
動きゃいい奴らしかいない
0007名刺は切らしておりまして垢版2017/12/26(火) 17:36:54.40ID:5veOBzGu
1位が驚きの結果に…「美人度が高い国ランキング」トップ10
http://zxgzacbh.xyz/
0008名刺は切らしておりまして垢版2017/12/26(火) 17:50:58.85ID:6SPU/QXr
作業工数を見積もれる営業AI作れよ
文系バカ営業を救ってやれ
0009名刺は切らしておりまして垢版2017/12/26(火) 17:53:09.02ID:G60HM30Q
画像診断だとw

つまり適当にチェックするって事じゃw
0011名刺は切らしておりまして垢版2017/12/26(火) 17:58:22.87ID:udwKBhNQ
どこかのバカ上司が、これでok出ないとダメとか言って、まともなソースを糞ソースにさせるわけだ
0013名刺は切らしておりまして垢版2017/12/26(火) 17:58:37.67ID:DaRsmv4j
全面的に依存するのは危険だと思うけど、
ちょいとツールに通せば短時間で診断してくれるなら
コーディングの工程に追加すればいいよね。
軽いならIDEに組み込んで常時監視してもいい。

このツールでの評価点を上げるために変な書き方が工夫されるようなら
本末転倒だけどな。
0014名刺は切らしておりまして垢版2017/12/26(火) 17:59:38.45ID:jbzeVbWD
>>10
何色が密集しているかで測定するんだろうね。
何が書かれているかは一切見ない。
まるで富士通の品証みたいじゃないか。
0015名刺は切らしておりまして垢版2017/12/26(火) 18:04:22.39ID:d0gkknQS
これはかなり大胆なアルゴリズムだな。だが巷間言われる「特徴量まで勝手に学習」を
台無しにしているとも取れる。前処理によほど自信があるのか、実際に効果が出ているのか。
0016名刺は切らしておりまして垢版2017/12/26(火) 18:06:41.12ID:Um16OM5T
>>2
ハイワカリマシタ。

アナタハ1230カラ0103マデ、リユウナシ デヤスムノデスネ。

バグ トシテ トリケシマシタ。
0017名刺は切らしておりまして垢版2017/12/26(火) 18:08:22.83ID:Um16OM5T
>>13
実質IDEに組み込んでるツールと大して変わらないとなぜ思わないの?

40行程度の判断なんだから、プログラムやモジュール全体を見て判断なんかしていない。

要するにtypo発見ツールでしかない。

そしてそれは今もある。
0018名刺は切らしておりまして垢版2017/12/26(火) 18:10:49.49ID:d0gkknQS
>>17
>要するにtypo発見ツールでしかない。

全く違う。typo発見なら通常の言語処理を行うはず。何も分かっていないな。
0019名刺は切らしておりまして垢版2017/12/26(火) 18:13:06.19ID:4Dr77Bux
とりあえずAIって言っておけ感
はやり言葉に乗っかるだけで成功したの見たことない
0021名刺は切らしておりまして垢版2017/12/26(火) 18:23:54.67ID:d0gkknQS
>>20
>キャラクターコード1文字ごとに色を付与しているという。そのうえで、色付けした1文字分を1ピクセルの画像にする。

ということなんで全部日本語だとすぐはじかれるだろうな。
0022名刺は切らしておりまして垢版2017/12/26(火) 18:25:31.45ID:zEcVKgQr
FindBugsで十分じゃない?
0024名刺は切らしておりまして垢版2017/12/26(火) 18:27:12.84ID:RAHFgKgv
>if文やfor文の直前にコメントがあるかどうかなどを検出している。

//コメント入れないといけないのでとりあえず、
みたいなの乱立してよけい可読性落ちるだろ
0025名刺は切らしておりまして垢版2017/12/26(火) 18:28:21.91ID:J7NvbY8I
エロ画像を仕込むヤツが現れるヨカン
0026名刺は切らしておりまして垢版2017/12/26(火) 18:29:24.56ID:qiBOas0T
富士通に頼めばバグなしなるの?
0031名刺は切らしておりまして垢版2017/12/26(火) 18:33:13.33ID:F74DUqTk
AIを活用すれば無能役人や偏向記者を無くせるのにな
0032名刺は切らしておりまして垢版2017/12/26(火) 18:33:24.13ID:Um16OM5T
>>18
言語処理なんて不要だよ。

タイプのパターン登録して逸脱見てれば良い。
パターン登録を学習させるというのがこれの売りだが、正直学習より登録の方が手間が少ないと思うよ。
0036名刺は切らしておりまして垢版2017/12/26(火) 18:42:04.21ID:AwVWXHSI
この程度のことならディープラーニングいらないし
この程度のこと言われても役に立たない
0037名刺は切らしておりまして垢版2017/12/26(火) 18:43:15.69ID:3do6zRDg
プログラミングをすると
考え方がネガティブになる
0038名刺は切らしておりまして垢版2017/12/26(火) 18:46:40.62ID:ar38K7FW
Webページを
・ユーザーが選択した商品の情報
・常に表示されるメニュー
・関連商品へのリンク
で色分けしてネットショッピングのページの見易さ、有用さを数値化してくれ。
1番目の情報がページ面積の何%とか。
0039名刺は切らしておりまして垢版2017/12/26(火) 18:46:48.95ID:J7NvbY8I
>>37
ダメなケースを全部考慮しないと気が済まないからねw
0040名刺は切らしておりまして垢版2017/12/26(火) 18:48:44.62ID:Zq+ciZpA
AIが小姑化するのか
0041名刺は切らしておりまして垢版2017/12/26(火) 18:52:10.15ID:3/E4dIRG
こういうのって、わかってる人からするとマイナスにしかならないんだよね

わかってない人達が
自称管理者を名乗って
「何かをした」つもりになれる

それだけのためのツール
0044名刺は切らしておりまして垢版2017/12/26(火) 18:59:38.66ID:/IofQFuj
>>41
頭悪そ
0048名刺は切らしておりまして垢版2017/12/26(火) 19:08:56.88ID:OCMH/OOO
世の中に何の良い影響も与えてない会社っていうイメージ
0049名刺は切らしておりまして垢版2017/12/26(火) 19:09:41.31ID:0kNUmQkr
念じるか希望を述べるだけで
最適アルゴリズムとサンプルコードのサイトを表示する
AIとかにして
最終的にしたいことを云うだけで勝手に実装してくれる
統合開発環境用AIを作ってw
0050名刺は切らしておりまして垢版2017/12/26(火) 19:10:20.76ID:Nps3Bhpx
警告件数が多すぎて「動いてるからいいや」って嫌気がさすパターンだわ
0052名刺は切らしておりまして垢版2017/12/26(火) 19:11:51.18ID:rScVk/Zi
人工知能が機能や文脈を理解できない以上無意味
逆にそれができるなら自動でプログラム組める
0053名刺は切らしておりまして垢版2017/12/26(火) 19:12:21.26ID:0kNUmQkr
用件定義からして矛盾、無駄を弾き出して
IT化すべきか否かも判断してくれれば
営業から必要なくなるw
0054名刺は切らしておりまして垢版2017/12/26(火) 19:13:11.88ID:pW2IGFZc
富士通は昔からソース解析ツール出してたし、正統進化かね。
0056名刺は切らしておりまして垢版2017/12/26(火) 19:19:12.90ID:/IofQFuj
>>46
デバックツールの利点難点を言ってみ?
0059名刺は切らしておりまして垢版2017/12/26(火) 19:26:02.02ID:udwKBhNQ
>>56
>デバックツールの利点難点を言ってみ?
横レスだけど、マウントとってdisるだけの奴って自分から意見いわないで相手に言わせてから粗探しするよな
性格悪い
0063名刺は切らしておりまして垢版2017/12/26(火) 19:37:05.67ID:Y6e1csh9
診断をAIでできるんなら、ソースの記述そのものをAIにやらせろよ。
0064名刺は切らしておりまして垢版2017/12/26(火) 19:37:18.84ID:eriDK7F3
AI活用は賛成だが富士通と聞くと胡散臭い
自分とこのプロジェクトの管理も出来ないデスマ大好きプロパーを先に何とかしろ
0065名刺は切らしておりまして垢版2017/12/26(火) 19:42:00.91ID:GyQFuItt
経営陣の不適格度診断をAIにやらせろよ
0066名刺は切らしておりまして垢版2017/12/26(火) 19:42:04.46ID:Li3Y9/kq
ここにみずほ銀行勘定系システムのソースコードがあるじゃろ
0067名刺は切らしておりまして垢版2017/12/26(火) 19:47:03.52ID:PxMnX5dg
作り直した方がマシな糞ソースが多すぎだわ。
0068名刺は切らしておりまして垢版2017/12/26(火) 19:50:40.09ID:aiZqvPdT
画像認識プログラムに傾倒して何か出来ますなアピールは最早、IT屋のインスタ映えだな
勝手にプログラム作ってくれないなら自社lint整備したほうが早いだろ
0070名刺は切らしておりまして垢版2017/12/26(火) 20:04:38.41ID:Im8EPxIv
すげーな,マーケットにリリースされてもいないツールの内容を知っていたり,
批判したり擁護したりwwww
0072名刺は切らしておりまして垢版2017/12/26(火) 20:12:33.10ID:Y6e1csh9
COBOLって、変数名を「XH558Z6」とかしちゃうんだろ。
そして変数名とその意味の照合表作って管理するんだよな。
0078名刺は切らしておりまして垢版2017/12/26(火) 21:36:07.37ID:vDKsqo4u
最初からAIで作れんの?
0079名刺は切らしておりまして垢版2017/12/26(火) 21:37:15.91ID:vDKsqo4u
>>66
あれは無事終ったんだろうか。
0081名刺は切らしておりまして垢版2017/12/26(火) 21:49:50.07ID:T45V+gbx
単なるプログラムをAIと呼ぶ風潮
0082 【東電 78.1 %】 (地震なし)垢版2017/12/26(火) 21:59:35.83ID:H4damoMK
>>1
 彡⌒ ヾ
 ( ^ω^)あんでもAI言えばいいと思っている馬鹿か

 彡⌒ ヾ
 ( ^ω^)一定のパターンに合致したのを見つけるだけだろが、ばーーーーか
0084名刺は切らしておりまして垢版2017/12/26(火) 22:10:44.41ID:2cxyBi4a
>>11
いや、これで正しいと思う。
糞ソースにするのは不具合修正で手抜きすると糞ソースになるからな。
0088名刺は切らしておりまして垢版2017/12/26(火) 22:59:00.43ID:udwKBhNQ
>>84
素晴らしいソースをわざわざ糞コードにさせられる作業が発生する可能性があるって意味で書いたんだけども
さすがに40行とかだと分割して欲しいが、分割するとわかりづらくなる場合もあるし
0090名刺は切らしておりまして垢版2017/12/27(水) 02:30:49.72ID:2W/Is1wl
AIと言えるようなもんじゃないだろこれ
本文読む限り、コード読み込んでパターンに合ってなかったらエラー吐くだけ
0091名刺は切らしておりまして垢版2017/12/27(水) 02:58:44.63ID:/MX02ZVE
その前に要求仕様の不備を指摘してくださいお願いします
誰のせいで何度も仕様がひっくり返ってスパゲッティになったと思ってるんですか
0094名刺は切らしておりまして垢版2017/12/27(水) 08:28:59.47ID:FIeiICN2
ますます社員が働かなくなるな
0095名刺は切らしておりまして垢版2017/12/27(水) 08:30:16.79ID:FIeiICN2
発注者の要求の不備は?
0096名刺は切らしておりまして垢版2017/12/27(水) 09:16:56.34ID:ozXhvERV
日本の大手電機メーカーが、こんなどこにも知能がないものをAIだと宣伝する。
こういうことをするから、ブームの終焉に拍車がかかる。
0098名刺は切らしておりまして垢版2017/12/27(水) 11:57:20.33ID:szXBftAR
単純な制御プログラムならAIで作れそうだな。
0099名刺は切らしておりまして垢版2017/12/27(水) 12:24:05.94ID:Nynmk3eL
> もう1つの理由としては米グーグルの2012年の研究発表を挙げる。大量の画像を学習させることで、ネコを識別できるようになったもので、ここからツール開発の着想を得た。

これが全てだろ
完全に素人の発想
グループのAIやってる部署に相談しなかったんだろうか
0103名刺は切らしておりまして垢版2017/12/27(水) 12:40:22.15ID:2Qfsj8sl
>>102
社員が働かないので有名な不治痛
0105名刺は切らしておりまして垢版2017/12/27(水) 12:59:45.26ID:nb4Xqq6i
妻・夫の不倫をAIで見つける新しい診断ツール
0107名刺は切らしておりまして垢版2017/12/27(水) 13:04:32.07ID:xCAN0xrm
不採算は見積のミスがほとんどなのにw
0108名刺は切らしておりまして垢版2017/12/27(水) 14:39:36.43ID:tCvrYNm6
富士通が作るツールが果たしてちゃんと動くのか?
ツールの診断ツールが必要になるな
0109名刺は切らしておりまして垢版2017/12/27(水) 14:52:59.02ID:6lLjdutB
コメントの内容まで見てないだろうなw

あと、試行錯誤して増築増築してるソースはクソなんだが、
そういうのもコメントさえまともならOKなのか?
0110名刺は切らしておりまして垢版2017/12/27(水) 17:51:44.72ID:OuZwfVJV
まずはマジでお前んとこの社員を使えるようにしろ
0113名刺は切らしておりまして垢版2017/12/27(水) 18:59:37.99ID:/eWaqvYJ
これは上からAIをソース分析に利用しろって命令がきて、
今でも使ってんだよバカヤローって言えなくて、
素人目にもディープラーニングっぽく見えるやり方で
適当にやり過ごそうとしたら、
逆に幹部の注目を集めちゃって公式発表されちゃったのかな。
0117名刺は切らしておりまして垢版2017/12/27(水) 19:46:25.88ID:k49Ou5mP
ソースコードの可読性を下げたくなくてCOBOLから逃れられない人類
0118名刺は切らしておりまして垢版2017/12/27(水) 20:00:13.58ID:qnwWc9Is
なんのことか解らんが、海上自衛隊のいじめで使ってたコードは
もともと死んだ叔父さん時代にテレビが設置されてた場所だ

なにがAIかさっぱり解らんテレビ
0119名刺は切らしておりまして垢版2017/12/27(水) 20:22:18.89ID:ROv5m2UV
>>115
プロジェクトに関わってるうちはコメントなくても平気だけど
2、3ヶ月も別のことやってから前のコード見ると
仕様とか諸々ど忘れしていることあるから
コメントは入れておくべき

異論は認める
0120名刺は切らしておりまして垢版2017/12/27(水) 20:33:44.15ID:kn6/XZPD
>>119
コメントは調味料みたいなものだと思ってる。
まず素材の味ありき。
調味料どばっとかけなきゃ食えないのなら作り直した方がいい。
調味料間違えたら素材の味が死ぬこともある。
0123名刺は切らしておりまして垢版2017/12/27(水) 21:17:24.11ID:6Niv0FWi
ソースコードに不備を持ったAIが導入されたらどうなるんだ?
不備AIともうひとつのAIが喧嘩しそうだなw
0124名刺は切らしておりまして垢版2017/12/27(水) 22:09:33.96ID:hR5aYBaK
>>99
ちゃんとした研究じゃ、上層部やIRが理解できんから発表できないじゃん。
0127名刺は切らしておりまして垢版2017/12/28(木) 08:37:23.38ID:WMaCl/bN
>>125
ネストの深さはそうだけど適量なコメントというのは確かにAIの出番かも
静的解析で問題なしと判断されたソースからプログラマの個性による粗を検出できるものなんだろう
好意的に解釈すれば
絶対にそんな大したものでは無いだろうけど
0128名刺は切らしておりまして垢版2017/12/28(木) 09:02:35.12ID:6Tn6w5pm
>>126
あれ案外静的解析としては優秀なんだよな
人的リソース費やすよりコスト安くつくし

ただそういうツールをグループ会社内でもフリーで使わせるわけではないあたりがけち臭いんだよなあ
子会社の作ったものなんだからそこは潤沢にライセンス料支払ってやって使えるシステム全部で使えばいいものを
0131名刺は切らしておりまして垢版2017/12/28(木) 11:47:52.42ID:AhUnma4b
秋草 うちの社員より働くな
0132名刺は切らしておりまして垢版2017/12/28(木) 11:59:15.56ID:tdyyYwYg
>>38
楽天「うちのページを標準規格として採用します」
0134名刺は切らしておりまして垢版2018/01/08(月) 13:08:47.61ID:4P/Gjqej
AIが今後進化すると人が必要なくなります
その結果大量リストラが発生します
ご注意ください
0135名刺は切らしておりまして垢版2018/01/08(月) 14:15:28.08ID:u3m9Vtqp
ボッキデータはなんでも万能だな。
0136名刺は切らしておりまして垢版2018/01/08(月) 15:30:58.78ID:VbB0DysJ
昔は知らないソースをぼんやり眺めてなんとなくバグのあるところってのは分かる気がしたからこういうのもありかもな。
0137名刺は切らしておりまして垢版2018/01/08(月) 21:17:40.96ID:QXMYnU3Z
ローカルファイルチェックもAIです。
0139名刺は切らしておりまして垢版2018/01/08(月) 22:02:53.68ID:OtMS0vHD
AI自身は不具合を見つけられない
理論的に
0143名刺は切らしておりまして垢版2018/01/08(月) 22:55:29.89ID:S339nbMw
うじつうって

変数名を連番をつけてexcelとかと一緒に管理しているような
はぁ?
みたいなことしている
企業イメージしかないんだけど
0145名刺は切らしておりまして垢版2018/01/09(火) 08:15:27.89ID:KegfRG61
AIちゃうだろこれ
0149名刺は切らしておりまして垢版2018/01/10(水) 14:01:37.74ID:qcOL5SGF
>>84
アホらしい。

40行程度がAIのパターンマッチに通るか通らないかなんて、単に学習データの問題に過ぎない。

今そこにあるソースコードが判断できないなら、そんな無能は上司にいらない。
0150名刺は切らしておりまして垢版2018/01/10(水) 14:03:14.20ID:qcOL5SGF
>>134
このAI程度なら、AIを作る人、学習させる人、AIの実際の導入を手助けする人、結局使えないAIのお守りする人で雇用増大が捗るな。
0151名刺は切らしておりまして垢版2018/01/10(水) 16:01:50.03ID:+ux/IN0/
富士通って時点で失敗すると分かる
わかりやすくていい
0152名刺は切らしておりまして垢版2018/01/22(月) 19:20:37.39ID:/9RfOzGX
富士通さん
無能な社員を新しいプロジェクトに突っ込んでも
有能社員に変化するわけないんですよ
無能からは無能しか出てきません
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況