Инструментальные системы технологии программирования
Для компьютерной поддержки разработки и сопровождения больших ПС с продолжительным жизненным циклом используются инструментальные системы технологии программирования. Инструментальная система технологии программирования – это интегрированная совокупность программных и аппаратных инструментов, поддерживающая все процессы разработки и сопровождения больших ПС в течение всего его жизненного цикла в рамках определенной технологии. Из этого определения вытекают следующие основные черты этого класса компьютерной поддержки:
Комплексностькомпьютерной поддержки означает, что она охватывает все процессы разработки и сопровождения ПС и что продукция этих процессов согласована и взаимоувязана. Тем самым, система в состоянии обеспечить, по крайней мере, контроль полноты (комплектности) создаваемой документации (включая набор программ) и согласованности ее изменения (версионности). Тот факт, что компьютерная поддержка охватывает и фазу сопровождения ПС, означает, что система должна поддерживать работу сразу с несколькими вариантами ПС, ориентированными на разные условия применения ПС и на разную связанную с ним аппаратуру, т.е. должна обеспечивать управление конфигурацией ПС. Ориентированность на коллективную разработкуозначает, что система должна поддерживать управление (management) работой коллектива и для разных членов этого коллектива обеспечивать разные права доступа к различным фрагментам продукции технологических процессов. Технологическая определенностькомпьютерной поддержки означает, что ее комплексность ограничивается рамками какой-либо конкретной технологии программирования. Инструментальные системы технологии программирования представляют собой достаточно большие и дорогие ПС, чтобы как-то была оправданна их инструментальная перегруженность. Поэтому набор включаемых в них инструментов тщательно отбирается с учетом потребностей предметной области, используемых языков и выбранной технологией программирования. Интегрированностькомпьютерной поддержки означает:
Интегрированность по даннымозначает, что инструменты действуют в соответствии с фиксированной информационной схемой (моделью) системы, определяющей зависимость различных используемых в системе фрагментов данных (информационных объектов) друг от друга. Интегрированность по пользовательскому интерфейсуозначает, что все инструменты объединены единым пользовательским интерфейсом. Интегрированность по действиямозначает, что, во-первых, в системе имеются общие части всех инструментов и, во-вторых, одни инструменты при выполнении своих функций могут обращаться к другим инструментам. С учетом обсужденных свойств инструментальных систем технологии программирования можно выделить три их основные компоненты:
Репозиторий – центральное компьютерное хранилище информации, связанной с проектом (разработкой) ПС в течение всего его жизненного цикла. Инструментарий – набор инструментов, определяющий возможности, предоставляемые системой коллективу разработчиков. Обычно этот набор является открытым: помимо минимального набора (встроенные инструменты), он содержит средства своего расширения (импортированными инструментами), – и структурированным, состоящим из некоторой общей части всех инструментов (ядра) и структурных (иногда иерархически связанных) классов инструментов. Интерфейсыразделяются на пользовательский и системные. Пользовательский интерфейс обеспечивает доступ разработчикам к инструментарию (командный язык и т.п.), реализуется оболочкойсистемы. Системные интерфейсы обеспечивают взаимодействие между инструментами и их общими частями. Системные интерфейсы выделяются как архитектурные компоненты в связи с открытостью системы – их обязаны использовать новые (импортируемые) инструменты, включаемые в систему. Самая общая архитектура инструментальных систем технологии программирования представлена на рис. 16.4. Различают два класса инструментальных систем технологии программирования: инструментальные системы поддержки проекта и языково-зависимые инструментальные системы. Инструментальная система поддержки проекта – это открытая система, способная поддерживать разработку ПС на разных языках программирования после соответствующего ее расширения программными инструментами, ориентированными на выбранный язык. Такая система содержит ядро (обеспечивающее, в частности, доступ к репозиторию), набор инструментов, поддерживающих управление (management) разработкой ПС, независимые от языка программирования инструменты, поддерживающие разработку ПС (текстовые и графические редакторы, генераторы отчетов и т.п.), а также инструменты расширения системы. Языково-зависимая инструментальная система – это система поддержки разработки ПС на каком-либо одном языке программирования, существенно использующая в организации своей работы специфику этого языка. Эта специфика может сказываться и на возможностях ядра (в том числе и на структуре репозитория), и на требованиях к оболочке и инструментам. Примером такой системы является среда поддержки программирования на Аде (APSE [16.3]).>> 6.4-Сурет.LabVIEW бұйымы – пайдаланушының интерфейсі ортасында: бағдарламалау жүйесі мен технологияларының жалпы архитектуралық көрінісі
Рисунок 16.4. Общая архитектура инструментальных систем и технологий программирования 6-Дәріс үшін ӘДЕБИТТЕР/ ЛИТЕРАТУРА для 6-лекции: 1. Ian Sommerville. Software Engineering. – Addison-Wesley Publishing Company, 1992. P. 349-369. 2. CASE: Копьютерное проектирование программного обеспечения. – Издательство Московского университета, 1994. 3. Requirements for Ada Programming Support Enviroments. – USA: DoD, Stoneman, 1980. 7-Дәріс ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|