русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Основные понятия


Дата добавления: 2013-12-23; просмотров: 4192; Нарушение авторских прав


ОСНОВНЫЕ ПОНЯТИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

Программа (program, routine) — упорядоченная последовательность ко­манд (инструкций) компьютера для решения задачи. Программное обеспечение (sowtware) — совокупность программ обработ­ки данных и необходимых для их эксплуатации документов.

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

Задача (problem, task) — проблема, подлежащая решению. Приложение (application) — программная реализация на компьютере ре­шения задачи.

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

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

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

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



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

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

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

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

Рис. 8.1. Схема процесса создания программ

Постановка задачи (problem definition) — это точная формулировка реше­ния задачи на компьютере с описанием входной и выходной информации.

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

К основным характеристикам функциональных задач, уточняемым в процессе ее фор­мализованной постановки, относятся:

· цель или назначение задачи, ее место и связи с другими задачами;

· условия решения задачи с использованием средств вычислительной техники;

· содержание функций обработки входной информации при решении задачи;

· требования к периодичности решения задачи;

· ограничения по срокам и точности выходной информации;

· состав и форма представления выходной информации;

источники входной информации для решения задачи;

пользователи задачи (кто осуществляет ее решение и пользуется результатами реше­ния).

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

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

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

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

Рис. 1. Схема взаимосвязи входной и выходной информации для решения задачи

Алгоритм решения задачи имеет ряд обязательных свойств:

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

Алгоритм обладает следующими свойствами (они следуют из определения):

1. определенность (детерминированность) – каждая команда (или предписание) понятна исполнителю (человеку или компьютеру) и исключает неоднозначность исполнения;

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

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

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

Различают следующие простейшие виды алгоритмов:

1. линейный, когда предписания алгоритма выполняются в той последовательности, в которой они представлены в алгоритме;

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

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

Программирование (programming) — теоретическая и практическая дея­тельность, связанная с созданием программ.

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

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

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

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

Программирование — это развитая отрасль хозяйственной деятельности, связанная со значительными затратами материальных, трудовых и финансовых ресурсов. По данным за­рубежных источников, в середине 90-х годов в мире было занято программированием до 2% трудоспособного населения. Совокупный оборот в сфере создания программных средств достигает нескольких сот миллиардов долларов в год.

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

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

 



<== предыдущая лекция | следующая лекция ==>
 | Показатели качества программных продуктов


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.