Организация программного кода при создании информационных систем Подготовил: Студент группы МЭК-21 Акименко В. И. Руководитель: Доц. Яровенко А. Н.

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



Advertisements
Похожие презентации
Где хранить данные в web- приложении page –JSP страница request – HTTP запрос session – сессия пользователя application – веб-приложение Static Java class.
Advertisements

MVVM pattern in Adobe Flex Докладчик: Мещеряков Сергей.
Чистый код паттерны проектирования Олег Антонов Senior Web Developer MobiDev Corporation.
Разработка приложений с использование паттерна MVVM Сергей Лутай Руководитель департамента разработки мобильных приложений Digital Cloud Technologies Silverlight.
Программная инженерия Дмитриев Андрей Владиславович 2008.
Информационная система. В широком смысле информационная система - это совокупность технического, программного и организационного обеспечения, а также.
Лекция 3 Архитектура информационных систем. Вопросы лекции 1. Архитектура информационной системы 2. Архитектурный подход к реализации информационных систем.
Архитектура для автоматизированного тестирования UI Антон Бевзюк Intel.
Методология разработки программного обеспечения введение.
Лекция 1 MVC (Model-View-Controller) - это конструкционный шаблон, который описывает способ построения структуры приложения, сферы ответственности и взаимодействие.
Апробация технологий Silverlight/LINQ/WCF для создания web-приложений, ориентированных на интенсивную обработку данных Дипломная работа студента 545 группы.
Исполнитель: Утяшева И.А. Научный руководитель: к.ф.-м.н. Винокур В.В.
Трехслойная архитектура приложений, основанных на использовании баз данных.
Лекция 8 Обзор паттернов проектирования (Design patterns)
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Определение требований к системе автоматизации дистанционного образования ФИТа на основе анализа ПО «Прометей» Студент: Саватеев О. Руководитель: Васючкова.
Презентация дисциплины по выбору Для студентов, обучающихся по направлению «Прикладная информатика» (магистерская программа «Прикладная информатика.
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Информационная система. Компьютер – справочная система Терминалы используются в магазинах, авиакассах, банках, гостиницах и т.д.
Транксрипт:

Организация программного кода при создании информационных систем Подготовил: Студент группы МЭК-21 Акименко В. И. Руководитель: Доц. Яровенко А. Н.

Информационная система В широком смысле информационная система есть совокупность технического, программного и организационного обеспечения, а также персонала, предназначенная для того, чтобы своевременно обеспечивать надлежащих людей надлежащей информацией. ИС в узком смысле рассматривают как программно- аппаратную систему, предназначенную для автоматизации целенаправленной деятельности конечных пользователей.

Какие требования? 1. Масштабируемость! 2. Гибкость. 3. Модульность. 4. Функциональность. 5. Удобство. 6. И др.

Как создать масштабируемую, гибкую, модульную архитектуру приложения …и не сойти с ума?

Организация работы Хорошо: RUP – Rational Unified Process (рациональный унифицированный процесс разработки) – 4 этапа, итеративная разработка, постоянное уточнение. Плохо: WFM – Waterfall model (модель разработки типа «Водопад») – 5 этапов, шаг за шагом, без оглядки.

Глобальная архитектура Рекомендуемые: Client-server – сервер хранит данные и часть бизнес логики, клиентское приложение потребляет эти данные и также содержит часть бизнес логики. Client-service-server (service-oriented architecture) – сервер хранит данные, сервис взаимодействует с данными и обрабатывает их, клиент потребляет обработанные данные. Не рекомендуемые: Standalone – все в одном приложении. Peer-to-peer – основное взаимодействие ведется непосредственно между несколькими клиентами.

Проектирование Хорошо : DDD – Domain-driven design (Проблемно-ориентированное проектирование) метод проектирования, при котором структура создаваемого ПО отражает зависимости предметной области. Плохо: DDD – Data-driven design (Проектирование на основе структуры данных) метод проектирования, при котором структура создаваемого ПО отражает структуру обрабатываемых в системе данных.

Программирование Хорошо: TDD – Test-driven development (Разработка через тестирование) – сначала тест, потом код. Плохо: FDD – Feature-driven development (разработка на основе функциональности) – сразу код, потом, возможно, тест, если будет время.

Детали реализации Шаблоны разделения кода: MVC – Model-View-Controller (модель-представление-контроллер) – шаблон разделения кода, когда вся логика разбивается на 3 части: модель – содержит данные и бизнес логику представление – содержит логику отображения данных контроллер – выбирает необходимые данные из модели и передает их в представление (представление знает о модели) MVVM – Model-View-ViewModel (модель-представление-модель представления) – шаблон разделения кода, когда вся логика разбивается на 3 части: модель – содержит данные и бизнес логику представление – содержит логику отображения данных модель представления – формирует специальные объекты из данных модели, которые связываются с представлением (представление знает о модели представления) Также полезные: MVP – Model-View-Presenter

Детали реализации Шаблоны инициализации объектов: Основной – Factory Pattern (фабрика объектов) – порождающий шаблон проектирования, предоставляющий объектам унифицированный интерфейс для создания экземпляров других объектов. Также полезные: Builder Prototype Singleton Multiton

Детали реализации Шаблоны структуры: Основной – Bridge Pattern (мост) – структурный шаблон проектирования, используемый чтобы «разделять абстракцию и реализацию так, чтобы они могли изменяться независимо». Также полезные: Facade Flyweight Adapter Decorator

Детали реализации Шаблоны взаимодействия: Полезные все при грамотном использовании: Template Method Chain of responsibility Command State Iterator И другие…

Это не так сложно масштабируемая, гибкая, модульная архитектура приложения + заказчик (любой) с деньгами = PROFIT

Источники Вики Еще вики Хабр Avajava

Спасибо за внимание!