- •1. Тенденции развития ит. Понятие программного обеспечения.
- •2. Рынок по в России и других странах. Защита авторских прав разработчиков.
- •3. Обобщенные критерии качества по.
- •4. Элементарные критерии качества и метрики по.
- •5. Факторы, влияющие на выбор системы программирования.
- •6. Жизненный цикл по.
- •7. Функционально-ориентированная стратегия разработки по.
- •8. Принципы построения схемы иерархии.
- •9. Объектно-ориентированная стратегия разработки по.
- •10. Гибкая технология разработки по.
- •11. Риски при разработке по.
- •12. Стандарт uml.
- •13. Диаграммы прецедентов.
- •14. Сценарии.
- •15. Этап анализа требований.
- •16. Отношения между классами: ассоциации.
- •17. Отношение агрегирования.
- •18. Отношение зависимости.
- •19. Диаграммы классов.
- •20. Диаграммы объектов.
- •21. Эволюция в процессе объектно-ориентированной разработки.
- •22. Понятие объекта и класса.
- •23. Диаграммы последовательностей.
- •24. Case-средства.
- •25. Сопоставление объектно-ориентированной и функционально-ориентированной стратегий.
- •26. Базовые конструкции структурного программирования.
- •27. Теоремы структурного программирования.
- •28. Декомпозиция структурных схем.
- •29. Типы структурных схем, тождественные преобразования. (???).
- •30. Оптимизация выражений
- •31. Оптимизация циклов.
- •32. Псевдокод и пошаговая детализация.
- •33. Диаграммы деятельности.
- •34. Методы экономии оперативной памяти.
- •35. Методы экономии внешней памяти.
- •36. Способы организации памяти на внешних носителях.
- •37. Организация коллективов программистов.
- •38. Организация графического интерфейса.
- •39. Тестирование: стратегия белого ящика.
- •40. Тестирование: стратегия черного ящика.
- •41. Тестирование программной системы.
- •42. Автономное и комплексное тестирование методов.
- •43. Типы программных ошибок.
- •44. Отладка: методы «грубой силы»
- •45. Интеллектуальные методы отладки.
- •46. Принципы отладки.
- •47. Инспекции по.
- •52. Ссылки на классы и указатели на методы
40. Тестирование: стратегия черного ящика.
Стратегия черного ящика (black box), доступна только спецификация:
- метод эквивалентных разбиений;
- метод анализа граничных условий.
Метод эквивалентных разбиений:
- Множество потенциально возможных ошибок разбивается на непересекающиеся подмножества.
- Область значений входных переменных (тестовых наборов) разбивается на классы эквивалентности.
- Каждому классу эквивалентности ставится в соответствие подмножество возможных ошибок.
(дост.
тестового набора из центра I-II-III)
Для того, что бы обнаружить все ошибки, принадлежащие подмножеству с номером n, достаточно использовать один тестовый набор из класса эквивалентности N.
Количество тестовых прогонов = количеству классов эквивалентностей.
Приемы, которые позволяют воспользоваться методом эквивалентных разбиения:
Выделение неправильных классов эквивалентности. (Это такой набор входных данных, с которыми система не должна, но отреагировать правильно обязана).
Если в спецификации есть какие-то условия поведения, то эти особенности тоже могут формировать классы эквивалентности.
Метод анализа граничных условий:
Тестовые наборы принадлежат границам классов эквивалентности или располагаются рядом с границами.
Тестовые наборы для максимальных и минимальных значений входных данных.
Тестовые наборы принадлежат границам области результатов и пограничным областям.
Тестовые наборы для максимальных и минимальных значений выходных данных.
41. Тестирование программной системы.
Тестирование интерфейса пользователя.
Тестирование на предельных объемах.
Тестирование на предельных нагрузках.
Тестирование средств защиты.
Тестирование производительности.
Тестирование требований к памяти.
Тестирование совместимости.
Тестирование надежности.
Тестирование восстановления.
Тестирование инсталляции.
Удобство и т.д. – хорошая диагностика, эстетика (размещение элементов и т.д.)
Объемы входных данных (объем кода). Для БД это количество записей – сделать программу генератор записей. Для ОС надо много задач открыть.
Имеет отношение к системам реального времени. Для ОС (2) и (3) примерно одинаковы.
Админ/пользователь.
Время отклика.
Количество потребляемой памяти.
Версии (совместимость снизу вверх) – старая версия работает на новом компьютере. У СУБД примерно тоже самое.
Время наработки на отказ (время эксплуатации до первого сбоя); Количество ошибок, обнаруженное за некоторое время.
После сбоя; обработка исключительных ситуаций.
42. Автономное и комплексное тестирование методов.
Автономное тестирование – тестирование отдельного метода(модуля) тем, кто его разрабатывал.
Автономное тестирование более трудоемко.
Комплексное тестирование позволяет охватить больше вариантов, то есть подпрограммы, протестированные ранее, подвергаются дополнительной проверке.
Автономное тестирование может проводиться одновременно несколькими программистами.
При комплексном тестировании раньше обнаруживаются ошибки, возникающие при взаимодействии компонентов программной системы.
Если мы тестируем всю систему в целом, то ничего кодировать дополнительно не надо.
Автономное тестирование требует дополнительного программирования заглушек.
