アプリの多機能・高機能化を陰で支える、「テスト効率化」の技術

アプリの多機能・高機能化を陰で支える、「テスト効率化」の技術

「バグ」が使い勝手を悪くする

スマホやタブレットを使っていて、「このアプリでこの操作をすると、いつもフリーズしたり勝手に終了したりする」といった経験はありますか? それはきっと、ソフトウェアに潜むプログラミングのミス「バグ」のせいです。
ソフトウェア開発作業の大部分は人間が手作業で行っているので、ミスや勘違いを完全にゼロにすることは極めて困難です。しかもソフトウェアは製品としての形が目に見えないので、ソースコードの記述中に何らかの誤記があっても、実際に動かしてみるまではバグがあることに気づきにくいのです。

自動化・可視化で、テストを効率的に

バグのない信頼性の高いソフトウェアを提供するため、ベンダー(製造・販売元)側もかなり綿密なテストを行っています。ただ、あらゆるユーザーのすべての操作を再現することは不可能ですから、十分なテストを行ったつもりでも、想定外のミスが潜んでいるのです。そこで現在、ソフトウェアのテストを自動化したり可視化したりすることで、効率的にバグを発見する技術が研究されています。
主に行われているのは、プログラム言語を機械語に変換する「コンパイラ」の技術を利用して、テストしたいプログラムのコードに、テストを自動化したり可視化したりできる機能を持った別のコードを埋め込んで、プログラムを実行する方法です。この埋め込んだコードを利用して、テストの自動化や可視化を可能にします。

多機能になるほど重要なテストの効率化

スケジュール管理アプリにリマインダーの機能を持たせたり、写真管理アプリに複雑なフォトレタッチ機能を持たせたりと、ソフトウェアの多機能・高機能化が急速に進んでいます。機能を増やせば記述すべきコードも増え、作成時にミスが発生する確率も高くなりますから、テストを効率的に行う技術はますます重要になります。
この分野の研究が進み、テストに費やす時間や人件費が大幅にカットできれば、信頼性の高いソフトウェアを短期間に完成させることができ、その分、安価に提供できるようにもなるのです。

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

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

先生情報 / 大学情報

宮崎大学 工学部 工学科 情報通信工学プログラム 教授 片山 徹郎 先生

宮崎大学 工学部 工学科 情報通信工学プログラム 教授 片山 徹郎 先生

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

情報工学、ソフトウェア工学

先生が目指すSDGs

メッセージ

「工学部をめざしているけど、好きなのは電気や機械なので、ソフトウェアのプログラミングのことは詳しく勉強する必要はないかな」と考えている高校生も多いようですが、あなたはどうですか?
確かに、電気や機械のエンジニアとソフトウェアのエンジニアとでは、習得すべき知識や技術は異なります。しかし、あなたの身の回りの家電製品や機械製品の大半が、いまや何らかのプログラム(ソフトウェア)によって制御されています。電気系であれ機械系であれ、これからの時代のエンジニアには、プログラミングの基礎知識が必要になるのです。

先生への質問

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

宮崎大学に関心を持ったあなたは

宮崎大学は、「世界を視野に、地域から始めよう」のスローガンのもと、人的・知的・物的資源を共有し、機能を相補します。(1) 教養教育の一層の充実と質的向上、(2) 教育・研究基盤の強化、(3) 学際領域の教育・研究の強化と創出、(4) 地域および国際社会への貢献、を具体的な目標として、21世紀を展望しつつ、知の創造の殿堂として、活気に溢れ、魅力に満ちた学風と輝くキャンパスを築きます。また、地域と連携して宮崎の文化と風格を高めることを目指しています。