Шрифт:
Еще одним важным фактором, который обусловливает необходимость системного подхода (начиная с этапа формулирования требования и постановки задач), является то, что на этот этап приходится до 80 % всех затрат на разработку ППО. При этом он имеет особое значение в обеспечении соответствия результатов разработки потребностям конечных пользователей.
Появление потребности системного подхода к разработке программных средств решения задач при автоматизации систем организационно-экономического управления привело к необходимости дифференциации специалистов-разработчиков. Данный факт послужил проявлению в выделении в их составе системных аналитиков, системотехников, прикладных и системных программистов.
Системный аналитик формулирует общие формальные требования к программному обеспечению системы. Обязанности специалиста-системотехника заключаются в преобразовании общих формальных требований в детальные спецификации на отдельные программы, участии в разработке логической структуры базы данных.
Обязанности прикладного программиста состоят в совершенствовании спецификации в логическую структуру программных модулей, а затем в программный код.
Системный программист должен обеспечивать взаимодействие программных модулей с программной средой, в рамках которой предстоит работать прикладным программам.
Еще одной чертой системной разработки проектов прикладных программ является их ориентация на использование интегрированных и распределенных баз данных. В данном случае в качестве инструментальных средств разработки компонентов программного обеспечения вместе с языками программирования стали применяться языковые средства СУБД.
Появляются и широко используются в сфере управления ПК и более качественные программно-инструментальные средства, которые ориентированы на специалистов управления – непрограммистов. Данный факт кардинально изменил характер технологии подготовки и решения экономических задач.
С ростом производства новых микропроцессоров резко изменились приоритеты и актуальность проблем, которые присущи традиционным технологиям разработки прикладных программ. Возможность исключения из технологической цепочки программистов-профессионалов позволяет ускорить процесс разработки прикладных программных средств.
8.12. Современные методы и средства разработки прикладных программных средств
Понятие «модульное проектирование» тесно связано с реализацией метода нисходящего проектирования. Последовательность логически взаимосвязанных фрагментов, оформленных как отдельная часть программы, именуется модулем. Выделяют следующие свойства программных модулей:
• ссылка на модуль может осуществляться по имени, в том числе и из других модулей;
• при окончании работы модуль должен возвращать управление модулю, вызвавшему его;
• модуль должен иметь один вход и выход;
• модуль должен обладать небольшим размером, обеспечивающий его обозримость.
При разработке сложных программ отделяют головной управляющий модуль и подчиненные ему модули, обеспечивающие реализацию отдельных функций управления, функциональную обработку, и вспомогательные модули, которые гарантируют сервисное обслуживание пакета.
Модульный принцип разработки программ имеет целый ряд преимуществ:
1) емкая программа может разрабатываться одновременно несколькими исполнителям, что позволяет сократить сроки ее разработки;
2) существует возможность создания библиотеки наиболее употребляемых программ и использования их;
3) при необходимости сегментации процедура загрузки больших программ в ОП становится намного проще;
4) возникает много естественных контрольных точек, призванных осуществлять наблюдение за ходом разработки программ и контроль исполнения программ;
5) обеспечивается эффективное тестирование программ, значительно проще происходят проектирование и последующая отладка.
Структурное программирование применяется для того, чтобы облегчить процесс разработки и отладки программных модулей, а также процесс их последующего сопровождения и модификации.
Развитие программно-инструментальных средств программирования экономических задач основано на системах автоматизации программирования, или системах программирования, обеспечивающих возможность решения множества задач непосредственно в среде ОС ЭВМ.