Должны существовать простые объяснения природных процессов, так как природа не действует из каприза или по произволу. А. Эйнштейн Сложность разработки.

Презентация:



Advertisements
Похожие презентации
ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ Лагунов Алексей Юрьевич, к.п.н., доцент.
Advertisements

Системы объектов © Бакунович А.В. 1. Системы объектов Состояние сложного, составного объекта определяется не только значениями его собственных признаков,
Лекция 5 Способы конструирования программ. Основы доказательства правильности.
Что такое система. Понятие системы Система – это сложный объект, состоящий из взаимосвязанных частей (элементов) и существующий как единое целое. Всякая.
Введение в системологию Среда. Структура. Введение в системологию Объект Объект – любой предмет, явление, процесс или состояние, которое воспринимается.
Microsoft Solutions Framework Технологии программирования. Курс на базе Microsoft Solutions Framework Семинар 1. Повтор принципов объектно- ориентированного.
Состояние сложного, составного объекта определяется не только значениями его собственных признаков, но и состояниями объектов частей. От исправности вагонов.
Программное обеспечение компьютера. Совокупность программ, хранящихся в долговременной памяти компьютера, составляют программное обеспечение (ПО) компьютера.
БАЗА ДАННЫХ – ОСНОВА ИНФОРМАЦИОННОЙ СИСТЕМЫ ТЕХНОЛОГИЯ ИСПЛЬЗОВАНИЯ И РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ.
5. Модели систем как основания декомпозиции.
Южаков Владимир Андреевич Лекция 1 Теория информационных процессов и систем.
Разработка программного обеспечения при объектном подходе Объектно-ориентированный подход.
Жизненный цикл ПО. При разработки реального программного продукта возникают сложности. Часто решение задач не так очевидно, как кажется первоначально.
Введение в моделирование систем. Система управления (СУ, САУ, АСУ)
Объектно- ориентированная платформа Windows
Методы структурирования знаний. Берестнева О.Г. Макаров М.А.
Системный подход в моделировании. Типы информационных моделей. Цель урока: Сформировать понятия системы и ее состояния. Выделить основные типы информационных.
Информационные процессы в системах Введение в теорию систем Дома: конспект.
Моделирование как метод познания Моделирование это метод познания, состоящий в создании и исследовании моделей.
Дисциплина «Технология разработки программного обеспечения» Тема 1 « Основы разработки Тема 1 « Основы разработки программного продукта » программного.
Транксрипт:

Должны существовать простые объяснения природных процессов, так как природа не действует из каприза или по произволу. А. Эйнштейн Сложность разработки системы, с которой сталкивается программист, лежит в самой природе системы. Ф. Брукс

Сложность программного обеспечения Сложность реальной предметной области Трудность управления процессом разработки Необходимость обеспечить достаточную гибкость программы Сложность описания поведения больших систем

Сложность предметной области Системное программирование, предметной областью является компьютер Проблемное программирование, предметной областью является часть реального мира

Трудность разработки Основной задачей программиста является создание иллюзии простоты

Гибкость программного обеспечения Программист сам обеспечивает себя элементами, необходимыми для создания программного продукта Сложность описания больших систем Можно достоверно предсказать траекторию брошенного мяча. Было бы удивительно, если бы брошенный мяч резко изменил направление движения. В недостаточно отлаженной программе моделирования полета мяча такая ситуация легко может возникнуть.

Сложные системы 1.Как правило являются иерархическими и состоят из взаимосвязанных подсистем, которые в свою очередь также могут быть разделены на подсистемы, и т.д., вплоть до самого низкого уровня 2.Выбор, какие подсистемы в данной системе считаются элементарными, относительно произволен и в большой степени оставляется на усмотрение исследователя 3.Внутрикомпонентная связь обычно сильнее, чем связь между компонентами 4.Разные сложные системы часто содержат одинаковые структурные части 5.Любая работающая сложная система является результатом развития более простой работающей системы Сложная система созданная с нуля, никогда не заработает. Следует начинать с работающей простой системы!!!

Примеры сложных систем Экспериментальная установка Программный комплекс ROOT Персональный компьютер Человек и др.

Человеческие возможности и сложные системы Максимальное количество структурных единиц информации, за которыми человеческий мозг может одновременно следить ~ 7 2 На восприятие каждой новой единицы информации человеку требуется ~ 5 сек.

Декомпозиция Алгоритмическая декомпозиция Модульная декомпозиция Объектно-ориентированная декомпозиция Компонентная декомпозиция

Роль абстракции Преодолеть трудности восприятия помогает выделение абстракции. Под этим термином понимается концентрация внимания на значимых на настоящий момент свойствах или частях сложной системы и отбрасывание незначительных на данный момент деталей.

Роль иерархии Преодолеть трудности восприятия информации также помогает организация внутри системы иерархии классов и объектов. Объектная структура иллюстрирует схему взаимодействия объектов друг с другом. Структура классов определяет общность структур и поведения внутри системы.

Выводы Программам присуща сложность, которая нередко превосходит возможности человека Задача разработчиков систем – создать у пользователя иллюзию простоты Сложные системы проще исследовать, концентрируя внимание на частях этой системы и на поведении этих частей Сложные системы обычно принимают форму иерархий; полезны обе иерархии классов и объектов