現在のソフトウエア開発は,様々なツールの助けが不可欠。VisualStudioやEclipseなどの統合開発環境は,バージョンアップするたびに開発者を多面的に支援する機能を盛り込み,開発効率の向上を図ってきた。ソフトウエアの種類,規模,用途などに合わせて最適な開発ができるように,開発者はツールの“正しい”使い方を知っておく必要がある。(斉藤 国博=日経ソフトウエア)
プログラムを書くときには,何らかの開発ツールの助けを借りているのが普通である。例えば,何らかのクラスライブラリを使おうとしたとき,クラス名などをうろ覚えのままでも統合開発環境(IDE)が候補を示してくれる。引数の順序などいちいち覚えていられない細かい書式も,その場その場でIDEが教えてくれる。
プログラミングの勉強や,趣味でちょっとしたアプリケーションを作っているとき,ツールの便利さを実感する開発支援機能といえば,決まり切ったコードを自動で作ったり,クラスやメソッド名などを間違いなく入力するための補助機能である。
これらコード入力を補助する機能は,コーディング時の間違いを極力減らすことがソフトウエア開発全体の生産性を上げるという考え方で培われてきた。ただし,このアプローチは,今のコンピュータ技術では限界近くまで進歩してしまっている。
Eclipseのように,もともと製品として売られていた高機能な統合開発環境(IDE)が無償で公開されるようになった一因も,そこにあると考えられる。つまり,「こんなに簡単にプログラムを書けるようになる」というだけでは,開発ツールの売りものにはならない時代に入ってしまったということだ。
プログラムを書いて,コンパイルし,動かすという作業は,ソフトウエア開発のプロセス全体から見ればほんの一部に過ぎない。ソフトウエア開発の流れは大きく「要件定義」「設計」「実装」「テスト」という四つに分けることができる(図1)。コードの入力を補完する機能は,このうちの実装を助ける機能の一つに過ぎない。
![]() |
| 図1●ソフトウエア開発の流れ。実装(コーディング)はほんの一部に過ぎない |
ソフトウエア開発には,難しくて支援を必要とする作業がまだたくさんある。実装以外の部分についても様々な支援機能を持った開発ツールが作られている。代表的な機能をいくつか紹介しよう。



