Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы программирование.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
262.94 Кб
Скачать

Вопрос 4. Планирование.

При планировании полезно строить сетевой график. Дуги – работы (вместе с длительностью), вершины – промежуточные состояния (в вершина написаны действия в совершенном виде – «оборудование закуплено», «коллектив сформирован»). На таком графике видна последовательность работ, их длительность.

Критический путь – самый длинный путь от начала до конца.

Все ветви должны быть равнонагружены (хотя это тоже плохо – нет резерва).

Если сроки срываются, то либо увеличивать ресурсы, либо раздвигать сроки.

Планирование неразрывно связано с управлением.

Добавлять людей, деньги («стимулирование»). //У МикроМягких же за срыв сроков лишают премии весь коллектив.

Кроме сетевого графика можно также строить диаграмму Ганта:

-По вертикали выписываем работы, по горизонтали – сроки, ставим промежутки исполнения – удобно смотреть, что должно быть завершено в настоящий момент, какие работы идут. //Диаграмма Ганта более удобна при управлении, чем при планировании.

Управление должно быть постепенным, регулярным. Должен быть запас ресурсов.

Если горит работа на критическом пути, то надо сокращать сроки на последующие работы (увеличивать технологии производства).

//Основа всего – ТЕХНИЧЕСКАЯ ВООРУЖЕННОСТЬ

Вопрос 5. Управление.

Управление – целенаправленная деятельность по достижению некоторой цели.

При управлении полезно использовать сетевой график, построенный при планировании. Дуги – работы (вместе с длительностью), вершины – промежуточные состояния (в вершина написаны действия в совершенном виде – «оборудование закуплено», «коллектив сформирован»). На таком графике видна последовательность работ, их длительность.

Критический путь – самый длинный путь от начала до конца.

Все ветви должны быть равнонагружены (хотя это тоже плохо – нет резерва).

Если сроки срываются, то либо увеличивать ресурсы, либо раздвигать сроки.

Планирование неразрывно связано с управлением.

Добавлять людей, деньги («стимулирование»). //У МикроМягких же за срыв сроков лишают премии весь коллектив.

Кроме сетевого графика можно также строить диаграмму Ганта:

-По вертикали выписываем работы, по горизонтали – сроки, ставим промежутки исполнения – удобно смотреть, что должно быть завершено в настоящий момент, какие работы идут. //Диаграмма Ганта более удобна при управлении, чем при планировании.

Управление должно быть постепенным, регулярным. Должен быть запас ресурсов.

Если горит работа на критическом пути, то надо сокращать сроки на последующие работы (увеличивать технологии производства).

//Основа всего – ТЕХНИЧЕСКАЯ ВООРУЖЕННОСТЬ

Вопрос 6. Тестирование и обеспечение качества.

Программирование – конструктивный процесс, требует высокой квалификации, неточность (оптимистичность).

Тестирование – деструктивный процесс, низкая квалификация, дотошность (пессимистичность).

Для чего нужно тестирование:

  • повышает качество продукта ( его стоимость)

  • тестирование – процесс исполнения с целью нахождения ошибок

Хороший тест – с большой вероятностью находит ошибку.

Как тестировать:

  • тестирование не должно проводиться авторами исходных текстов

  • должна быть конкуренция между программистами и тестировщиками (писать с минимальным числом ошибок, тестировать с начала работ)

  • должно проверяться и ошибочное поведение (сообщения об ошибках должны быть осмысленными)

  • вероятность ошибки пропорциональна числу уже найденных ошибок

  • всегда чётко должен быть оговорен конечный результат

Обычно малые фрагменты программы содержат большое количество ошибок.

Виды тестирования:

  • чёрный ящик (без просмотра исходного текста)

  • белый ящик

test-coverage – покрытие тестами возможных вариантов.

  • модульное тестирование

  • комплексное тестирование

  • получасовое тестирование

Quality assurance (оценка качества)

Отдельная группа, которой запрещено заниматься разработкой, общаться с разработчиками.

QA:

  • эргономика

  • по документации выполнить установку

  • тестирование

  • эффективность (время запуска, скорость работы)

QA должна быть как придирчивый пользователь.

Developers – (программа) – QA – (программный продукт) – users

Если QA нашла ошибки, страдают разработчики.

Если недовольны пользователи, страдает QA.