Технология разработки программных средств реферат

Обновлено: 05.07.2024


Выполнила:
Торбяк О.В.
Группа 1392
Проверила:
Соколовская С.А.

1. CASE-средство: определения и общая характеристика
2. Применение CASE-технологий: преимущества и недостатки
3. Примеры CASE-средств и их характеристики
3.1Silverrun
3.2 JAM
3.3 Vantage Team Builder
3.4 Локальные средства (ERwin, BPwin, S-Designor)
3.5 Объектно-ориентированные CASE-средства (Rational Rose)
3.6 Средства конфигурационного управления
3.7 Средства документирования
3.8 Средства тестирования
Заключение
Литература


1. CASE-средство: определения и общая характеристика

Аббревиатура CASE расшифровывается как Computer Aided Software Engineering. Этоттермин широко используется в настоящее время. На этапе появления подобных средств, термин CASE употреблялся лишь в отношении автоматизации разработки программного обеспечения. Сегодня CASE средства подразумевают процесс разработки сложных ИС в целом: создание и сопровождение ИС, анализ, формулировка требований, проектирование прикладного ПО и баз данных, генерацию кода, тестирование,документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы. Таким образом, CASE-технологии образуют целую среду разработки ИС.
Итак, CASE-технология представляет собой методологию проектирования программных систем, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех этапах разработки исопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей. Большинство существующих CASE-средств основано на методологиях структурного или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектурыпрограммных средств. Главные составляющие CASE-продукта таковы:
методология (Method Diagrams), которая задает единый графический язык и правила работы с ним.
графические редакторы (Graphic Editors), которые помогают рисовать диаграммы; возникли с распространением PC и GUI, так называемых «upper case технологий
генератор: по графическому представлению модели можно сгенерировать исходный код для различных платформ(так называемая low case часть CASE-технологии).
репозиторий, своеобразная база данных для хранения результатов работы программистов.


2. Применение CASE-технологий: преимущества и недостатки

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

Общие принципы разработки программных средств [19.10.10]

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

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

-так какие же существуют принципы разработки программных средств?

-какие этапы жизненного цикла программных средств существуют?

-что подразумевается под видами поддержки и стадиями этапа проектирования?

-что такое качество программного средства?

- что побуждает к разработке программных средств?

При выполнении курсовой работы я буду использовать следующие прикладные программы: это Microsoft Word и Microsoft Excel.

Microsoft Word (часто — MS Word, WinWord или просто Word) — это текстовый процессор, предназначенный для создания, просмотра и редактирования текстовых документов, с локальным применением простейших форм таблично-матричных алгоритмов.

Microsoft Excel (также иногда называется Microsoft Office Excel) — это табличный редактор, наименование прикладной программы, предназначенной для решения широкого круга вычислительных задач (экономических, бухгалтерских, инженерных, статистических и т.д.) на больших массивах данных, представляемых в табличной форме.

  1. Построить таблицы по приведенным данным.
  2. Выполнить расчет стоимости выполняемых работ по полученному заказу, данные расчета занести в таблицу.
  3. Организовать межтабличные связи для автоматического формирования счета, выставляемого клиенту для оплаты выполняемых работ.
  4. Сформировать и заполнить счет на оплату.
  5. Результаты расчета стоимости каждого вида работ по полученному заказу представить в графическом виде.

При выполнении курсовой работы я использовала персональный компьютер со следующими характеристиками:

Версия Windows – Microsoft Windows XP Professional;

Процессор - Intel Celeron CPU (2.66GHz/2.67GHz/512Mb).

Монитор: ACER Al 1716

Пакет офисных приложений Microsoft Office XP 2003: MS Word, MS Excel

Теоретическая часть

Введение

Быстрое развитие информационных технологий (ИТ) и расширение сферы их применения в последние годы привели к резкому росту разработок программного обеспечения (ПО). В стоимостном исчислении ПО и информационные услуги составляют более половины объёма рынка всех продуктов информационных технологий. На российском рынке программных средств (ПС) заметно определённое завоевание отечественными производителями таких направлений, как бухгалтерские системы, системы распознавания текстов, различные корпоративные и управленческие программы, а также системы распределённой обработки данных. Характеризуя общие тенденции в области информатизации, следует отметить высокую динамичность изменений технических и потребительских свойств ИТ и средств их реализации. В настоящее время срок смены поколений аппаратных и программных средств составляет 3 – 4 года, что предъявляет высокие требования к срокам и качеству их разработки, особенно ПС[4, C. 256-259]. Опыт организации работ на всех фазах их жизненного цикла ПС показывает, что это сложная, трудоёмкая и длительная работа, требующая высокой квалификации специалистов и новых подходов к проектированию на основе широкого использования методов программной индустрии, стандартизации и сертификации.

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

1.1. Принципы разработки программных средств

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

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

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

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

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

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

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

Принцип максимальной независимости от операционных систем непосредственно связан с принципом машинной независимости и преемственности систем.

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

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

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

1.2. Этапы жизненного цикла программных средств

По длительности ЖЦ ПС можно разделить на 2 класса: а) с малым,

б) большим временем жизни.

ПС с малым временем ЖЦ (до 3 лет) и объёмом 1 – 10 тысяч команд разрабатываются обычно в НИИ и вузах одним специалистом.

Этапы проектирования, эксплуатации и сопровождения сильно различаются целями, задачами, методами и средствами. Процесс эксплуатации идёт параллельно и независимо от этапа сопровождения и сводится к исполнению программ на ЭВМ и обеспечению достоверности и надёжности результатов.[7, C.359-368]

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

1.3. Виды поддержки и стадии этапа проектирования

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

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

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

Процесс разработки ПС делится на стадии: техническое проектирование и рабочее проектирование.

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

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

Все виды работ и задач, выполняемых на этих этапах, сгруппированы для оценки трудоёмкости разработки ПС в 5 групп: анализ разработки, проектирование, программирование, тестирование, внедрение.

1.4. Понятие качества программного средства

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

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

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

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

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

4) эффективность - это отношение уровня услуг, предоставляемых ПС пользователю при заданных условиях, к объему используемых ресурсов.

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

6) мобильность - это способность ПС быть перенесенным из одной среды (окружения) в другую, в частности, с одной ЭВМ на другую.

Функциональность и надежность являются обязательными критериями качества ПС. Остальные критерии используются в зависимости от потребностей пользователей в соответствии с требованиями к ПС.[5, C.57-71]

1.5. Основной мотив разработки программных средств

Общие принципы обеспечения надежности ПС являются основным мотивом разработки ПС, задающим специфическую окраску всем технологическим процессам разработки ПС. В технике известны четыре подхода обеспечению надежности: предупреждение ошибок; самообнаружение ошибок; самоисправление ошибок; обеспечение устойчивости к ошибкам. [3, C. 442-468]

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

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

Этот подход связан с организацией процессов разработки ПС, т.е. с технологией программирования. И хотя гарантировать отсутствие ошибок в ПС невозможно, но в рамках этого подхода можно достигнуть приемлемого уровня надежности ПС. [1, C.165-181]

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

Заключение

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

2. Практическая часть

2.1. Общая характеристика задачи


Термин CASE (Computer-Aided Software Engineering) на сегодняшний день понимается достаточно широко. Первоначально данный термин был ограничен вопросами автоматизации разработки программного обеспечения, на данный момент под CASE-технологиями понимают инструментальные программы, применяемые для поддержки процесса в создании сложных программных систем, сюда входит проектирование, документирование, тестирование, обеспечение качества, управление проектом, конфигурационное управление и т.д. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки.

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

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

Большая часть последствий ошибок, свойственных этапу составления спецификаций для автоматизации информационной системы объекта, вызвала поиск путей сокращения их числа на этом этапе до минимума. Единственным решением данной проблемы была разработка формализованного аппарата для составления описания и последующего анализа информационной модели системы. Впервые этот подход реализовали сотрудники Мичиганского университета под руководством профессора Д.Тайкроу в рамках проекта ISDOS (Information System Design and Optimization System – проектирование и оптимизация информационных систем).

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

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

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

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

Метод нисходящего проектирования (метод пошаговой детализации, метод иерархического проектирования, 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 и др.

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