アプリ開発はバグとの戦い! 効率よく発見する方法を開発

アプリ開発はバグとの戦い! 効率よく発見する方法を開発

バグのないプログラムは幻想?

アプリ開発、ソフトウエア開発の現場では、「いかにバグを減らすか」「どうすればバグを早期発見して素早く修正できるか」という課題が常にあります。開発には顧客に指定された納期があり、期限に間に合わせることが重要で、プログラムに100パーセントの確信が持てるまで作り込むことは困難です。また、実際の環境で使ってみるまで正しく動くかどうかわからないという事情もあります。
そのため、プログラマーは「怪しいところがあるかもしれないが、後で修正しよう」と考えて納品することが通例となっており、納品までのテスト期間をいかに短縮するかも重要です。

パターンを見つける

バグを見つけたいという現場のニーズを満たすための、ソフトウエア開発支援の研究が行われています。その一つがソースコードの解析です。ソースコードとは、コンピュータにどう動いてほしいかという命令をプログラミング言語で書いたものです。コードを分析して、バグが起きやすいコードのパターンの発見をめざしています。
プログラミング中にそのパターンを使ったツールを使えば、バグの可能性があるという警告を表示させたり、有効なコードの提案を受けたりできます。また、出来上がったプログラムの検証に使えば、早期にバグを発見し、修正できるのです。

AIとの共存は

近年は生成AIが普及し、AIにコードを生成させることもできるようになりました。しかし、AIがコードを生成する仕組みは「確率」に基づいています。開発者の意図、命令を理解してコードを生成しているのではなく、「この場合はこのコードを使う確率が高い」という計算に基づいて生成しており、バグが生じることがあるのです。
顧客の意向をくみ取り、仕様書の曖昧な日本語の「行間を読む」ことで正しいコードを書けるのは人間だけです。速く、大量に処理できるというAIの能力と、仕様書の内容やコードの意図を理解できる人間の能力を組み合わせたプログラミングがこれからの時代の理想と言えます。

※夢ナビ講義は各講師の見解にもとづく講義内容としてご理解ください。

※夢ナビ講義の内容に関するお問い合わせには対応しておりません。

先生情報 / 大学情報

龍谷大学 情報学部 ※2027年4月改組予定(設置構想中) 情報学科 准教授 山本 哲男 先生

龍谷大学 情報学部 ※2027年4月改組予定(設置構想中) 情報学科 准教授 山本 哲男 先生

興味が湧いてきたら、この学問がオススメ!

ソフトウエア工学

先生が目指すSDGs

メッセージ

情報系に進むと数学やプログラミングに力を入れることになりますが、高校生のうちにそれ以外のいろいろな経験をして、自分の中の引き出しをたくさんつくっておくと、将来役に立ちます。文系・理系関係なく、幅広く勉強するとともに、部活や遊びも経験してください。プログラミングをしている人は、AIを活用してみるのもいいでしょう。これからの時代は、いかにAIを使いこなせるかが重要です。また、国語力は大切です。開発の際の仕様書は日本語ですし、文章の理解力は優れたコードを書く力になります。

先生への質問

  • 先生の学問へのきっかけは?
  • 先輩たちはどんな仕事に携わっているの?

龍谷大学に関心を持ったあなたは

Less Me More We
あなただけの世界から、私たちを想う世界へ

あらゆる「壁」や「違い」を乗り越えるために、「まごころ」を持ち、「人間・社会・自然」について深く考える人を育む。それが、龍谷大学の教育のあり方です。自分自身を省み、人の痛みに感応して、他者を受け容れ理解する力を持つ。人類が直面するリアルな課題と真摯に向き合う。そして様々な学びを通じて本質を見極める目を養い、自らの可能性を広げていきます。