Разработка программного обеспечения

2009-05-12, Автор - Ленар Хайруллин; [2067]

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


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


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

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

Иванов И.
Ведущий специалист «InfoSoftCom»
http://www.infosoftcom.ru


Комментарии:
Последние комментарии на сайте:
Поделиться в социальных сетях:


Обзор PNY QI Wireless Charging Base. Бес...
Обзор PNY QI Wireless Charging Base. БесСовременные смартфоны все дальше движутся вперед и получают под свое управление множество интересных функ...
Предварительный обзор Ash of Gods. Игра,...
Предварительный обзор Ash of Gods. Игра,Попробуйте вспомнить, когда вы играли в полноценный проект от отечественного производителя. Думаю, даже с...
Обзор PNY The Family Car Charger. Автомо...
Обзор PNY The Family Car Charger. АвтомоЧастенько автовладельцы сталкиваются с проблемой нехватки USB-портов для зарядки мобильных устройств. Мно...
BQ выпустила смартфон совместно с ФК Спа...
BQ выпустила смартфон совместно с ФК Спа7 февраля состоялась пресс-конференция BQ и Спартак, где рассказали о планах на будущее компаний и подроб...
Предварительный обзор Antec DF500. Недор...
Предварительный обзор Antec DF500. НедорМы привыкли к тому, что современные корпуса для компьютеров с красивой подсветкой и большим боком окном с...
Fearea — MOBA игра из Сочи...
Fearea — MOBA игра из Сочи2 февраля состоялась презентация игры FeArea. Ее разработкой занимается компания Muvgames из Сочи, в кото...
Предварительный обзор MSI Optix MPG27CQ....
Предварительный обзор MSI Optix MPG27CQ.Компания MSI официально показала монитор Optix MPG27CQ, который получился весьма неплохим решением и даже...
Обзор Mahjong. Интересный вариант...
Обзор Mahjong. Интересный вариантЯ постоянно говорю о том, чт осовремените мобильные игры стали скучными и весьма однообразными. Все дело ...
Обзор Deppa USB Type-C. Многопортовый ха...
Обзор Deppa USB Type-C. Многопортовый хаВ современных устройствах становится все меньше разъемов для подключения устройств, не достаточно USB-пор...
Обзор Space Cats Evolution. Это очень ми...
Обзор Space Cats Evolution. Это очень миВ большинстве ситуаций казуальные игры оказываются весьма страшными, странными и неуклюжими - играть в та...
Обзор PNY USB-C Card Reader. Универсальн...
Обзор PNY USB-C Card Reader. УниверсальнПосле обновления линейки MacBook Pro, которые получили только разъемы USB Type-C, передача файлов с внешн...
Обзор Keelo. Спорт за деньги...
Обзор Keelo. Спорт за деньгиСегодня разговор вновь пойдет о здоровье и вашем теле.Сейчас очень много пользователей стали задумываться...
МегаОбзор
МегаОбзор
MegaObzor в социальных сетях:
Яндекс.Метрика
2006-2018 © MegaObzor