- •1. Системная и системная программная инженерия.
- •2. Программная инженерия.
- •3. Программная система. Причины сложности программных систем.
- •4. Качество программных систем. Метрики качества.
- •5. Управление качеством. Методы оценки качества процесса и продукта разработки.
- •6. Управление проектом.
- •7. Управление персоналом.
- •9. Понятие технологии разработки пс. Цели проектирования.
- •10. Классический жизненный цикл пс и разработки пс.
- •11-12. Модели жизненного цикла пс.
- •14-16. Парадигмы программирования.
- •15. Понятие объектно-ориентированного проектирования и программирования.
- •17. Понятие объектной модели. Базовые принципы.
- •Абстрагирование
- •19. Инкапсуляция.
- •20. Наследование.
- •21. Полиморфизм. Виды полиморфизма
- •22. Наследование как механизм реализации полиморфизма, создания иерархий классов. Типы наследования.
- •23. Классы. Базовые, производные, полиморфные, абстрактные, виртуаль-ные. Примеры.
- •24. Принципы раннего и позднего связывания.
- •25. Использование языка uml для спецификации
- •26. Описание иерархий классов диаграммами uml.
- •27. Классы-шаблоны. Описание в uml.
1. Системная и системная программная инженерия.
Системная инженерия:
Системная инженерия (англ. System Engineering) - междисциплинарный подход к проблеме создания успешно функционирующих систем и средства для её решения.
Фокусируется (при постоянном внимании к охвату проблемы во всей полноте):
* на определении нужд пользователей и требуемой функциональности на ранних стадиях цикла разработки,
* на документирования требований,
* на синтезе дизайна системы,
* на подтверждении соблюдения пользовательских требований.
Описывает процесс разработки систем и как бизнес-процесс, и как технический процесс.
Охватывает стадии жизни систем от появления замысла до вывода из эксплуатации.
2. Программная инженерия.
Программная инженерия
Программная инженерия — это интегрирование принципов математики, информатики и компьютерных наук с инженерными подходами, разработанными для производства осязаемых материальных артефактов
Дисциплина программной инженерии включается в круг вопросов компьютинга (англ. computing) и может рассматриваться как инженерная область, имеющая более тесные связи со своей базовой дисциплиной — компьютерными науками, — чем другие инженерные области. Среди других инженерных дисциплин она качественно выделяется нематериальностью программного обеспечения и дискретной природой его функционирования. Основываясь на математике и компьютинге, программная инженерия занимается разработкой систематических моделей и надежных методов производства высококачественного программного обеспечения, и данный подход распространяется на все уровни — от теории и принципов до реальной практики создания программного обеспечения, которая лучше всего заметна сторонним наблюдателям.
3. Программная система. Причины сложности программных систем.
Программное обеспечение
Програ́ммное обеспе́чение— совокупность программ системы обработки информации и программных документов, необходимых для эксплуатации этих программ (ГОСТ 19781-90).
Также — совокупность программ, процедур и правил, а также документации, относящихся к функционированию системы обработки данных
Причины сложности
Сложность решаемых задач и алг-ов, вероятностное поведение автоматизир систем.
Наличие человеч. фактора, необх-ть разработки коллективами.
Не сущ матем моделей, кот смогли бы описать поведение сложных программ. Один разработчик, не сможет удержать в голове столько ин-ции. Эти программы превосходят человеческие возможности.
ПО является одним из видов обеспечения вычислительной системы, наряду с техническим (аппаратным), математическим, информационным, лингвистическим, организационным и методическим обеспечением.
4. Качество программных систем. Метрики качества.
Процессы разработки, приобретения и внедрения сложных систем, к которым относятся в частности программные комплексы, должны находится под жестким управленческим контролем.
Отсутствие возможности установки полного контроля вызывает рост количества необоснованных решений, увеличивает финансовые и проектные риски, связанные с разработкой и внедрением систем.
Среди используемых метрик качества программного обеспечения есть универсальные метрики, которые применимы практически ко всем видам программного обеспечения. В то же время большая часть наиболее важных метрик в успешных проектах разрабатывается индивидуально на основе особенностей проекта и характеристик предметной области.
Составляющие качества информационной системы:
Качество инфраструктуры (infrastructure quality): качество аппаратного и поддерживающего программного обеспечения (например, качество операционных систем, компьютерных сетей и т.п.).
Качество программного обеспечения (software quality): качество программного обеспечения информационной системы.
Качество данных (data quality): качество данных, использующихся информационной системой на входе.
Качество информации (information quality): качество информации, продуцируемое информационной системой.
Качество административного управления (administrative quality) – качество менеджмента, включая качество бюджетирования, планирования и календарного контроля.
Качество сервиса (service quality) – качество обучения, системной поддержки и т.п.