КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Процесс разработки программного обеспечения
Процесс разработки программного обеспечения — это последовательность действий, конечным продуктом которой является компьютерная программа. За прошедшие 20 лет были выделены четко определенные этапы процесса разработки ПО. В данном разделе рассматриваются лишь наиболее важные из них. 1. Создание спецификации программы. Определение требований к программе. 2. Проектирование программы. Разработка концепции, позволяющей воплотить требования спецификации в работающей программе. Она определяет пути реализации функциональности, описанной в спецификации, средствами языка программирования высокого уровня, например С#. 3. Написание программы. Разработка и написание исходного кода программы. 4. Тестирование и отладка программы. Необходимо проверить, отвечает ли программа требованиям, определенным в спецификации. Эти этапы должны выполняться в указанной здесь последовательности. Однако иногда возникают ситуации, когда для продолжения работы над программой необходим возврат к предыдущему этапу. Рассмотрим каждый из этапов более подробно. Создание спецификации программы. Определение цели — первый шаг к ее достижению. Часто решение скрыто в самой спецификации. Известно, что правильно сформулированная проблема уже содержит свое решение. Вот пример очень простой спецификации программы: "Программа должна уметь вычислять среднее значение двух чисел". Проектирование программы. Проектирование программы может включать множество различных действий в зависимости от размера и характера конкретного проекта. Большой проект может включать несколько стадий, описанных ниже. 1. Разделение всего проекта на различные функциональные подсистемы. Примерами подсистем могут служить пользовательские интерфейсы, генераторы отчетов, интерфейсы к базам данных. 2. Разбиение каждой подсистемы на модули. Термин "модуль" очень гибок, и принимает различные значения в разных контекстах. Здесь модуль — это совокупность данных и функций, которые могут работать с этими данными. Функции, реализованные в модуле, позволяют ему во взаимодействии с другими модулями данной подсистемы выполнять требования, адресованные к ней. Функция обычно имеет одну очень узкую цель. Она состоит из набора конкретных инструкций, исполняемых одна за другой. Примерами функций могут быть "Найти квадратный корень числа" или "Найти наибольшее значение в списке". В разных высокоуровневых языках эту концепцию называют по-разному: процедуры, функции, подпрограммы. В С# функции называются методами. 3. Определение данных и методов в каждом модуле. Службы, предлагаемые модулями, делятся на удобные части, достаточно компактные, чтобы их можно было реализовать в рамках одного метода. Каждой части модуля назначается свой метод и, соответственно, каждый метод получает определенную функциональность. И, наконец, создатели программы определяют данные, которые могут быть представлены этим модулем. 4. Внутреннее проектирование методов. Проектированием на этом уровне обычно занимается программист, разрабатывающий конкретный метод. На данном этапе разрабатываются алгоритмы выполнения очень узких, конкретных задач и пишутся первые операторы на языке высокого уровня, — например, на С#. Написание программы. "Настоящие" операторы пишутся на С#. Данная часть процесса создания ПО обязательно присутствует в проектах любого масштаба. Тестирование и отладка программы. Программа подвергается различным тестам (как во время написания, так и после него). Тесты необходимы, чтобы убедиться, что программа выполняет именно то, что должна выполнять. Тестирование, в частности, позволяет обнаружить (и исправить) ошибки, допущенные в процессе проектирования и написания программы. Чтобы написать корректную программу, необходимо с тщательностью подходить к проектированию всех ее элементов и написанию исходного кода. Однако людям свойственно ошибаться, и ошибки (им соответствует английское слово bugs) закрадываются в программу самыми разными, иногда совершенно неожиданными путями. Процесс поиска и устранения ошибок называется отладкой (английский термин — debugging, от bug). Небольшие, неформальные проекты (например, многие из программ, с которыми читатель столкнется в данной книге) часто включают лишь уровни 3 и 4. Программист может выполнить их, сидя перед компьютером. Стадия проектирования программы реализуется либо в голове у программиста, либо на листке бумаги в форме нескольких диаграмм, либо в виде поиска нескольких стандартных алгоритмов в учебнике. Процесс исполнения программы на С# Что происходит, когда программа, написанная на С#, исполняется компьютером? Несмотря на то, что С# абстрагируется от аппаратного обеспечения, используемого на конкретной машине, программы С#, конечно же, используют функции процессора и оперативной памяти. На (рис. 1) показаны основные элементы процесса исполнения программы на С#. Прежде всего, необходимо написать программу на С#, а затем сохранить ее в долговременной памяти — например, на жестком диске (1 на рис. 1). Пусть файл программы назван prog_1.cs. Следует обратить внимание на расширение.cs, — общее для всех файлов с исходным кодом С#.
Рис.1. Элементы исполнения программы на С#
Когда необходимо, программа или та ее часть, которая должна исполняться, загружается в оперативную память (2). Затем процессор исполняет инструкции, содержащиеся в программе. Этот процесс называется выполнением или исполнением программы. Программа может получить данные от пользователя (3) в форме нажатий клавиш на клавиатуре или движений мыши и нажатий ее кнопок. Данные могут также поступить к программе из иных источников, например из локальной сети или Internet. Данные могут быть прочитаны из файлов, хранящихся в долговременной памяти компьютера (4). Например, если программа на С# — текстовый редактор, эти данные могут быть незаконченным письмом, которое сохранил пользователь (5) во время работы в редакторе. И если сегодня нужно закончить это письмо, программа текстового редактора по указанию пользователя загружает его в оперативную память. После завершения работы над письмом оно вновь сохраняется в долговременной памяти — на диске. Во всех случаях при загрузке программы в оперативную память компьютер обеспечивает вывод в форме представления символов документа на экране. Если, скажем, требуется распечатать письмо, вывод обеспечивается через принтер.
Дата добавления: 2014-01-04; Просмотров: 548; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |