Программная инженерия проявляет гибкость

В каком направлении будет развиваться данная отрасль в ближайшие годы? Эта тема обсуждалась несколькими месяцами ранее, на 30-й международной конференции по программной инженерии, прошедшей в мае в Лейпциге (Германия). Ведущие эксперты выделили три проблемных направления, серьезно увеличивающих трудоемкость разработки ПО и требующих пристального внимания:

1. эффективность компонентного подхода снижается при использовании множества слабо совместимых компонентов, функциональность которых к тому же бывает нужна лишь частично, а вот требования к аппаратным ресурсам сильно возрастают;
2. процесс разработки ПО становится все более фрагментированным, увеличивается число технологий, платформ, методологий, “стандартов”, а в реестре-энциклопедии языков программирования (hopl.murdoch.edu.au) зарегистрировано уже 8512 языков;
3. по закону американского конструктора суперкомпьютеров Амдала (аналог закона Мура) даже при бесконечном количестве процессоров “узким горлышком” производительности остается доля последовательно выполняемых операций. Сотни тысяч процессоров в кластере дают относительно слабый выигрыш в классических задачах, плохо распараллеливаемых привычными методами.

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

В докладе исследовательского подразделения IBM на конференции были отмечены следующие мегатренды в программной инженерии: технологические тенденции будут сливаться с социальными, а “облачные” вычисления и Web 2.0 послужат стимулом к развитию относительно несложных средств разработки для конечного пользователя в виде открытых и доступных на любых устройствах сценарных технологий (сегодня это PHP, JavaScript и т. п.). Продолжится развитие всего спектра многоядерных технологий, а к программированию все активнее будут привлекаться люди, не говорящие по-английски, и жители бедных стран, где получат распространение дешевые компьютеры. Займутся программированием и немало женщин.

Январь 24, 2008 — Рубрика: JavaScript
Метки: ,