Программное обеспечение и его разработка [Джозеф М Фокс] (fb2) читать постранично, страница - 5

- Программное обеспечение и его разработка 4.57 Мб, 354с. скачать: (fb2) - (исправленную)  читать: (полностью) - (постранично) - Джозеф М. Фокс

 [Настройки текста]  [Cбросить фильтры]

взаимодействующих друг с другом программ.

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


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

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

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

Все это верно и для программного обеспечения. Программное обеспечение — это наш автомобиль: это та «вещь», которая выполняет работу. Мы должны тратить много времени на создание сопроводительной документации на программное обеспечение и на процесс взаимодействия пользователей с системой при помощи программного обеспечения.

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

Можно писать программу, но не программное обеспечение. И даже с программами трудности значительно возрастают с ростом их размеров.

Фраза «пишет программное обеспечение» не полностью отражает истинные усилия, затрачиваемые на разработку программного обеспечения.

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

Разработка программного обеспечения может быть разбита на шесть этапов:

Определение требований и заданий

Проектирование

Написание команд — программирование

Компоновка

Тестирование

Документирование

Относительно новым термином «программно-аппаратное обеспечение» часто обозначается программное обеспечение или просто программа, которая всегда находится в постоянной памяти, работающей только на чтение (ПЗУ), и выполняется непосредственно оттуда. Хотя тот факт, что запись в память исключается, и создает некоторые трудности проектирования и создания программного обеспечения, однако программно-аппаратное обеспечение не столь уж сильно отличается от программного обеспечения, работающего с обычной памятью, чтобы его нужно было выделять и рассматривать отдельно. Здесь применяются те же правила и практические приемы. Таким образом, мы будем рассматривать программно-аппаратное обеспечение как часть программного обеспечения. Мы еще столкнемся с программами, располагающимися в постоянных запоминающих устройствах.


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