Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Программное обеспечение информационных технологий. Классификация программного обеспечения. АРМ. Электронный офис.






Основные вопросы:

1. Основные этапы проектирования и функционирования программ.

2. Языки программирования и их классификация.

3. Понятие операционной системы.

4. Классификация ОС.

5. Понятие файла и файловой системы ЭВМ.

6. Работа с файлами

7. АРМ, электронный офис (в презентации)

 

Жизненный цикл программного обеспечения включает в себя шесть этапов:

Ø анализ требований,

Ø определение спецификаций,

Ø проектирование,

Ø кодирование,

Ø тестирование,

Ø сопровождение.

Рассмотрим их.

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

Что должна делать программа?

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

Что представляют собой входные данные?

Какими должны быть выходные данные?

Какими ресурсами располагает проектировщик?

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

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

Кодирование. Заключается в переводе на язык программирования конструкций, записанных на языке проектирования.

Тестирование. На этом этапе производится всесторонняя провер­ка программ. Тестирование более подробно рассмотрено ниже.

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

Рассмотрим этап тестирования программ более подробно. Суще­ствуют три аспекта проверки программы на:

ü правильность;

ü эффективность реализации;

ü вычислительную сложность.

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

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

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

Первый способ основан на следующем правиле. Сложение и вы­читание выполняются быстрее, чем умножение и деление. Целочис­ленная арифметика быстрее арифметики вещественных чисел. Таким образом, Х + Х лучше, чем 2 Х, а i +0, 5 хуже, чем (2 i + j)´ 0, 5 или (i + i + j) ´ 0, 5. При выполнении операций над целыми числами следует помнить, что благодаря применению двоичной системы счисления умножение на числа, кратные двум, можно заменить соответствующим количеством сдвигов влево. Поэтому 10 А выполняется дольше, чем A shl 3+ A shl 1. Второй способ заключается в удалении избыточных вычислений.

Третий способ проверки эффективности реализации основан на способности некоторых компиляторов строить коды для вычисления логических выражений так, что вычисления прекращаются, если ре­зультат становится очевидным. Например, в выражении A or В or С, если А имеет значение «истина», то переменные В и С уже не прове­ряются. Таким образом, можно сэкономить время, разместив пере­менные А, В, С так, чтобы первой стояла переменная, которая вероят­нее всего будет истинной, а последней та, которая реже всего прини­мает истинное значение.

Четвертый прием - исключение циклов.

Пятый прием - развертывание циклов.

Это далеко не полный перечень способов оптимизации. Здесь приведены лишь самые очевидные из них. Следует, кроме того, заме­тить, что не всегда стоит увлекаться погоней за быстродействием, так как при этом чаще всего ухудшается удобочитаемость программ. В том случае, когда выигрыш получается «мизерный», вряд ли стоит предпочитать его ясности и читабельности программы.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.