- •Устройство эвм
- •Процессорор
- •Микропрограммирование
- •Способы ускорения традиционных эвм
- •Нетрадиционные архитектуры эвм
- •//Архитектура бесперспективна, ибо запрограммировать задачу для такой машины по-видимому невозможно.
- •Матричные
- •Векторные
- •Конвейерные
- •Торовые (Grid)
- •История эвм
- •Традиционные архитектуры эвм на примере ibm/360
- •Risc, cisc – компьютеры
- •Основные принципы построения hll-машины «Самсон»
- •Организация памяти
- •Команды чтения-записи
- •Арифметические команды
- •Логические команды
- •Передача управления
- •Организация циклов
- •Работа с вырезками
- •Реализация виртуальной памяти
- •Реализация вызовов процедур
- •Сoroutine - сопрограмма
- •Парал. Процессы
- •Понятие технологии программирования
- •Жизненный цикл программы
- •Реализация
- •Постановка задачи, оценка осуществимости
- •Планирование
- •Управление
- •Проектирование, этапы проектирования
- •Вопрос 20(7). Технология Real. Статическая модель.
- •Конвертер из sdl в объектный программный код
- •Качество разработки по
- •Стандарт качества iso
- •Стандарт cmm
- •29. Организация коллектива разработчиков
- •30.Тестирование программ
- •31.Психология программирования
- •32.Документирование
- •33. Case-технологии
- •34.Сопровождение
- •35.Системы реального времени
- •36.Понятия сбоев и отказов
- •37.Инструментальная и целевая эвм
- •38.Комплекс вычислительных средств
- •39.Параллельные процессы, работа с временными интервалами
- •40.Организация вычислительных процессов
- •1.Процессы.
- •2. Данные.
- •41.Технология rtst
- •42.Технология real. Статическая модель
- •43.Технология real. Динамическая модель
Стандарт cmm
В 1986 г. SEI(Software Engineering Institute) и корпорация Mitre под руководством Уоттса Хамфри (Watts Humphrey) приступили к разработке критериев оценки зрелости технологических процессов
1991 – CMM v1.0 - The Capability Maturity Model of Software(модель зрелости возможностей)
Уровни зрелости компании в модели CMM:
1. Начальный(Initial)
непредсказуемое качество процесса
индивидуальные решения для каждого проекта
2. Повторяемый(Repeatable)
Управление требованиями (Requirements management).
Планирование проекта разработки ПО (Software project planning).
Отслеживание хода проекта и контроль (Software project tracking and oversight).
Управление субподрядчиками разработки ПО (Software subcontract management).
Обеспечение уверенности в качестве разработки ПО (Software quality assurance).
Управление конфигурацией продукта (Software configuration management).
3. Определенный(Defined)
Цель упорядочивания работы организации (Organization Process Focus).
Определение (стандартного) процесса организации (Organization Process Definition).
Программа обучения (Training Program).
Интегрированное управление разработкой ПО (Integrated Software Management).
Технология разработки программных продуктов (Software Product Engineering).
Межгрупповая координация (Intergroup Coordination).
Экспертные (совместные) оценки коллег (Peer Reviews).
4. Управляемый(Managed)
Количественное управление процессом (Quantitative Process Management).
Управление качеством ПО (Software Quality Management)
5. Оптимизированный(Optimizing)
Предотвращение дефектов (Defect Prevention).
Управление изменением технологий (Technology Change Management).
Управление изменением процесса (Process Change Management).
//Большинство российских компаний – 1-2, МикроМягкие – 3-4
К преимуществам модели SEI SW-CMM относится то, что она ориентирована («заточена») на организации, занимающиеся разработкой программного обеспечения. В этой модели удалось более детально проработать требования, специфичные для процессов, связанных с разработкой ПО. Вследствие этого в SEI SW-CMM приведены не только требования к процессам организации, но и примеры реализации этих требований.
Основным же недостатком SW-CMM является то, что модель не авторизована в качестве стандарта ни международными, ни национальными органами по стандартизации. Впрочем, CMM давно уже стала промышленным стандартом де-факто.
KPA – Key Process Area – для 3-5
Цели
Обяз. по вып-ю
Возможн. Вып-я
Ключевые практики (?)
Контроль и измерение
Всего СММ определяет следующий минимальный набор требований: реализовать18 ключевых областей процесса разработки ПО, содержащих 52 цели, 28 обязательств компании, 70 возможностей выполнения (гарантий компании) и 150 ключевых практик.
29. Организация коллектива разработчиков
Иерархическая: проблема – интерфейсы, комплексная отладка занимает много времени, теряется время на коммуникацию (осуществляется через верхние уровни), теряется смысл сообщений. Минус: все решения принимаются одним человеком, но он может заблуждаться, может знать меньше.
Ядро: один пишет прототип, потом из него возникает продукт. Проблема: сложен переход.
Матричная модель: в ней есть узкие специалисты, которые заняты сразу в нескольких проектах.
Проблема – люди зацикливаются на своей работе, структуризация продукта, не все могут быть одинаково загружены.
"Хирургическая" схема: главный "хирург", зам. гл. "хирурга", подмастерья (документатор, специалист по оптимизации, менеджер). Работает для небольших комплексов, для больших проектов – плохо.
+: нет проблемы согласования, программа получается концептуально целой и грамотной
-: увеличение рисков, все хотят быть главными хирургами, но не подмастерьями.
Microsoft Solution Framework
Development – наиболее традиционная роль – разработка и начальное тестирование продукта
Program management – управление программой. Исполнитель этой роли отвечает (но не руководит!) за организацию (ведение графика работ, утренние 15-минутные совещания), соответствие стандартам и спецификациям, фиксация нарушений, написание технической документации.
Product management – управление продуктом. Исполнители этой роли отвечают за общение с заказчиком, написание спецификации, разъяснение задач разработчикам.
User education – обучение пользователей. Написание пользовательской документации, обучающих курсов, повышение эффективности труда пользователей.
Logistic management – установка, сопровождение и техническая поддержка продукта, а также материально-техническое снабжение коллектива.
Testing – тестирование. Выявление и устранение недоработок, исправление ошибок, другие функции QA.
Process Model
- Envisioning (5%-10%)– выработка единого понимания проекта всеми членами коллектива. Эта фаза заканчивается разработкой формализованного документа:
problem statement - описание задачи объёмом не более 1 страницы;
vision statement - от чего хотим уйти, чего хотим добиться;
solution concept - что хотим внедрить и как;
user profiles - кто будет этим пользоваться;
business goals - возврат инвестиций;
design goals - конкретные цели и ограничения продукта, его конкретные свойства.
// vision approved
- Planning (35%-40%)- планирование очередного цикла разработки:
функциональные спецификации;
план-график работ;
оценка рисков.
//project plan approved
- Developing (30%-35%)- разработка, причём рекомендуются различные технологические приёмы, например, переиспользование кусков кода, программирование по контракту, написание защищённого от ошибок ПО и т.д.
// a-version
- Stabilizing (15%-20%)- - появление стабильной версии, готовой к использованию.
// b- version