Выпуск ПО с точки зрения руководителей компаний
Крупные компании-разработчики с мировым именем способны поставлять на рынок достаточно масштабные программные пакеты, вплоть до корпоративного уровня. Такие приложения, как правило, имеют довольно сложную структуру и большой объем исходного кода, на создание которого расходуется много времени и человеческих ресурсов.
Разумеется, здесь речь идет об обороте крупных финансовых вложений. А значит, велики и риски от срыва сроков поставки, от неучтенных и неисправленных проблем и ошибок в ПО, слишком поздно обнаруженных конечными пользователями уже на этапе эксплуатации.
Стоит заметить, что ничуть не меньшие риски преследуют и создателей небольших проектов, запущенных в формате стартапов. Здесь в большинстве случаев используется заемный капитал, который нужно своевременно возвращать банкам и кредитным организациям, и в то же время в развитии таких проектов заняты очень небольшие команды инженеров.
Соответственно, руководство и тех, и других компаний-разработчиков преследует две противоречащие друг другу цели. С одной стороны, речь идет о жесткой экономии времени и денег, а значит, нужно выпускать готовые версии ПО в самые сжатые сроки. С другой стороны, нужно обеспечить высокий уровень качества выпускаемой продукции, чтобы она была конкурентоспособной на большом рынке.
Практика показывает, что потенциальные клиенты быстро теряют интерес к программным продуктам, если они содержат множество дефектов, что делает эксплуатацию неудобной или ограничивает спектр поддерживаемых функциональных возможностей. В некоторых случаях для такого отрицательного эффекта порой бывает достаточно и одной ошибки, зато с высоким уровнем критичности.
В действительности этот факт способен поставить крест на любых только начинающих набирать баллы стартапах, даже самых бюджетных, на начальной стадии формирования имиджа компании. В равной степени это может также серьезно пошатнуть репутацию крупных компаний-разработчиков, а значит, привести к снижению уровня доверия клиентов и к спаду продаж.
И с точки зрения технических специалистов
Итак, менеджмент ставит перед разработчиками непростую задачу сокращать сроки разработки ПО, предотвращать возможные ошибки и повышать качество выпускаемой продукции.
Разумеется, можно привлечь к работе большее число программистов, запланировать и провести тестирование в большем объеме, прибегнуть к внедрению автоматизации и т.п. Однако стоит задуматься, где взять на это время и дополнительных сотрудников. А также, что немаловажно, готово ли руководство компании идти навстречу своим сотрудникам и оплачивать все эти дополнительные расходы.
Скорее всего стоит взглянуть на ситуацию с другой стороны и качественно изменить сам подход к организации процесса разработки и тестирования ПО.
Существуют определенные методики, применение которых позволяет если не вообще избежать, то серьезно снизить возможность возникновения ошибок в программном коде в ходе его разработки. Одновременно эти методы позволяют разработчикам более удобно воспринимать и поддерживать код друг друга, взаимодействовать между собой.
Но не будем забегать вперед и поговорим обо всем по порядку.