- •Информационные технологии как часть общего понятия «информации»
- •Общее представление об информационной системе и информационных технологиях
- •Этапы развития информационных систем
- •Процессы, протекающие в информационной системе
- •Роль структуры управления в информационной системе
- •Структура информационной системы (сис)
- •Классификация информационных систем
- •Типовые задачи подсистем
- •Стратегические информационные системы
- •Общие сведения о системном построении информационных систем
- •Структура стратизированной информационной системы
- •Типы информационных технологий
- •Информационные технологии обработки данных. Характеристика и назначение.
- •Основные компоненты
- •Информационные технологии управления. Характеристики и назначение.
- •Основные компоненты
- •Информационная технология автоматизации офиса. Характеристики и назначение.
- •Основные компоненты
- •Информационные технологии поддержания принятия решений. Характеристика и назначение.
- •Основные компоненты
- •Информационные технологии экспертных систем.
- •Основные компоненты экспертных систем
- •Техническая база информационной технологии
- •Информационно-логические основы построения эвм
- •Запоминающее устройство
- •Основная память.
- •Логическая структура основной памяти
- •Сравнительные характеристики дисковых накопителей
- •Характеристика информационных каналов
- •1. Передач данных
- •Аппаратура передачи данных (апд)
- •Архитектура компьютерной сети (акс)
- •Программная база информационных технологий
- •Характеристика программных средств
- •Классификация программных средств
- •Операционные оболочки
- •Антивирусные программы
- •Программы обслуживания сети
- •Пакеты прикладных программ
- •Структура интерфейса электронной таблицы
- •База данных и Система управления базой данных (субд).
- •Технология программирования и разработки программного обеспечения
- •Инструментарий технологии программирования
- •Этапы создания Программного обеспечения
- •Логическое и функциональное программирование.
- •Логика предикатов.
- •Форма записи пролог программы.
Технология программирования и разработки программного обеспечения
Классификации методов разработки программного обеспечения (ПО).
Традиционно рассматриваются две классификации разработки ПО:
-
по степени автоматизации процесса разработки ПО;
-
по используемому методу (или подходу) в разработке ПО.
Первая классификация - по степени автоматизации разработки (ПО) делит проектирование и разработку ПО на:
-
традиционное (неавтоматизированное);
-
автоматизированное проектирование (CASE – технология и её элементы).
Традиционное проектирование используется при разработке небольших программ одним программистом с использованием традиционных средств, т.е. алгоритмических языков разного уровня.
Автоматизированное проектирование используется при разработке больших программных продуктов несколькими программистами с поддержкой всех этапов жизненного цикла программного продукта, стандартизацией и унификацией алгоритмов и программ.
Второй тип классификации делит разработку ПО на:
-
Структурное проектирование ПО;
-
Информационное моделирование предметной области и связанных с ней приложений;
-
Объектно-ориентированное проектирование ПО.
Структурное проектирование программного обеспечения предполагает целенаправленное структурирование ПО, его последовательную композицию на отдельные составляющие.
В зависимости от объекта структурирования различают:
-
Функционально-ориентированные методы;
-
Методы структурирования данных
Для функционально-ориентированного метода учитываются, прежде всего функции обработки данных, в соответствии с которыми определяется состав и логика (алгоритмы) отдельных компонентов ПО. Данный подход позволяет с одной стороны упростить процесс разработки ПО и сделать его функционально-понятным. Однако, с другой стороны, с изменением функций обработки данных, или их состава, требуется перепроектирование ПО.
Для метода структурирования данных, прежде всего, осуществляется анализ, структурирование и создание моделей данных, для которых разрабатываются процедуры их обработки. Изменение структур данных, если оно возникает, будет отражаться на процедурах их обработки и потребует перепроектирования ПО.
Информационное моделирование предметной области используется в СУБД при создании баз данных. В основе этого метода используется положение об определяющей роли данных при проектировании ПО и разработка инфологической модели БД (это рассмотривается в разделе СУБД).
Сначала строятся информационные модели данных различных уровней представления (3 уровня):
-
Инфологическая модель, не зависящая от средств программной реализации, хранения, обработки данных и отражающей интегрированной структуры данных предметной области.
-
датологическая модель ориентирована на среду хранения и обработки данных. Датологические модели имеют 2 уровня представления – логический и физический. Физический уровень соответствует организации хранения данных в памяти ЭВМ. Логический уровень данных реализуется в виде:
-
концептуальной модели данных, в которой представлены интегрированные структуры данных разрабатываемой модели (для реализации модели – это таблицы);
-
внешней модели данных – это подмножество структур данных для реализации приложений (обычно это отчёты и формы выдаваемые для конкретных пользователей)
Выбор средств реализации БД определяет вид датологических моделей. Обычно используется реляционное представление данных и соответствующие реляционные языки программирования (Access, FoxPro, Dbase) Данный подход испольуется в CASE-технологиях.
-
выделение классов объектов
-
установление характерных свойств объектов и методов их обработки
-
Создание иерархии класса, установления наследуемых свойств объектов и методов из обработки. Каждый объект объединяет как данные, так и программы обработки данных. С помощью класса одну и ту же программу можно использовать для разных объектов, относящихся к этому классу.
Объектный подход к разработке ПО основывается на следующих принципах:
-
Выделение классов объектов;
-
Установление характерных свойств объектов и методов их обработки;
-
Создание иерархии классов, установление наследуемых свойств объектов и методов их обработки.
Каждый объект объединяет, как данные, так и программу обработки этих данных и относится к определённому классу. С помощью класса одну и ту же программу можно использовать для разных объектов, относящихся к этому классу.
Объектный подход разработки ПО состоит из:
а) объектно-ориентированного анализа предметной области;
б) объектно-ориентированного проектирования;
Объектно-ориентированного анализ заключается в анализе предметной области и выделении объектов, определении их свойств и методов обработки, а также установление взаимосвязи между ними.
Объектно-ориентированное проектирование объединяет процесс объектной декомпозиции системы на классы с использованием моделей данных проектируемой системы на логическом и физическом уровнях.
Для проектирования Программного обеспечения (ПО) с использованием объектно-ориентированного подхода разработаны специальные программные средства (Visual С++, Visual Basic, Delphi, Ado).
Важнейшими принципами объектного подхода является:
-
Инкапсуляция свойств данных и программ в объекте;
-
Наследование;
-
Полиморфизм.
Инкапсуляция означает сочетание структур данных с методами из обработки в абстрактных классах объектов. Класс можем иметь образованные от него подклассы. При построении которых осуществляется наследование данных и методов из обработки, как исходного класса. Механизм наследования позволяет переопределить или добавить новые данные и методы их обработки.
Полиморфизм означает способность объекта реагировать на запрос в соответствии со своим типом. При этом одно и то же имя запроса может использоваться для различных классов объектов.
Объектный подход поддерживается технологическим стандартом фирмы Microsoft - «OLE» (Object Linking and Embedding – связывание и внедрение объектов). Этот стандарт позволяет получать приложения, включающие в свой состав объекты, полученные из других приложений.
Объект, согласно этому стандарту, должен иметь две составляющие:
-
внешнее представление объекта (prescription data)
-
способ редактирования объекта (native data)
При этом каждый объект может либо внедряться (embedding) в приложение, т.е. копироваться как часть приложения, либо связываться (linking) с приложением, т.е. копировать в приложение с последующим отслеживанием всех изменений в объекте, которые будут повторяться в приложениии.