- •Введение. Этапы развития трпо;
- •Основные понятия. Классификация программного обеспечения. Системное по. Пакеты прикладных программ. Среды разработки по;
- •Проблемы проектирования по. Оценка стоимости некачественного проектирования;
- •Требования к по. Особенности формирования;
- •Проблемы корректности требований к по;
- •Оценка качества разработки. Стандарты, критерии.
- •Сертификация по;
- •Жизненный цикл по. Модели жизненного цикла по;
- •Анализ требований к программным продуктам;
- •Архитектура программного обеспечения;
- •11. Структура и формат данных. Классификация;
- •12. Простые и статические структуры данных;
- •13. Полустатические и динамические структуры данных;
- •14. Модульное программирование. Методические основы;
- •15. Модульное программирование. Прочность и сцепление модулей;
- •16. Модульное программирование. Прочность и сцепление модулей;
- •17. Модульное программирование. Рутинность и связность модулей;
- •18. Методы разработки при модульном программировании. Классификация;
- •19. Восходящая модульная разработка. Архитектурный подход;
- •20. Нисходящая модульная разработка. Конструктивный подход;
- •21. Спецификации и требования при структурном подходе;
- •22. Схематическое представление алгоритмов. Блок схемы;
- •23. Схематическое представление алгоритмов. Псевдокоды и Flow – формы;
- •24. Диаграммы Насси-Шнейдермана. Словарь терминов;
- •25. Диаграммы переходов состояний;
- •26. Функциональные диаграммы;
- •27. Диаграммы потоков данных. Нотации Йордана и Гейна – Сарсона;
- •28. Диаграммы сущность – связь. Примеры er – диаграмм. Понятие сущности. Типы связей между сущностями;
- •29. Анализ требований и определение спецификаций при объектном подходе;
- •30. Унифицированный язык моделирования uml. Основные понятия;
- •31. Определение прецедентов при объектном подходе. Диаграммы вариантов использования;
- •32. Построение концептуальной модели при объектном подходе;
- •33. Объектный подход. Классы. Диаграммы классов;
- •34. Объектный подход.. Атрибуты и операции класса. Экземпляр класса;
- •35. Описание поведение системы. Диаграммы последовательностей;
- •36. Описание поведение системы. Диаграммы деятельности и состояний;
- •37. Технологии программирования. Концепции программирования;
- •38. Объектно – ориентированное программирование. Принципы;
- •39. Платформы java и net. Web - программирование;
- •40. Тестирование и отладка программного обеспечения. Уровни тестирования. Принципы разработки тестов. Автоматизация тестирования;
- •41. Тестирование и отладка программного обеспечения. Модульное тестирование;
- •42. Тестирование и отладка программного обеспечения. Интеграционное тестирование;
- •43. Технологии разработки. Выбор языка программирования;
- •44. Технологии разработки. Среды программирования;
- •45. Тестирование и отладка программного обеспечения. Системное тестирование;
- •46. Сопровождение программного обеспечения. Основные проблемы и пути решения.
27. Диаграммы потоков данных. Нотации Йордана и Гейна – Сарсона;
Диаграммы потоков данных (DFD)Такая диаграмма состоит из трех типов узлов: узлов обработки данных, узлов хранения данных и внешних узлов, представляющих внешние по отношению к используемой диаграмме источники или потребители данных. Дуги в диаграмме соответствуют потокам данных, передаваемых от узла к узлу. Они помечены именами соответствующих данных. Описание процесса, функции или системы обработки данных, соответствующих узлу диаграммы, может быть представлено диаграммой следующего уровня детализации, если процесс достаточно сложен [1, 53]. Для изображения диаграмм потоков данных традиционно используют два вида нотаций: нотации Йордана и Гейна — Сарсона.
Первым шагом при построении иерархии диаграмм потоков данных является построение контекстных диаграмм,
показывающих, как система будет взаимодействовать с пользователями и другими внешними системами. При проектировании простых систем достаточно одной контекстной диаграммы, имеющей звездную топологию, в центре которой располагается основной процесс, соединенный с источниками и приемниками информации. Для сложных систем строится иерархия контекстных диаграмм, которая определяет взаимодействие основных функциональных подсистем проектируемой системы как между собой, так и с внешними входными и выходными потоками данных и внешними объектами. При этом контекстная диаграмма верхнего уровня содержит набор подсистем, соединенных потоками данных. Контекстные диаграммы следующего уровня детализируют содержимое и структуру подсистем. После построения контекстных диаграмм полученную модель следует проверить на полноту исходных данных и отсутствие информационных связей с другими объектами. Для каждой подсистемы, присутствующей на контекстных диаграммах, выполняется ее детализация с помощью диаграмм потоков данных, при этом необходимо соблюдать следующие правила [53]:
• правило балансировки. Означает, что при детализации подсистемы можно использовать только те компоненты
(подсистемы, процессы, внешние сущности, накопители данных), с которыми она имеет информационную связь на родительской диаграмме;
• правило нумерации. Означает, что при детализации подсистем должна поддерживаться их иерархическая нумерация. Например, подсистемы, детализирующие подсистему с номером 2, получают номера 2.1, 2.2, 2.3 и т. д. При построении иерархии диаграмм потоков данных переходить к детализации процессов следует только после определения структур данных, которые описывают содержание всех потоков и накопителей данных. Структуры данных могут содержать альтернативы, условные вхождения и итерации. Условное вхождение означает, что соответствующие компоненты могут отсутствовать в структуре. Альтернатива означает, что в структуру может входить один из перечисленных элементов. Итерация означает, что компонент может повторяться в структуре некоторое указанное число раз. Для каждого элемента данных может Указываться его тип (непрерывный или дискретный). Для непрерывных данных может указываться единица измерения (кг, см и т. п.), диапазон значений, точность представления и форма Физического кодирования. Для дискретных данных может указываться таблица допустимых значений. Построенную модель системы необходимо проверить на пол- Ноту и согласованность. В полной модели все ее объекты (подсистемы, процессы, потоки данных) должны быть подробно описаны и детализированы. Выявленные недетализированные объекты следует детализировать, вернувшись на предыдущие шаги разработки. В согласованной модели для всех потоков данных и накопителей данных должно выполняться правило сохранения информации: все поступающие куда-либо данные должны быть считаны, а все считываемые данные должны быть записаны. В соответствии с вышесказанным процесс построения модели разбивается на следующие этапы [39]:
1. Выделение множества требований в основные функциональные группы — процессы.
2. Выявление внешних объектов, связанных с разрабатываемой системой.
3. Идентификация основных потоков информации, циркулирующей между системой и внешними объектами.
4. Предварительная разработка контекстной диаграммы.
5. Проверка предварительной контекстной диаграммы и внесение в нее изменений.
6. Построение контекстной диаграммы путем объединения всех процессов предварительной диаграммы в один процесс, а также группирования потоков.
7. Проверка основных требований контекстной диаграммы.
8. Декомпозиция каждого процесса текущей DFD с помощью детализирующей диаграммы или спецификации процесса.
9. Проверка основных требований по DFD соответствующего уровня.
10. Добавление определений новых потоков в словарь данных при каждом их появлении на диаграммах.
11. Проверка полноты и наглядности модели после построения каждых двух-трех уровней.