Содержание
Введение
. Общая часть
.1 Классификация программных средств
.2 Жизненный цикл прикладной программы
.3 Методология и технология разработки ПП
.4 Тестирование программных средств
.5 Описание прикладной задачи
. Специальная часть
.1 Цели разработки
.2 Расчет математической модели
.3 Описание программы
.3.1 О программе
.3.2 Алгоритм работы программы
.3.3 Входные данные
.3.4 Выходные данные
.4 Тестирование программы
.5 Руководство пользователя
Заключение
Литература
Введение
Компьютеры очень быстро вошли в нашу жизнь. Еще 15 лет назад "персоналка" была большой редкостью. Конечно, они существовали, но стоили очень дорого, так что не каждая фирма могла иметь в офисе хотя бы один компьютер.
А теперь? Компьютер есть в каждом третьем доме и настолько любим и привычен, что считается едва ли не членом семьи. Что такое компьютер, знает сейчас каждый (во всяком случае, слышали о компьютерах и видели их все). Но из-за своей обыденности и сравнительной доступности компьютер не стал менее удивительным! Он вобрал в себя все достижения современной цивилизации и постепенно превращается в универсальное устройство, способное с успехом выполнять множество функций.
В деловом мире компьютеры в буквальном смысле совершили революцию.
По мере снижения стоимости их приобретало все большее число бизнесменов. Купить компьютер теперь "по карману" не только крупному заводу или банку: они стали неотъемлемой приметой небольших предприятий, магазинов, учреждений и даже ферм.
Компьютеры находят применение при выполнении широкого круга производственных задач.
Так, например, диспетчер на крупном заводе имеет в своём распоряжении автоматизированную систему контроля, обеспечивающую бесперебойную работу различных агрегатов.
Компьютеры используются также для контроля над температурой и давлением при осуществлении различных производственных процессов. Когда повышение и понижение температуры или давления превышает допустимую норму, компьютер немедленно подаёт сигнал на регулирующее устройство, которое автоматически восстанавливает требуемые условия. Также управляется компьютером робот.
Робот - механическое устройство, управляемое компьютером. В отличие от роботов, которые можно увидеть в магазинах или в кино, промышленные роботы, как правило, не похожи на человека.
Конструктору автомобилей при помощи компьютера удобно исследовать, как форма кузова влияет на характеристики будущей машины. С помощью таких устройств, как электронное перо и графический планшет, он может быстро и легко вносить любые изменения в проект и тут же наблюдать результат на экране дисплея. Чертеж нетрудно увеличивать, уменьшать, поворачивать в стороны и рассматривать под любым углом. Благодаря этому экономится очень много времени и средств, поскольку не нужно каждый раз создавать экспериментальный макет.
Инженеры и архитекторы используют компьютеры при проектировании торговых центров и других крупных зданий. Сначала они создают модель, затем с помощью компьютера определяют форму, размеры, вес и другие характеристики всех элементов. Если, например, возникает необходимость поменять первоначально задуманный фундамент на конструкцию из высокопрочного материала - нет проблем! Модель уточняется, и опять проводятся необходимые исследования до тех пор, пока не будет достигнут оптимальный результат.
Медицина на современном этапе из-за огромного количества информации нуждается в применении компьютеров: в лаборатории при подсчете формулы крови, при ультразвуковых исследованиях, на компьютерном томографе, в электрокардиографии и т. д.
Компьютеры находят широкое применение не только в учреждениях и на промышленных предприятиях, но и в медицине. Врачи, сёстры, а также фармацевты и представители других медицинских специальностей рассматривают компьютер как неотъемлемый инструмент их работы.
Программные средства можно классифицировать по разным признакам. Наиболее общей является классификация, в которой основополагающим признаком служит область использования программных продуктов:
аппаратная часть компьютеров и сетей ЭВМ.
· операционная система (ОС) - это совокупность программ, предназначенных для управления устройствами аппаратной части компьютера и обеспечения взаимодействии пользователя с компьютером;
· драйверы устройств - это программы, предназначенные для управления устройствами компьютера;
· оболочки ОС предназначены для обеспечения "диалога" пользователя с ОС;
· служебные или сервисные программы (от англ. to serve - обслуживать) - это установленные дополнительно программы, предназначенные для:
· диагностики работоспособности компьютера;
· защиты от вирусов;
· обслуживания дисков;
· архивации данных и т.д.
Сеть - ничто без программного обеспечения. Программное обеспечение (ПО) вычислительных сетей обеспечивает организацию коллективного доступа к вычислительным и информационным ресурсам сети, динамическое распределение и перераспределение ресурсов сети с целью повышения оперативности обработки информации и максимальной загрузки аппаратных средств, а также в случае отказа и выхода из строя отдельных технических средств и т.д.
Подобно земной коре, сетевое ПО состоит из слоев. Одни из них "толще", другие "тоньше", но все работают как единое целое. Каждый слой сетевого программного обеспечения нацелен на решение той или иной конкретной задачи.
Программное обеспечение вычислительных сетей включает три основных "слоя":
· общее программное обеспечение, образуемое базовым ПО отдельных ЭВМ, входящих в состав сети;
· специальное программное обеспечение, образованное прикладными программными средствами, отражающими специфику предметной области пользователей при реализации задач управления;
· системное сетевое программное обеспечение, представляющее комплекс программных средств, поддерживающих и координирующих взаимодействие всех ресурсов вычислительной сети как единой системы.
-технология разработки программ;
Исторически сложилось так, что императивные языки в настоящее время доминируют в программировании. Однако исследования, проведенные в 70-80-х годах XX века, показали, что аппликативная методика обеспечивает более эффективные способы верификации программ и доказательство их корректности. Такие программы называют программами-спагетти. Из-за большого числа нерациональных передач управления назад и вперед трудно понять, каково состояние программы в каждый момент времени в процессе ее выполнения.
Писать сложные программы в тысячи и десятки тысяч строк без расчленения на самостоятельные фрагменты, т. е. без структурирования, просто невозможно.
Структурное программирование - подход, при котором для передачи управления в программе используются только три конструкции, допускающих последовательную, условную и итеративную передачи управления. При этом безусловная передача управления например, оператором goto запрещается.
Структурное программирование является результатом применения аппликативных методов к императивным программам. Для этого используются процедурно-ориентированные языки, в которых имеется возможность описания программы как совокупности процедур. Процедуры могут вызывать друг друга, и каждая из них может быть вызвана основной программой, которую также можно рассматривать как процедуру.
Структурный подход к программированию представляет собой методологию создания программ. Его внедрение обеспечивает:
· повышение производительности труда программистов при написании и контроле программ;
· получение программ, которые более пригодны для сопровождения, так как состоят из отдельных модулей;
· создание программ коллективом разработчиков;
· окончание создания программ в заданный срок.
Объектно-ориентированное программирование (ООП) - парадигма программирования, в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы. ООП возникло в результате развития идеологии процедурного программирования, где данные и подпрограммы (процедуры, функции) их обработки формально не связаны. Для дальнейшего развития объектно-ориентированного программирования часто большое значение имеют понятия события (так называемое событийно-ориентированное программирование)и компонента (компонентное программирование, КОП).
Формирование КОП от ООП произошло, как случилось формирование модульного от процедурного программирования. Процедуры сформировались в модули - независимые части кода до уровня сборки программы, так объекты сформировались в компоненты - независимые части кода до уровня выполнения программы. Взаимодействие объектов происходит посредством сообщений. Результатом дальнейшего развития ООП, по-видимому, будет агентно-ориентированное программирование, где агенты - независимые части кода на уровне выполнения. Взаимодействие агентов происходит посредством изменения среды, в которой они находятся.
Языковые конструкции, конструктивно не относящиеся непосредственно к объектам. Но сопутствующие им для их безопасной (исключительные ситуации, проверки) и эффективной работы, инкапсулируются от них в аспекты (в аспектно-ориентированном программировании). Субъектно-ориентированное программирование расширяет понятие объект посредством обеспечения более унифицированного и независимого взаимодействия объектов. Может являться переходной стадией между ООП и агентным программированием в части самостоятельного их взаимодействия.
Первым языком программирования, в котором были предложены принципы объектной ориентированности, была Симула. В момент своего появления (в 1967 году), этот язык программирования предложил поистине революционные идеи: объекты, классы, виртуальные методы и др., однако это всё не было воспринято современниками как нечто грандиозное. Тем не менее, большинство концепций были развиты Аланом Кэйем и Дэном Ингаллсом в языке Smalltalk. Именно он стал первым широко распространённым объектно-ориентированным языком программирования.
В настоящее время количество прикладных языков программирования (список языков), реализующих объектно-ориентированную парадигму, является наибольшим по отношению к другим парадигмам. В области системного программирования до сих пор применяется парадигма процедурного программирования, и общепринятым языком программирования является язык C. Хотя при взаимодействии системного и прикладного уровней операционных систем заметное влияние стали оказывать языки объектно-ориентированного программирования. Например, одной из наиболее распространенных библиотек мультиплатформенного программирования является объектно-ориентированная библиотека Qt, написанная на языке C++.
Операционная система. Состав и назначение.
Для выполнения любой программы на компьютере необходимы, по меньшей мере, два ресурса: оперативная память для хранения команд и данных и МП для выполнения команд программы. Указанные ресурсы могут быть предоставлены программе программистом, если он вручную разместит команды и данные в ОП и введет в машину информацию для запуска МП. Однако такой способ не приемлем для больших программ, т.к. является весьма трудоемким и медленным. Операционная система компьютера призвана освободить программиста от кропотливой работы, связанной с распределением ресурсов компьютера, управление его аппаратурой и организацией выполнения программ. Она может обеспечивать работу (функционирование) компьютера в одном из трех режимов: однопрограммный, многопрограммный (мультипрограммный) и многозадачном.
Однопрограммный режим.
В этом режиме все ресурсы компьютера представляются лишь одной программе, которая выполняет обработку данных. Многопрограммный режим. При функционировании компьютера в многопрограммном режиме несколько независимых друг от друга программ выполняют обработку данных одновременно. При этом программы делят ресурсы между собой. Основой мультипрограммного режима является совмещение во времени работы МП и выполнение манипуляций периферийными устройствами. Достоинство мультипрограммного режима по сравнению с однопрограммным режимом - более эффективное использование ресурсов. В оперативной памяти компьютера находится одновременно несколько программ, но в любой момент времени МП выполняет только одну.
Многозадачный режим.
В ряде случаев необходимо, чтобы выполнение нескольких программ было скоординированным и подчиненным достижению одной общей цели. Для этого в ОС должны быть средства, позволяющие задачам взаимодействовать друг с другом. Операционная система, в которой реализованы указанные средства, обеспечивает функционирование в многозадачном режиме.
Назначение операционной системы.
Основная цель ОС, обеспечивающей работу компьютера в любом из описанных режимов, - динамическое распределение ресурсов и управление ими в соответствии с требованиями вычислительных процессов. Ресурсом является всякий объект, который может распределяться операционной системой между вычислительными процессами в компьютере. Различают аппаратурные и программные ресурсы. К аппаратурным относятся микропроцессор, оперативная память и периферийные устройства; к программным ресурсам - доступные пользователю программные средства для управления вычислительными процессами и данными. Операционная система является посредником между компьютером и пользователем, осуществляет анализ запросов пользователя и обеспечивает их выполнение.
Состав и функции ОС сильно зависят от режима работы ПК, а также от состава конфигурации аппаратных средств. Наиболее мощные ОС используются в мультипроцессорных диалоговых вычислительных комплексах и компьютерных сетях.