Ответ на вопрос, для чего нужно создавать высоко­ка­че­ственное программное обеспе­чение, является логичным и законо­мерным для всех сторон процесса разработки.

Очевидно, что любой заказчик хочет получить высоко­ка­че­ственный программный продукт, удовле­тво­ряющий всем постав­ленным требо­ваниям, по возмож­ности дешевле и в отведённый для этого срок, чтобы в будущем предот­вратить расходы на обслу­жи­вание, поиск проблем, ошибок и т.д.

С другой стороны, разра­ботчик ПО заинте­ре­сован сделать свою работу вовремя, с макси­мальным качеством, для того чтобы уменьшить свои издержки на время гаран­тийного обслу­жи­вания. То есть обе стороны процесса создания ПО преследуют как минимум две одина­ковые цели: сдача программного продукта в срок и дости­жение макси­мально возможного качества ПО.

Создание изначально качественного программного продукта:

  • Увели­чивает вероят­ность успеха проекта и сдачи его в срок, и в конечном итоге, введение ПО в эксплуатацию.
  • Снижает затраты на гаран­тийное обслу­жи­вание с обеих сторон.
  • Создаёт предпо­сылки для сокра­щения общего времени разра­ботки, так как програм­мисты не отвле­каются на исправ­ление ошибок или недоработок.

Со стороны фирмы — разра­ботчика ПО есть прямые и косвенные причины для создания надежного и качественного программного обеспе­чения. К таковым можно отнести:

  • Снижение внутренних расходов на разра­ботку и увели­чение общей скорости обработки задач. Т.е. качественная разра­ботка сразу позволяет избежать остановок в работе, переклю­чений на другие задачи, поиск ошибок в ПО, перепро­верки решений, поиск обходных вариантов, восста­нов­ление работо­спо­соб­ности и т.д.
  • Связывает клиента с разра­бот­чиком до тех пор, пока клиент удовлетворён.
  • Создаёт порой непре­одо­лимое для других конку­рентное преиму­щество при участии в тендерах на разра­ботку ПО.

Cамо по себе меньшее количество ошибок говорит о профес­си­о­на­лизме разра­ботчика ПО, повышает удовле­тво­рён­ность клиента и, что важно для будущего, создаёт вероят­ность новых заказов со стороны клиента и возмож­ность получения хороших рекомендаций.

К критериям качественного ПО наша компания относит ещё и такое его свойство, как расши­ря­е­мость, или потенциал модер­ни­зации, поскольку разра­ботчики нередко сталки­ваются с такой ситуацией, что проще выкинуть старое и сделать новое. Потенциал модер­ни­зации закла­ды­вается правильно разра­бо­танной, ориен­ти­ро­ванной на будущее архитек­турой ПО и выбранными техно­ло­гиями для разработки.