つい数年前まで、開発者は実際にクライアント向けのビルドを作成していました。これは、列挙するにはあまりにも多くの理由から、明らかに惨事でした。
その後、自分たちのやり方の誤りを学び始めたとき、専用のビルド マシンでアプリケーション全体を自動ビルドする方法を探しました。当時の文化は外部ツールを持ち込むことを非常に嫌っていたので、VB アプリを作成して独自の自動ビルド システムを構築しました。
プロジェクトの構造が変更され始め、新しいプロジェクトが追加され、さまざまな方法でアプリケーションを構築する必要が生じるまで、これはしばらくの間うまくいきました。その後、手巻きの自動車ビルダーの弱点が明らかになり、時間が経つにつれて、ますます面倒になりました。この病気は、ますます多くのプログラミング スキルが必要になるため、QA (ビルド プロセスの所有者) が autobuilder を維持することさえできないところまで進行しています。プロジェクトを追加したり、既存のプロジェクトで何かを変更したりするたびに、それを機能させるためにより多くの開発者の時間が費やされます。システムが壊れてビルドできない日もありました。
私は今、このプロセスを変更できる立場にあり、システム全体を破棄して、別のものを代わりに配置しようとしています。私の目標は次のとおりです。
- 毎日特定の時間に人的介入なしで実行できる自動構築システムを用意します。すべてのソース コードを収集し、すべてのアプリをコンパイルし、セットアップを作成し、完成した製品をネットワーク共有に配置し、自動テスト システム (QTP を使用) を起動できるようにする必要があります。
- autobuild システムは、大幅なオーバーホールを必要とせずに、プロジェクトの変更に容易に適応できる柔軟性を備えている必要があります。
- QA がシステムを所有でき、開発者のリソースがビルドの作成方法を変更する必要がないように、十分にシンプルにする必要があります。
あなたの経験は何ですか?自動構築システムをお勧めできますか? 違う目標を持つべきですか?