- •1. Кризис программирования
- •2. Понятие жизненного цикла по
- •3. Требования к технологии проектирования
- •4. Понятия профессионального программирования
- •5. Проект и команда
- •6. Задача профессионального программирования
- •7. Алгоритмы
- •8. Модели и моделирование
- •9. Структурный подход
- •9.1. Проблема сложности
- •9.2. Сущность структурного подхода
- •9.3. Метод функционального моделирования (sadt)
- •9.3.1. Состав функциональных моделей
- •9.3.2. Методика построения модели
- •9.4. Метод моделирования процессов - потоков данных (dfd)
- •9.4.1. Общая концепция
- •9.4.2. Состав диаграмм потоков данных
- •13. Венгерская нотация
- •14. Методология и парадигма программирования
- •15. Современные методологии программирования
- •16. Методология императивного программирования
- •17. Методология объектно-ориентированного программирования
- •18. Методология функционального программирования
- •19. Методология логического программирования
- •20. Методология программирования в ограничениях
- •21. Методология структурного императивного программирования
- •22. Методология параллельного императивного программирования
- •23. Методология нейросетевого программирования
- •23.1. Модель нейрона с линейной функцией активации
- •23.2. Модель нейрона с радиальной функцией активации
- •23.3. Разработка нейросетевой модели
- •24. Основные типы ошибок в программах
- •25. Отладка и тестирование
- •26. Режимы работы компилятора Delphi для поиска ошибок
- •27. Задание режимов работы отладчика с помощью переключающих директив
- •28. Пользователи и их поддержка
- •29. Поддержка программиста: общие требования
- •29.1. Пролог модуля
- •29.2. Проектная документация
- •29.3. Оформление текста программы
- •30. Поддержка конечного пользователя
- •31. Технология программирования графики
- •31.1. Графическая подсистема оболочек Win32/64
- •31.2. Графические средства Delphi
- •31.3. Проектирование интерфейса с пользователем: компоненты стандартных диалогов
- •32.Технология компонентного программирования
- •32.1. Технология com
- •32.1.1. Общая концепция
- •32.1.2. Интерфейс com
- •32.1.3. Сервер com
- •32.2. Технология ole
- •32.2.1 Суть и содержание ole
- •32.2.2.Терминология ole
- •32.2.3. Автоматизация ole
- •32.2.4. Структурированная память
- •32.3. Технология corba
- •32.4. Технология Java
- •32.5.Технология .Net
- •33. Технология описания аппаратуры
- •Input clock, reset, en;
- •If(!reset)
- •34. Технология коллективной разработки
- •34.1. Авторская разработка
- •34.2. Коллективная разработка
- •34.2.1. Технические командные роли
- •34.2.2. Психологические командные роли
- •34.2.3. Типы совместной деятельности
- •34.3. Общинная модель разработки
- •35. Технология оценки качества по
- •35.1. Подходы к оценке качества по
- •35.2. Характеристики качества по
- •35.3. Оценка качества процесса разработки
- •35.3.1. Модель зрелости процесса разработки по
- •35.3.2. Определение возможностей и улучшение процесса создания по
- •35.4. «Достаточно хорошее» по
- •33.5. Стандартизация информационных технологий
- •Международные организации, входящие в структуру оон.
- •Промышленные профессиональные или административные организации.
- •Промышленные консорциумы.
- •36. Инструментальные средства поддержки некоторых технологических подходов
- •36.1. Инструментальные системы
- •36.1.1. Инструментальные среды программирования
- •36.1.2. Средства автоматизации разработки программ (case-средства)
- •36.1.3. Интегрированные среды
- •36.1.4. Репозитории проекта
- •36.2. Поддержка коллективной разработки: системы управления версиями
- •37. Организация диалогов
- •38. Защита программного кода
33.5. Стандартизация информационных технологий
Стандарт – общепринятое определение компонента технических или программных средств, являющихся результатом соглашения.
Профиль – набор юридических и/или фактических стандартов, ориентированных на выполнение конкретной задачи.
Стандарты можно классифицировать следующим образом:
по типу установления требований:
устанавливающие требования к объекту;
устанавливающие требования к процессу;
по масштабу:
международные;
государственные;
отраслевые;
предприятий;
по степени юридического оформления:
принятые юридически;
действующие фактически.
Процесс стандартизации информационных технологий поддерживают три основные группы организаций:
Международные организации, входящие в структуру оон.
International Organization for Standardization (ISO) - международная организация по стандартизации.
International Telecommunication Union-Telecommu-nications (ITU-T) – международный союз по телекоммуникации - телекоммуникация.
Промышленные профессиональные или административные организации.
Institute of Electrical and Electronic Engineers (IEEE) – институт инженеров по электротехнике и электронике.
Internet Activity Board (IAB) – совет управления деятельностью Интернета.
Промышленные консорциумы.
Object Management Group (OMG) - группа управления объектами.
Х/Open - консорциум, организованный группой поставщиков компьютерной техники.
Open Software Foundation (OSF) – фонд открытого программного обеспечения.
В 1987 году ISO и IEC объединили свою деятельность в области стандартизации информационных технологий и создали единый орган - Joint Technical Committee 1 (JTC1) – объединенный технический комитет 1. Этот комитет предназначен для формирования системы базовых стандартов в области информационных технологий.
36. Инструментальные средства поддержки некоторых технологических подходов
36.1. Инструментальные системы
Инструментальная система – логически связная совокупность программных инструментов, поддерживающая разработку и сопровождение программных продуктов на конкретном языке программирования либо ориентированная на конкретную предметную область.
Для инструментальных систем характерны два основных признака:
высокая интеграция инструментальных средств в рамках единой оболочки;
использование общего репозитория.
Выделяют три группы инструментальных систем:
Инструментальные среды программирования.
Средства автоматизации разработки программ.
Интегрированные среды.
В идеальном варианте инструментальные системы должны распространяться на максимально возможное количество процессов и покрывать максимум стадий жизненного цикла. Однако исторически сложилось так, что инструментальные среды в большей степени связаны с процессами программирования, тестирования и отладки, а средства автоматизации разработки программ – с анализом и проектированием.
36.1.1. Инструментальные среды программирования
Инструментальные среды программирования обычно содержат текстовый редактор, компилятор, отладчик и средства подсказки. Кроме того, в них могут быть включены и другие инструменты, позволяющие выполнять статический и динамический анализ программ. Эти инструменты взаимодействуют между собой через обычные файлы с помощью стандартных возможностей файловой системы. Различают среды общего назначения и языково-ориентированные среды.
Среды общего назначения содержат набор программных инструментов (например, текстовый редактор, редактор связей и т. п.), позволяющих выполнять разработку программ на разных языках программирования. Для программирования на конкретном языке программирования требуются дополнительные инструменты, ориентированные на этот язык.
Языково-ориентированные среды предназначены для поддержки разработки программ на каком-либо одном языке программирования, причем построение такой среды базируется на знаниях об этом языке.
Инструментальная среда не обязательно должна функционировать на том компьютере, на котором должен будет применяться разрабатываемый с ее помощью программный продукт. При этом инструментальные среды программирования имеют следующие особенности:
поддерживают различные методологии;
применяются в различных технологиях;
применяются командами, работающими над различными проектами;
используются для разработки разнообразных приложений;
разрабатываются одной компанией.
В качестве примеров инструментальных сред можно перечислить такие, как Microsoft Visual Studio, Forte for Solaris Developer Tools (Sun Microsystems Inc.), Borland Delphi Suite и подобные им.