IT-РАБОТА · РЕГИОН: СИБИРЬ

 

Сценарий разработки программных проектов

Процесс разработки программного обеспечения никогда не идет по одному сценарию, лишь в некоторых моментах есть схожие этапы. Все зависит от масштабов и сложности проекта, гибкости функционала и, естественно, от самих разработчиков. Не зависимо от того, какой язык или инструменты используются при разработке, у программиста есть ряд широко известных схем и методов. Комбинируя их, можно найти оптимальный сценарий для проекта.

На практике дело обстоит так, что проекты, которые разрабатывает один программист, в большинстве случаев ведутся по одной простой схеме, то есть продумывается определенный функционал, алгоритмы и схемы взаимодействия данных, в лучшем случае для этого используется ручка и бумажка. Далее программист начинает писать код, тестируя его «на лету».

Такой подход дает хороший результат лишь при самых простых проектах, где вопрос масштабов решается тысячей строчек кода. В разработке более сложного программного продукта, как правило, участвует целая команда программистов, среди которых обычно выделяют главного - ведущего программиста. В его задачу входят контроль и разработка основных концепций, а также ведущий программист организует оптимальное взаимодействие между членами команды. Естественно, сценарий разработки будет сложнее, а значит, имеется риск непредвиденных ситуаций.

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

Все эти этапы в совокупности составляют жизненный цикл проекта, а их последовательность выбирается в зависимости от специфики и потребностей управления проектом.

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

В настоящее время одной из самых популярных парадигм является объектно-ориентированное (объектное) программирование (ООП), в основе которого лежат понятия «объект» и «класс». Данная парадигма является результатом эволюции идеологии процедурного программирования, где данные и процедуры, которые их обрабатывают, по сути, не связаны между собой. Объектное программирование, в свою очередь, дало начало понятиям «компонент» и «событие». Класс определяет модель сущности в адресном пространстве компьютера (объект), описывая его структуру и поведение. При этом объект называют экземпляром класса, на основе которого он был создан. Один объект может взаимодействовать с другим с помощью сообщений.

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

При работе в команде на этапе кодирования рекомендуется использовать системы управления исходным кодом. Это позволит уменьшить вероятные ошибки при одновременном редактировании одно модуля двумя программистами.

Еще один важный этап разработки – тестирование. На этом уровне важно подобрать максимальные значения надежности и эффективности через серии проверок функционала программы. Разработчику следует смоделировать абсолютно все возможные ситуации. Также на данном этапе следует выяснить, насколько программный продукт сопровождаем, так как дальнейшие модификации могут разрушить налаженный алгоритм при непродуманной структуре кода.

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

Следующая статья: Специфика работы программиста
Предыдущая статья: Интеграция и тестирование в методиках программирования

Оставить комментарий

Внимание!!! При копировании материалов сайта ссылка на источник обязательна.

Счетчики: