Средства разработки программного обеспечения реферат

Обновлено: 30.06.2024

Средства разработки программного обеспечения – совокупность приемов, методов, методик, а также набор инструментальных программ (компиляторы, прикладные/системные библиотеки и т.д.), используемых разработчиком для создания программного кода, отвечающего заданным требованиям.

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

Основные средства, используемые на разных этапах разработки программ

При анализе возможностей средств разработки программного обеспечения в качестве критериев оценки могут применяться такие критерии как:

  • скорость выполнения разработанного программного обеспечения,
  • кроссплатформенность разработанного программного обеспечения,
  • поддержка работы с сетью при помощи API функций сокетов,
  • возможность реализации объектно-ориентированных методов программирования,
  • возможность запуска программ в виде службы операционной системы Windows,
  • наличие развитой системы помощи,
  • поддержка стандартных библиотек и компонентов,
  • сложность разработки интерфейса в данной среде,
  • условия распространения данной среды разработки программного обеспечения (платно или бесплатно) и т.п.

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

  • Проектирование приложения.
  • Реализация программного кода приложения.
  • Тестирование приложения.

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

Средства проектирования приложений

На этапе проектирования приложения в зависимости от сложности разрабатываемого программного продукта, напрямую зависящего от предъявляемых требований, выполняются следующие задачи проектирования:

  • Анализ требований.
  • Разработка архитектуры будущего программного обеспечения.
  • Разработка устройств основных компонент программного обеспечения.
  • Разработка макетов Пользовательских интерфейсов.
  • BPMN (Vision 2003 + BPMN, AcuaLogic BPMN, Eclipse, Sybase Power Designer).
  • Блок-схемы (Vision 2003 и многие другие).
  • ER-диаграмы (Visio 2003, ERWin, Sybase Power Designer и многие другие).
  • UML-диаграмы (Sybase Power Designer, Rational Rose и многие другие).
  • макеты, мат-модели и т.д.

Иногда, когда разрабатываемый программный продукт предназначен для автоматизации какой-либо сложной деятельности задача Анализа (Моделирования) выполняется до составления технических требований к будущему продукту. Результаты анализа позволяют сформировать обоснованные требования к той или иной функциональности разрабатываемой программы и просчитать реальную выгоду от внедрения разрабатываемого продукта. Более того, иного получается так, что по результатам анализа первоначальные цели и задачи автоматизации кардинально меняются или по результатам оценки эффективности разработки и внедрения принимается решение продукт не разрабатывать.

Целью второй и третьей задачи из приведенного списка задач является разработка модели (описания) будущей системы, понятной для кодировщика – человека, который пишет код программы. Здесь огромное значение имеет то, какую парадигму программирования (парадигму программирования также необходимо рассматривать как средство разработки) необходимо использовать при написании программы. В качестве примера основных парадигм необходимо привести следующее:

  • Функциональное программирование;
  • Структурное программирование;
  • Императивное программирование;
  • Логическое программирование;
  • Объектно-ориентированное программирование (прототипирование; использование классов; субъективно-ориентированное программирование ).

Выбор её во многом зависит от сложившихся привычек, опыта, традиций, инструментальных средств, которыми располагает коллектив разработчиков. Иногда разрабатываемый программный продукт настолько сложен, что для решения ряда задач в разных компонентах системы используются разные парадигмы. Необходимо отметить, что выбор того или иного подхода накладывает ограничения на средства, которые будут применены на этапе реализации программного кода. Результатом решения данной задачи в зависимости от подхода могут быть (в скобках приведены программные средства, которые могут быть использованы для их получения):

  • диаграмма классов и т.д (Ration Rose, Sybase PowerDisigner и многие другие).
  • описание модулей структур и их программного интерфейса (например, Sybase PowerDisigner и многие другие).

Разработка макетов пользовательских интерфейсов подразумевает создание наглядного представления того, как будут выглядеть те или иные видеоформы, окна в разрабатываемом приложении. Решение данной задачи основывается на применение средств дизайнера, которые в данной статье рассматриваться не будут.

Средства реализации программного кода

На этапе реализации программного кода выполняется кодирование отдельных компонент программы в соответствии с разработанным техническим проектом. Средства, которые могут быть применены, в значительной степени зависит от того, какие подходы были использованы во время проектирования и, кроме этого, от степени проработанности технического проекта. Тем не менее, среди средств разработки программного кода необходимо выделить следующие основные виды средств (в скобках приведено примеры средств):

Средства тестирования программ

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

  • Тестирование на отказ и восстановление.
  • Функциональное тестирование.
  • Тестирование безопасности.
  • Тестирование взаимодействия.
  • Тестирование процесса установки.
  • Тестирование удобства пользования.
  • Конфигурационное тестирование.
  • Нагрузочное тестирование.

Среди основных видов средств, которые могут быть применены для выполнения поставленных работ можно привести следующие:

  • средства анализа кода, профилирования (Code Wizard – ParaSoft, Purify – Rational Softawre. Test Coverage – Semantic и т.д.);
  • средства для тестирования функциональности (TEST – Parasoft, QACenter – Compuware, Borland SilkTest и т.д.);
  • средства для тестирования производительности (QACenter Performance – Compuware и т.д).

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

При разработке сложных программ в них выделяют головной управляющий модуль, подчиненные ему модули, обеспечивающие реализацию отдельных функций управления, функциональную обработку (т.е. непосредственную реализацию основного назначения программного комплекса), а также вспомогательные модули, обеспечивающие сервисное обслуживание пакета (например, сбор и анализ статистики работы программы… Читать ещё >

Современные методы и средства разработки программного обеспечения ( реферат , курсовая , диплом , контрольная )

Современные методы разработки ПО

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

Этот метод является незаменимым при разработке сложных по характеру и больших по объему программ, когда к их разработке необходимо привлекать большое число программистов, работающих параллельно. Он позволяет концентрировать внимание разработчиков на наиболее ответственных частях программы, а также облегчает возможность постоянного контроля за ее работоспособностью по мере разработки, отладки и объединения отдельных составляющих программ за счет организации непрерывности этого процесса в течение всей разработки.

Модульное проектирование

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

Модуль — это последовательность логически взаимосвязанных фрагментов задачи, оформленных как отдельная часть программы. При этом программные модули должны обладать следующими свойствами:

  • § на модуль можно ссылаться (т.е. обращаться к нему) по имени, в том числе и из других модулей;
  • § по завершении работы модуль должен возвращать управление тому модулю, который его вызывал;
  • § модуль должен иметь один вход и выход;
  • § модуль должен иметь небольшой размер, обеспечивающий его обозримость.

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

Модульный принцип разработки программ обладает следующими преимуществами:

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

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

Структурное программирование

Актуальная для начального периода развития и использования ЭВМ проблема разработки программ, занимающих минимум основной памяти и выполняющихся за кратчайшее время, в последующем в связи резким падением стоимости аппаратной части ЭВМ, значительным возрастанием их быстродействия и объемов памяти сменилась необходимостью разработки и применения принципиально новых методов составления программ. Все это нашло свое воплощение в разработке принципа структурного программирования. Одной из целей структурного программирования было стремление облегчить разработку и отладку программных модулей, а главное — их последующее сопровождение и модификацию.

В настоящее время структурное программирование — это целая дисциплина, объединяющая несколько взаимосвязанных способов создания ясных, легких для понимания программ. Эффективность применения современных универсальных языков программирования во многом определяется удобством написания с их помощью структурных программ.

CASE-технологии

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

Технологии RAD

Это дало пользователю возможность, получая уже с первых шагов конкретное представление о характере реализации задачи, уточнять ее постановку. Тем самым облегчался процесс экспериментального поиска нужного решения автоматизации задачи. Благодаря тесному взаимодействию разработчика с заказчиком (пользователем) на самом ответственном этапе создания прикладных программ между ними достигалось быстрое взаимопонимание цели поставленной задачи и возможности ее автоматизации в данных конкретных условиях. Это повышало скорость разработки программ и послужило основанием для названия такой технологии RAD (Rapid Application Development — быстрая разработка программ), которая получила широкое распространение.

Data Warehouse

Другое направление разработки прикладных программных средств, олицетворяющее собой современный подход к реализации широкого круга задач для принятия управленческих решений, базируется на концепции создания специального хранилища данных (Data Warehouse). Основное отличие концепции Data Warehouse от традиционного представления баз данных заключается в следующем:

  • § во-первых, в том, что актуализация данных в Data Warehouse означает не обновление элементов информации, а добавление новых элементов к уже имеющимся (что расширяет возможности проведения различного рода сравнительного анализа);
  • § во-вторых, в том, что наряду с информацией, непосредственно отражающей состояние системы управления, в Data Warehouse аккумулируются и метаданные.

Основные типы метаданных Data Warehouse отражают:

  • § структуру и содержимое хранилища;
  • § соответствие между исходными и выходными данными;
  • § объемные характеристики данных;
  • § критерии архивирования;
  • § отношения между данными;
  • § информацию по кодированию;
  • § интервал жизни данных и т. п.

Концепция Data Warehouse поддерживается RAD средствами разработки прикладного ПО.

Концепция Data Warehouse обеспечивает возможность разработки программных приложений для поддержки процессов принятия решений с использованием OLAP-систем.

Система OLAP (On-Line Analytical Process) предоставляет возможность разработки информационных систем, ориентированных на yна организацию многомерных баз данных и создание корпоративных сетей, а также обеспечивает поддержку Web-технологий в сетях Internet/Intranet.

Успешное применение инструментальных средств OLAP-систем объясняется быстротой разработки приложений, гибкостью и широкими возможностями в области доступа к данным и их преобразования. В настоящее время на рынке ПО предлагается большое число OLAP-стем, разработчиками которых являются различные фирмы, например IBM, Informix, Microsoft, Oracle, Sybase и др.

Гост

ГОСТ

Общие сведения

Инструментальные средства разработки программного обеспечения – это программные инструменты, предназначенные для обеспечения полного цикла проектирования программного продукта (написание текста программы, компиляция, компоновка, отладка, тестирование, сопровождение и др.).

Инструментальные средства могут представлять собой или набор отдельных программ (Software tools) для выполнения специальных задач проектирования программного обеспечения, или интегрированную среду разработки (IDE - Integrated development environment) с графическим интерфейсом со встроенными инструментами проектирования.

Также сейчас получили развитие так называемые SDK (Software development kit) – это комплекты средств разработки программного обеспечения, позволяющие использовать специальные технологии (например, разработанные отдельной фирмой или использующие особенности конкретной компьютерной платформы).

Установка такого SDK на компьютер позволяет программисту использовать дополнительные возможности для написания программного обеспечения. Существуют SDK, ориентированные на разработку целевого программного обеспечения – например, для написания графических программ или программ для игровых приставок и т.п.

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

Стандартный набор инструментальных средств

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

Готовые работы на аналогичную тему

  1. Специализированные редакторы текстов предназначены для ввода и редактирования исходного текста программы. Обладают такими возможностями как подсветка синтаксиса языка различными цветами, подсвечивание текстовых ошибок, поддержка оформления структуры текста и генерации части текста в соответствии с правилами языка. Редакторы могут быть как моноязычными, поддерживающими только лексику одного языка программирования, так и мультиязычными, могут поставляться в виде отдельного приложения или встраиваться в интегрированную среду разработки (IDE).
  2. Программы-компиляторы транслируют текст программы с языка программирования в машинный код (исполняемый файл) без её выполнения. Компилятор может в процессе преобразования оптимизировать код программы с учетом версии языка программирования и особенностей аппаратной платформы, для которой производится трансляция.
  3. Программы-компоновщики производят компоновку программы из нескольких модулей, подключают нужные библиотеки, определяют ссылки между модулями (то есть общие функции, переменные, данные) и связывают модули между собой по этим ссылкам. В результате компоновщик выдаёт исполняемый файл.
  4. Программы-отладчики предназначены для анализа выполнения и выявления ошибок в работе программы. Они предоставляют возможность или пошагового отслеживания работы программы, или в заранее заданных точках остановки с проверкой значений всех переменных, состояний регистров, стеков, ячеек памяти и других параметров.
  5. Программы для создания инсталляторов требуются для разработки дистрибутивов программ. Причём для разных платформ и операционных систем используются разные дистрибутивы, учитывающие особенности этих платформ. Обычно дистрибутивы программ создаются с интерфейсом “мастера”, то есть пошагового диалога с пользователем.
  6. Программы создания справочной системы позволяют организовывать файлы помощи с нужной структурой, содержанием, возможностью поиска, контекстными подсказками, перекрёстными ссылками.
  7. Также можно выделить специализированный набор инструментальных средств, которые используются при разработке только некоторых программ или для изучения структуры построения кода программ сторонних производителей. К этому набору программ относятся дизассемблеры, декомпиляторы, редакторы ресурсов, hex-редакторы.

Большинство вышеперечисленных инструментальных средств обычно объединяются в одну оболочку – интегрированную среду разработки (IDE) имеющую графический интерфейс. Такое решение позволяет увеличить производительность программистов за счёт унификации инструментальных средств и отсутствия необходимости переключения между отдельными компонентами.

Известно множество IDE, например, Microsoft Visual Studio, Visual Basic, Borland Delphi, Borland C++ Builder, Embarcadero RAD Studio, NetBeans, Eclipse, Xcode, DrPython, IntelliJ IDEA и другие.

Дополнительные инструменты для эффективной разработки ПО

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

Ещё в настоящее время получили широкое распространение CASE-технологии компьютерных систем программной инженерии (CASE – Computer-Aided System Engineering) – это программные комплексы, автоматизирующие весь технологический процесс жизненного цикла программного обеспечения.

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

CASE-технологии обеспечивают высокое качество программного обеспечения, отсутствие ошибок и простоту в обслуживании программных продуктов.

По своему функциональному назначению CASE-средства можно разделить на следующие категории:

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

К ним относятся такие программные средства, как Delphi, Visual C++, С Builder, Visual Basic, Java Builder;

Использование средств этого типа оправдано, когда необходимо в сжатые сроки создать приложение с удобным и понятным графическим интерфейсом.

Приняв во внимание вышеперечисленные аргументы, для разрабатываемого программно-методического комплекса целесообразно использовать средства типа RAD.

Для функционирования программного комплекса, необходима также некоторая программная среда, в простейшем случае представленная операционной системой. В более сложных случаях, когда система работает с большим количеством данных, которые необходимо поддерживать в актуальном состоянии, должна присутствовать некоторая СУБД.

Для правильного и обоснованного выбора RAD-средства необходима оценка продуктов по определенным критериям экспертами. Получить оценку продуктов можно из специальных источников. Но эта оценка дается, учитывая специфику разработки приложения. Более или менее рациональный выбор средства разработки приложения можно сделать только в контексте конкретного проекта или конкретной организации, ведущей разработку.

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

Во внимание принимались различные критерии для оценки качества программного продукта, в частности такие, которые учитывают аспекты разрабатываемого программного продукта:

- доступность программных средств разработки и реализации;

- cоответствие выбираемых программных средств уровню подготовленности программиста;

- возможности программных средств для разработки профессиональных приложений и сложных программных систем;

- оценка качества средств с точки зрения надежности, производительности, удобства работы и трудоемкости их эксплуатации;

- перспективность и жизнеспособность фирм изготовителей программных средств, возможность обновления и наличия новых версий продуктов при модернизации программно-технической среды;

- возможность перехода от однопользовательского варианта (для отладки и локального применения) к сетевому, для средств разработки и средств эксплуатации, а также его сложность;

- стыковка с широким спектром других СУБД и возможности переноса БД для данного программного средства на другие СУБД;

- возможность подключения к корпоративным сетям и Интернет/Интранет, поддержка постоянно развивающихся WEB технологий;

- модульный принцип построения, степень ее универсальности.

- наличие документации на русском языке, справочных систем, документации в печатном и электронном исполнении, возможности консультаций;

- простота языка программирования;

- скорость работы приложения;

- скорость компиляции приложения;

- наличие интегрированного отладчика;

- обработка исключительных ситуаций;

Методика определения подходящего программного продукта заключается в следующем.

Сначала выбирается несколько доступных и известных программных продуктов. Мною для рассмотрения были выбраны Delphi 5.0, Visual C++ 6.0 и Visual Basic. Каждому критерию назначил вес, исходя из целей проектирования таким образом, что сумма весов всех критериев равнялась 1.

Потом по каждому из параметров критерия давалась оценка программному продукту по десятибалльной шкале, и считалась интегральная оценка по каждому программному продукту по формуле 1.1.

Вычисления по формуле (1.1) сведены в таблицу 1.2.

Как видно из таблицы 1.2 наиболее подходящим средством для разработки программного комплекса является Delphi 5.0.

Таблица 1.2 - Сравнение программных продуктов


1.4 Техническое задание 1.4.1 Введение

Программный комплекс предназначен для создания курса обучения дисциплине и для обучения дисциплине.

1.4.2 Основания для разработки

Разработка программного комплекса ведется на основании задания на дипломную работу, утвержденное приказом ректора Донбасской машиностроительной академии по ГОСТ 19.101-77.

1.4.3 Назначение разработки

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

1.4.4 Требования к программному изделию 1.4.4.1 Требования к функциональным характеристикам

Программный комплекс должен выполнять следующие функции:

- предоставлять возможность ввода лекций и другого учебного материала с рисунками, видео и звуковым сопровождением;

- предоставлять возможность изменения курса;

- предоставлять возможность проходить курс(обучаться);

- предоставлять возможность контролировать полученные знания;

- содержать гипертекстовые ссылки для быстрого перехода на соответствующую ссылку;

- предоставлять возможность поиска по всему курсу.

1.4.4.2 Требования к надежности

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

Контроль формируемого учебного материала возложен на пользователя, который создает учебный курс.

1.4.4.3 Условия эксплуатации

Температура окружающего воздуха, влажность и другие параметры микроклимата должны соответствовать требованиям к помещениям, оборудованным персональными ЭВМ.

Для создания учебного курса необходим человек – преподаватель или пользователь, который будет заводить материал. Человек должен обладать навыками работы с персональной ЭВМ, оснащенной операционной системой Windows.

1.4.4.4 Требования к составу и параметрам технических средств

Для нормального функционирования программного комплекса необходима персональная ЭВМ со следующими характеристиками:

- объем оперативной памяти не менее 32 мегабайт;

- процессор не ниже Pentium 166, мышь, клавиатура;

- наличие свободного места на жестком диске в размере не менее 5 мегабайт;

1.5.4.5 Требования к информационной и программной совместимости

Программа должна функционировать под операционной системой Windows. Должна быть установлена программа BDE Administrator для работы с базами. Исходные коды программы должны быть написаны на языке Object Pascal в среде разработки Delphi 5.0. Информация должна вводиться непосредственно через GUI. Результат визуализации информации должен быть представлен в хорошо воспринимаемом виде.

1.4.4.6 Требования к программной документации

Предварительный состав программной документации установлен в соответствии с ГОСТ 19.101-77. Ниже перечислен список программных документов и их содержание.

Текст программы – запись программы с необходимыми пояснениями и комментариями.

Описание программы – сведения о логической структуре и функционировании программы.

Программа и методика испытаний – требования, подлежащие проверке при испытании программы, также порядок и методы контроля.

Техническое задание – настоящий документ.

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

1.4.5 Стадии и этапы разработки

Стадии и этапы разработки должны соответствовать ГОСТ 19.101-77 и состоять из следующих пунктов.

1 Техническое задание – черновое определение требований к программному комплексу и программной документации.

2 Эскизный проект – разработка структур представления информации в программном комплексе, разработка структуры классов, необходимых для реализации поставленного алгоритма. Формулировка методов реализации вложенности в программном комплексе, разработка структуры программы.

3 Технический проект – уточнение структуры классов и методов представления информации. Детальное уточнение метода реализации вложенности. Разработка структуры программы.

4 Рабочий проект – разработка программы, разработка программной документации, испытание программы.

1.4.6 Порядок контроля и приемки

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

1.5 Разработка математической модели

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

Предлагаются следующие шаги для составления курса обучения:

- Методическая разработка темы обучающей программы.

- Анализом результатов специальных модельных экспериментов разработать модель главы для профильного учебника.

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

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

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

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

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

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

Этапы разработки электронного учебника можно представить в виде схемы, изображенной на рисунке 1.2.

- В учебнике требуется уделить специальное внимание мотивации обучающихся к изучению каждой темы. Общими моментами в данной плоскости являются: возможности применения математики в соответствующей предметной области, необходимость сдачи экзаменов.

- Возможность накопить опыт творческой деятельности в разных предметных областях, знакомство с интересными применениями ЭВМ.

- Учебник должен обеспечить возможность ученику выбрать не только уровень, на котором будет изучать учебный материал темы, но и разный способ изучения темы (не менее двух способов). При этом ученик должен осознать, что он и только он отвечает за свой выбор уровня изучения темы.


Рисунок 1.2 - Этапы разработки ЭУ

- Учебник призван защитить обучаемых от перегрузки. В частности, этому служит раздел домашних заданий по новому материалу (в нем представлены минимальное число задания, которые будут предложены на дом и при выполнении которых студенту вновь предстоит выбирать уровень сложности).

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

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

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

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

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

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

Исходя из вышеперечисленного предлагается структура материалов, приведенная на рисунке 1.3.

1.6 Разработка компонентов программного комплекса 1.6.1 Разработка логической модели программного комплекса

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

Сущность структурного подхода заключается в декомпозиции (разбиении) системы на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. При разработке системы "снизу-вверх" от отдельных задач ко всей системе целостность теряется, возникают проблемы при информационной стыковке отдельных компонентов.

Все наиболее распространенные методологии структурного подхода базируются на ряде общих принципов [45]. В качестве двух базовых принципов используются следующие:

- принцип решения сложных проблем путем их разбиения на множество меньших независимых задач, легких для понимания и решения;

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

Выделение двух базовых принципов не означает, что остальные принципы являются второстепенными, поскольку игнорирование любого из

них может привести к непредсказуемым последствиям (в том числе и к провалу всего проекта). Основными из этих принципов являются следующие:

- принцип абстрагирования - заключается в выделении существенных аспектов системы и отвлечения от несущественных;


Рискнок 1.3- Структура материалов

- принцип формализации - заключается в необходимости строгого методического подхода к решению проблемы;

- принцип непротиворечивости - заключается в обоснованности и согласованности элементов;

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

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

- SADT (Structured Analysis and Design Technique) модели и соответствующие функциональные диаграммы ;

- DFD (Data Flow Diagrams) диаграммы потоков данных ;

- ERD (Entity-Relationship Diagrams) диаграммы "сущность-связь";

- STD (State Transition diagrams) диаграммы переходов состояний.

На стадии проектирования модели расширяются, уточняются и дополняются диаграммами, отражающими структуру программного обеспечения.

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

1.6.1.1 Функциональная модель программного комплекса

Разработка функциональной модели программного комплекса сводится к разработке:

- общего алгоритма работы;

Рассмотрим вышеперечисленные элементы более подробно.

Раздел: Информатика, программирование
Количество знаков с пробелами: 149070
Количество таблиц: 17
Количество изображений: 18

Читайте также: