Хотите избежать взлетов и падений при внедрении ПО? Регулярные проверки обеспечат вам плавный переход через все фазы жизненного цикла приложения
Поздравляю вас. После месяцев разработки и тестирования, работы, длившейся до поздней ночи, ваши люди, измотанные, с покрасневшими веками, выдали наконец приложение с непрерывным доступом к данным, отвечающее и ожиданиям пользователя, и потребностям бизнеса. Теперь - за следующую разработку? Только, пожалуйста, не сразу.
Клиент-серверные приложения, построенные так, чтобы они выдерживали проверку временем, не могут быть статичными - они должны развиваться согласно растущим требованиям пользователя и бизнеса. Стало быть, еще рано выбрасывать средства и методологию тестирования. Тестирование в течение всего срока работы по таким аспектам, как накладные расходы сети и приложения, простота использования, функциональность и инфраструктура, - необходимое условие того, чтобы удержать под контролем процесс внедрения клиент-серверного приложения. Плановое тестирование на всех фазах проекта гарантирует, что пользователи будут пожинать плоды преимуществ вашего приложения еще годы и годы.
“Это не вызывает сомнений”, - считает Курт Монаш, президент консультационной фирмы Monash Information Service (Нью-Йорк). Он указывает две области, в которых непрерывное тестирование и учет его результатов абсолютно необходимы для успеха приложения, - простота использования и производительность.
Проблемы простоты использования выявить легче. Любой профессиональный работник службы помощи подтвердит: пользователи охотно поделятся своими жалобами, если они считают, что окно или меню сделаны неудачно. А такие вещи, как “узкие места”, ограничивающие производительность, или несовместимость приложений, обнаружить не так легко. И проблемы, которые не проявились при тестировании на контрольных данных, становятся угрожающими, когда доступ к приложению открывается большому числу пользователей. Монаш пояснил: “Обстоятельства имеют свойство меняться, и то, что работало в момент развертывания приложения, может впоследствии быстро развалиться”.
РЕГУЛЯРНЫЕ ПРОВЕРКИ
Катание на подобного рода “американских” горках не входило в планы компании Southern California Edison. Вот почему группа планирования и разработки обратилась к плановому тестированию как превентивной мере для своей собственной разработки клиент-серверного приложения для управления проектами.
“Мы запланировали проводить испытания через каждые шесть месяцев”, - сообщил Кен Нэйджел, супервизор отдела информационных систем исследовательского подразделения, расположенного в Ирвиндейле, шт. Калифорния.
В рамках этих полугодовых тестов группа выполняет репликацию с пяти типичных рабочих станций на пять тестовых станций лаборатории и запускает приложения для испытания. По словам Нэйджела, при каждой модернизации программного обеспечения или добавлении к нему новых возможностей изменения тщательно тестируются и проверяются для гарантии совместимости и высокой производительности.
“В основном мы проводим тесты на совместимость с уже имеющимися приложениями. Прежде чем что-нибудь отсюда выпустить, мы смотрим, как оно работает в комплексе”, - пояснил он. И добавил, что необходимость такого комплексного тестирования возникла гораздо раньше из-за проблем, вызванных простыми изменениями функциональности встраивания и связывания объектов (OLE) и добавлением автоматических почтовых извещений.
РЫВОК РОСТА
По мере роста количества пользователей плановое тестирование становится все более необходимым. Так как даже наилучшим образом построенные приложения испытывают кратковременное снижение производительности, плановое тестирование - это один из способов снизить уровень проблем до приемлемого. “Поскольку объем данных растет, так же, как и число людей, которым нужен доступ к данным, всегда надо иметь уверенность, что изменения в сети не снизят производительности”, - заявил Монаш.
Этот совет живо восприняла фирма Southwest Bell Mobile Systems, когда готовилась увеличить охват своей клиент-серверной системы непрерывного действия для расчетов, об этом сообщил Лен Стивенс, старший инженер по программному обеспечению. Фирма Southwest уже в течение двух лет разворачивает свою систему расчетов, используемую в настоящий момент на двух рынках в Техасе и обслуживающую более 150000 клиентов. Согласно словам Стивенса, тестирование остается главным моментом жизненного цикла этого приложения, поскольку для поддержки клиентов оно играет центральную роль.
“Когда в отдел обслуживания клиентов поступает звонок, работники отдела могут сразу же собрать всю информацию, нужную им для ответа на запрос клиента. А это означает быстрое и высококачественное обслуживание клиентов, - заявил Стивенс. - Поэтому и необходимо постоянное тестирование, гарантирующее, что приложение работает правильно”.
А при выходе этого приложения для торговых расчетов на уровень страны среда еще больше усложняется. Основная система - частное приложение на базе Unix, которое включает в себя серверную часть Oracle и построенный на базе PowerBuilder интерфейс пользователя, работающие под монитором обработки транзакций Tuxedo фирмы Novell, - останется неизменной. Однако другие части будут изменяться в соответствии с требованиями конкретных рынков, требующих постоянного потока малых изменений, и следовательно, должны тестироваться, чтобы исключить риск снижения производительности.
Фирма Southwest полностью готова к предстоящим дополнениям тестирования. Как и компания Edison, эта фирма тестирует все изменения приложения в контролируемой среде. Кроме того, она использует такие средства, как Empower CS фирмы Performix, для локальной проверки производительности. Стивенс объяснил: “Мы хотим, чтобы это приложение работало долго, поэтому надо позаботиться о его "здоровье"”.
Эйлин Кроули