- •Общая характеристика технологии программных средств.
- •Принципиальная схема разработки программных средств. (Технология, процесс создания).
- •Способы описания алгоритмов.
- •Описание алгоритма с помощью таблиц решения.
- •Технология системного проектирования программных средств. Принципиальная схема разработки.
- •Современные методы и средства разработки прикладных программных средств.
- •Характеристики качества программного обеспечения.
- •Языки программирования.
- •Надёжность программного обеспечения.
- •Показатели надёжности.
- •Факторы, определяющие надёжность по.
- •Стандартизация. Дисциплина и творчество программирования.
- •Виды программ и программных документов.
- •Виды программных документов.
- •Эксплуатационные документы.
- •Классификация документов.
- •Работы, выполняемые на стадии «Эскизный проект».
- •Структурное программирование.
- •Терминология и обозначения.
- •Очевидно, что g и h являются простыми программами, иначе f была бы не простой.
- •Число управляющих линий в блоке h удовлетворяет соотношению:
- •Графическая иерархическая документация (гид).
- •Простейшие пути повышения качества программ.
- •Классификация ошибок.
- •Сквозной структурный контроль.
- •Стиль программирования и качества программ.
- •Case – технологии.
- •Моделирование данных.
- •Что дает применение case-средств?
- •Средства реализации case-технологий.
- •Общая характеристика case-средства
- •Особенности рабочего интерфейса
- •Начало работы с проектом в среде
- •Разработка диаграммы вариантов использования в среде Rational Rose.
- •Разработка диаграммы классов в среде
- •Диаграмма классов
- •Разработка диаграммы состояний в среде Rational Rose.
- •Разработка диаграммы последовательности в среде Rational Rose.
- •Разработка диаграммы кооперации в среде Rational Rose.
- •Разработка диаграммы компонентов в среде Rational Rose.
- •Разработка диаграммы развёртывания в среде Rational Rose.
- •Практические примеры диаграмм.
- •Актеры.
- •Диаграмма классов (основы)
- •Ассоциации
- •Заказ от одного клиента
- •Полезные советы по использованию диаграмм классов
- •Диаграмма взаимодействия
- •Диаграмма кооперации
- •Диаграмма кооперации
- •Диаграмма пакетов
- •Диаграмма состояний
- •Верификация программ.
- •Восходящее тестирование, нисходящее тестирование.
- •Методы тестирования компонентов.
- •Структура коллектива программистов.
- •Общая структура коллектива, работающего над крупным проектом.
- •Трудовые затраты по видам работ (человеко/месяц).
Факторы, определяющие надёжность по.
Общие факторы |
|
Факторы, связанные с разработкой ПО |
|
Эксплуатационные факторы |
|
|
|
|
|
Конструктивные факторы |
|
Технологические факторы |
|
Организационные факторы |
|
|
|
|
|
Процедуры управления разработкой |
|
Принятые конструктивные решения |
|
Полнота и качество документации |
|
|
|
|
|
Подготовка и повышение квалификации персонала |
|
Качество программирования |
|
Степень адаптации документации |
|
|
|
|
|
Архитектура системы |
|
Объем программы |
|
Простота изучения и использования |
|
|
|
|
|
Языки программирования |
|
Логическая сложность |
|
Качество обучения пользователей |
|
|
|
|
|
Размеры и стоимость системы |
|
Степень выполнения требований |
|
Степень выполнения стандартов |
|
|
|
|
|
Степень сложности системы |
|
Управление надёжностью |
|
Защищенность информации |
|
|
|
|
|
Структурное построение |
|
Степень обучения персонала |
|
Микроклимат в группе |
|
|
|
|
|
Наличие опыта разработки |
|
Степень информированности персонала |
|
Временные ограничения |
|
|
|
|
|
Степень выполнения последовательности работ |
|
|
|
|
Стандартизация. Дисциплина и творчество программирования.
Введение стандартов в процесс создания программного изделия направлено на достижение следующих результатов:
Улучшения процесса разработки программ, и, следовательно, улучшение показателей, таких как надёжность.
Обеспечение чтения и понимания программ посторонними лицами, что ведёт к снижению числа ошибок, упрощает пользование и эксплуатацию, улучшает испытуемость, документированность, мобильность, улучшение подготовки новых кадров.
Несмотря на индивидуальный творческий характер труда программиста, создание программной документации носит алгоритмический характер. Производство программ регулируется ЕСПД.
ЕСПД представляет собой комплекс взаимосвязанных Государственных стандартов, устанавливающих общее положения, виды программ и программной документации, правила разработки, оформления, обращения программ, и распространяется на документацию всех типов программ независимо от назначения, области их использования и разработчика.
В стандартах ЕСПД устанавливаются требования, регламентирующие разработку, производство, тиражирование и сопровождение программ, что обеспечивает возможность:
а) унификации программных изделий для взаимного обмена и применения ранее созданных программ в новых разработках;
б) снижение трудоёмкости и повышение эффективности разработки, сопровождения, изготовление и эксплуатацию программных изделий;
в) автоматизация изготовления и хранения программной документации.
В состав ЕСПД входят:
Основополагающие и организационно-методологические стандарты;
Стандарты, определяющие виды, форму и содержание программных документов;
Стандарты, обеспечивающие автоматизацию процесса разработки программных документов.
Стандарты ЕСПД распределены на группы:
Код группы |
Наименование |
0 |
Общие положения |
1 |
Основополагающие стандарты |
2 |
Правила выполнения документации разработки |
3 |
Правила выполнения документации изготовления |
4 |
Правила выполнения документации сопровождения |
5 |
Правила выполнения эксплуатационной документации |
6 |
Правила обращения программной документации |
7,8 |
Резервные группы |
9 |
Прочие стандарты |
Пример: ГОСТ 19.001 – 77
19. – номер класса (ЕСПД)
.0 – код группы стандартов
01 – порядковый номер стандарта в данной группе
77 – год разработки (год регистрации)
В практическом отношении наиболее важно унифицировать следующие этапы разработки программ:
Проектирование
Анализ задач;
Фиксация требований к программе;
Разбиение общеё задачи на подзадачи;
Анализ структур данных;
Разработка общей структуры программ с выделением основных модулей и определение интерфейса между ними;
Написание детальной спецификации модулей.
Вычерчивание блок-схем.
Методы проверки, отладка и тестирование.
Документирование.
Планирование о оценка качества и количества труда отдельных программистов и коллективов.
Вопрос о стандартизации и унификации процесса программирования непосредственно связан с вопросами дисциплины и эффективной организации труда программистов. Как и всякий интеллектуальный труд работа программиста трудно поддаётся контролю и оценки. Поскольку стандартизация способствует лучшему контролю и регламентации труда, побуждает скорее к дисциплине, чем к собственному самовыражению в изобретении, остроумия, то введение стандартов наталкивает на определённое сопротивление со стороны программистов. Важнейшим фактом в разработке эффективных и приемлемых стандартов является активное участие самих программистов в их разработке и совершенствования по мере накопления опыта.