
- •3. Проектирование сложных объектов основные принципы проектирования.
- •4. Аспекты и стадии проектирования
- •5. Нисходящее и восходящее проектирование и программирование
- •6. Развитие парадигмы программирования (Операциональное программирование, нисходящая технология конструирования программ. Структурное, модульное, объектное и объектно-ориентированное программирование)
- •7. Суть и метод структурного анализа. Основные этапы структурного анализа.
- •8. Программные системы и их жизненный цикл.
- •Процессы жизненного цикла по
- •9. Анализ целевых и разработка требований к программным системам.
- •10. Функциональное моделирование. Стандарты idef0, idef3.
- •11. Информационное моделирование. Стандарты idef1, idef1x
- •12. Методы, модели, современные технологические и инструментальные средства структурного анализа, достоинства и недостатки. Разработка функциональных и информационных моделей.
- •13. Понятие и метод объектно-ориентированного анализа.
- •15. Стадии объектно-ориентированного анализа и определение основных абстракций и механизмов.
- •16. Методы и средства представления. Нотации представления результатов анализа.
- •17. Основы проектирования программных систем, принципы аспекты проектирования. Понятие проекта, методологии проектирования.
- •18. Автоматизация и системы автоматизации проектирования. Процессы разработки проектных решений и проектных процедур.
- •19. Классические методы проектирования и модели представления проектных решений.
- •20. Методы структурного проектирования. Этапы проектирования программных систем.
- •21. Жизненный цикл и этапы проектирования программного обеспечения.
- •Этапы жизненного цикла по:
- •Основные:
- •Модели жизненного цикла по: Водопадная (каскадная, последовательная) модель
- •Итерационная модель
- •Спиральная модель
- •22. Классические технологии разработки программного обеспечения.
- •23. Нисходящее и восходящее проектирование.
- •24. Структурное программирование. Модульное программирование
- •25. Абстракция и абстрагирование. Фундаментальные свойства и принципы объектно-ориентированного представления программных систем.
- •26. Понятие системы, системность, сложная система, системный эффект.
- •Классы, объекты, общая характеристика и отношения между классами и объектами в объектно-ориентированном проектировании.
- •Объектно-ориентированные методы проектирования. Нотации и процессы объектно-ориентированного проектирования
- •Языки визуального моделирования. Язык uml (Unified Modeling Language). Базовые отношения, термины и понятия.
- •Ключевые абстракции и механизмы. Отношения, общие механизмы и диаграммы. Типичные приемы моделирования Общие механизмы языка uml:
- •31. Средства и элементы статических и динамических моделей объектно-ориентированных систем (статические и динамические диаграммы uml).
- •32. Методы и приемы разработки моделей объектно-ориентированных программных систем.
- •33. Основные диаграммы uml (в вопросе по 2-е из 12 основных диаграмм). Представление, сущность, использование.
- •34. Элементы и разработка поведенческих моделей объектно-ориентированных систем. Модели реализации объектно-ориентированных программных систем.
- •35. Паттерны (образцы) проектирования: виды шаблонов и их классификация, распределение «обязанностей» между шаблонами.
- •40. Факторы качества написания программного кода:
- •41. Методы и средства конструирования высококачественного кода.
- •42 Совместная разработка: методы и средства.
- •Методы и средства тестирования и отладки программных приложений.
- •Широкое использование проверенных внешних библиотек.
- •Рефакторинг и оптимизация программного кода.
- •45. Сборка, внедрение и поставка по
- •Выбираем инсталлятор, описываем в нем процесс установки/удаления программы и настраиваем сборку дистрибутива
- •Технологии и средства развертывания, наладки и обслуживания проектов.
- •Язык xml: средства, назначения и особенности использования. Xml и dtd.
- •Методы и средства обработки xml документов с использованием моделей dom и sax, преимущества и недостатки.
- •Языки Extensible Markup Language(xsl) и xsl Transformations (xslt): назначение и особенности использования.
- •Процесс выполнения xslt-преобразования
- •51. Язык xPath и его применение для доступа к элементам xml.
- •52. Унифицированный процесс разработки (rup): общее понятие и терминология.
- •53. Фазы, итерации и циклы разработки. Рабочие процессы, модели и артефакты.
- •54. Модели разработки объектно-ориентированных программных систем и управление рисками.
- •55. Особенности проектирования и разработки распределенных информационных систем.
16. Методы и средства представления. Нотации представления результатов анализа.
На практике для описания системы могут использоваться дополняющие друг друга способы представления:
Формальный текст.
Графическое представление, отображающее системные структуры в виде диаграмм с помощью "пузырьков и стрелок". Графические образы представляют классы, кластеры, объекты и отношения клиентские и наследования.
Документ с требованиями на естественном языке.
Таблица, например, в представлении метода BON
Поддержка формальных текстов и дополнительных средств анализа может быть встроена в среду программирования. Графическая нотации может использовать CASE-средства, пригодные для создания структурных диаграмм. Тексты на естественном языке могут поддерживаться системой обработки и управления документами. Можно обеспечить аналогичные средства поддержки таблиц. Различные инструментальные средства могут быть как автономными, так и интегрированными в единую среду разработки или анализа.
Нотация BON (Business Object Notation)
Метод Business Object Notation (BON), предложенный Nerson и Walden, при минимальной сложности обеспечивает максимальные преимущества и может служить примером комплексного подхода к OO-анализу.
Метод BON основан на трех принципах: бесшовность, обратимость и контрактность. Бесшовность - непрерывность процесса на протяжении всего жизненного цикла ПО. Обратимость - поддержка прямого и обратного процессов разработки: от анализа к проектированию и реализации и наоборот.
Контрактность - точное определение семантических свойств каждого программного элемента.
BON - практически единственный популярный метод анализа, использующий развитый механизм утверждений, что позволяет аналитикам определить не только структуру системы, но и ее семантику (ограничения, инварианты, свойства ожидаемых результатов).
17. Основы проектирования программных систем, принципы аспекты проектирования. Понятие проекта, методологии проектирования.
Под проектированием понимают процесс создания описаний нового или модернизируемого технического объекта (изделия, процесса), достаточных для изготовления или реализации этого объекта в заданных условиях.
Проектирование - процесс, заключающийся в преобразовании исходного описания в окончательное на основе выполнения комплекса работ исследовательского, расчетного и конструкторского характера. Процесс проходит стадии промежуточных описаний, которые называют проектными решениями.
Таким образом, принцип иерархичности означает структурирование представлений об объектах проектирования по степени детальности описаний, а принцип декомпозиции (блочности) разбиение представлений каждого уровня на ряд составных частей (блоков) с возможностями раздельного (поблочного) проектирования.
Кроме расчленения описаний по степени подробности отражения свойств объекта, используют декомпозицию по характеру отображаемых свойств объекта. Такая декомпозиция приводит к появлению ряда аспектов описаний.
Функциональный аспект связан с отображением основных принципов функционирования, характера физических и информационных процессов, протекающих в объекте, и находит выражение в соответствующих функциональных, конструкторских и т.п. схемах и сопровождающих их документах.
Конструкторский аспект связан с реализацией результатов функционального проектирования, т.е. с определением геометрических форм объектов и их взаимных расположением в пространстве.
Технологический аспект относится к реализации результатов конструкторского проектирования, т.е. связан с описанием методов и средств изготовления объектов.
Проект— это уникальная (в отличие от операций) деятельность, имеющая начало и конец во времени, направленная на достижение заранее определённого результата/цели, создание определённого, уникального продукта или услуги, при заданных ограничениях по ресурсам и срокам, а также требованиям к качеству и допустимому уровню риска.
На стадии эскизного проекта (стадии опытно-конструкторских работ - ОКР) проверяется корректность и реализуемость основных принципов и положений, определяющих функционирование будущего объекта, и создается его эскизный проект.
На стадии технического проекта выполняется всесторонняя проработка всех частей проекта, конкретизируются и детализируются технические решения.
На стадии рабочего проекта формируется вся необходимая документация для изготовления изделия. Создается и испытывается опытный образец или пробная партия изделий, по результатам испытаний вносятся необходимые коррективы в проектную документацию, после чего осуществляется внедрение в производство.
Часть проекта, которая заканчивается получением промежуточного проектного решения, называется проектной процедурой. Более мелкие составные части, выполняемые в составе проектной процедуры, называются проектными операциями.
Методологии проектирования информационных систем:
• Методология функционального моделирования работ SADT (Structured Analysis and Design Technique);
• Диаграммы потоков данных DFD (Data Flow Diagrams);
• Методология объектного проектирования на языке UML (UML-диаграммы);
• Модели "Сущность-связь" (ERD - Entity-Relationship Diagrams).