Файл: Современное программное обеспечение персонального компьютера.pdf
Добавлен: 25.05.2023
Просмотров: 273
Скачиваний: 3
СОДЕРЖАНИЕ
1. Современное программное обеспечение персонального компьютера
1.1. Понятие программного обеспечения
1.2. История программного обеспечения
1.3. Жизненный цикл программного обеспечения
2. Классификация программного обеспечения
2.1. Системное программное обеспечение
2.2. Прикладное программное обеспечение
Введение
На сегодняшний день очень важное значение в сфере компьютерных технологий занимает программное обеспечение. Оно, на уровне с аппаратным обеспечением, обеспечивает удобное использование пользователем вычислительных ресурсов, доступных современному обществу. Создание программного обеспечения является очень сложным процессом, состоящим из многих стадий и этапов.
На сегодняшний день существует большое количество разновидностей программного обеспечения, которые появлялись постепенно, в соответствии с растущими требованиями пользователей к использованию вычислительных ресурсов.
Актуальность темы исследования заключается в том, что программное обеспечение является перспективной на сегодняшний день технологией, имеющей много различных аспектов. Обзор ключевых различий, достоинств и недостатков каждой разновидности должен помочь в выборе наиболее подходящей под определенные цели программы. Именно по этой причине является актуальным изучение разновидностей программного обеспечения и рассмотрение каждого вида в отдельности.
Объектом исследования является программное обеспечение и его историческое развитие. Предметом исследования являются разновидности программного обеспечения.
Целью работы является получение, структурирование и сравнение знаний о разновидностях программного обеспечения, посредством изучения каждой из них.
Задачами данной работы являются:
- изучение понятия программного обеспечения;
- обзор истории появления и развития программного обеспечения;
- рассмотрение основных характеристик жизненного цикл, выделение основных стадий создания программного обеспечения и обзор основных моделей жизненного цикла программного обеспечения;
- изучение разновидностей классификаций программного обеспечения;
- краткий обзор каждой разновидности программного обеспечения.
В основу изучения вопроса классификации программного обеспечения были положены работы Томаса ДеМарко и Бутенко Дмитрия Валентиновича, а также некоторых авторов журнала «Программные продукты и системы».
Том ДеМарко является профессиональным инженером-программистом, писателем и консультантом по программной инженерии США. Он также является членом Института инженеров электротехники и электроники и членом ACM. ДеМарко — автор 13 книг и более чем 100 статей, которые посвящены проблематике разработки программного обеспечения и управления проектами.
Дмитрий Валентинович Бутенко является кандидатом технических наук, и преподающим автором по множеству информационных дисциплин, в том числе в сфере программного обеспечения
1. Современное программное обеспечение персонального компьютера
1.1. Понятие программного обеспечения
Программное обеспечение, согласно стандарту ISO/IEC 2382-1:1993, представляет собой все или часть правил, процедур, программ и соответствующей документации системы обработки информации[1].
Также существуют и другие определения из российских и международных стандартов:
- согласно стандарту IEEE Std 829—2008, программное обеспечение является компьютерными программами, процедурами и, возможно, соответствующей документацией и данными, которые относятся к функционированию компьютерной системы;
- согласно тому же стандарту IEEE Std 829—2008, программное обеспечение является программой или множеством программ, которые используются для управления компьютером;
- согласно стандарту ГОСТ 19781-90, программное обеспечение является совокупностью программ системы обработки информации и программных документов, которые необходимы для эксплуатации этих программ[2].
Программное обеспечение представляет один из видов обеспечения вычислительной системы, наряду с математическим, аппаратным, лингвистическим, информационным, методическим и организационным обеспечением[3].
Программное обеспечение представляет собой то, что делает компьютеры универсальными и позволяет использовать типовую вычислительную машину с целью решения самых разнообразных задач[4].
Академическими областями, которые изучают программное обеспечение, являются программная инженерия и информатика.
В компьютерном сленге часто используется слово «софт», которое произошло от английского слова «software», впервые в этом смысле примененного в 1958 году в статье журнала American Mathematical Monthly Джоном Тьюки, математиком из Принстонского университета[5] [1, 4, 11].
1.2. История программного обеспечения
Первой программой считают алгоритм, который был написан для разностной машины Чарльза Бэббиджа Адой Лавлейс, но, учитывая, что, машина была не достроена, данные разработки имели чисто теоретический приннцип[6].
В 1936 году была предложена первая теория, которая касалась программного обеспечения. Она была выдвинута Аланом Тьюрингом, английским математиком в эссе «On computable numbers with an application to the Entscheidungsproblem», которое переводится как «О вычислимых числах с приложением к проблеме разрешения». Ананом Тьюрингом была создана математическая модель абстрактной машины, которая была способна выполнять последовательности рудиментарных операций, переводящих машину из одного фиксированного состояния в другое. Данная машина была названа машиной Тьюринга. Главная идея заключалась в математическом доказательстве факта, что любое наперед заданное состояние системы может быть всегда достигнуто последовательным выполнением конечного набора элементарных команд из фиксированного набора команд[7].
Первые ЭВМ 40—50-х годов 20 века перепрограммировались путем переподключения кабелей и переключения тумблеров, требуя глубокого понимания их внутреннего устройства. В качестве примера таких машин можно привести ENIAC[8].
Одним из наиболее важных шагов в сторону современных компьютеров является переход к архитектуре Джона фон Неймана, которая впервые была реализована в Великобритании, в компьютере, разработанном при участии Алана Тьюринга под руководством Дж. Р. Уомерзли, который назывался Марк I. 21 июня 1941 года на нем была запущена первая хранимая в памяти компьютера программа. Для облегчения программирования этой машины Тьюрингом была придумана система сокращенного кодирования, в которой использовалась последовательность выводимых на перфоленту телетайпных символов с целью представления двоичного машинного кода[9].
Один из сотрудников Алана Тьюринга, Джон Мочли, которой позднее стал руководителем и сооснователем компании Eckert–Mauchly Computer Corporation, разработавшей такие ЭВМ, как UNIVAC и BINAC, поручил своим сотрудникам создать транслятор алгебраических формул. Не смотря на то, что эта амбициозная цель в 40-х годах и не была достигнута, под руководством Мочли был разработан так называемый «Краткий код», реализованный с помощью интерпретатора, в котором переменные и операции кодировались двухсимвольными сочетаниями. Грейс Хоппер, работая с начала 50-х годов над набором математических подпрограмм для UNIVAC I, изобрела программу-компоновщик «A-0», осуществляющую по заданному идентификатору выборку нужной подпрограммы из библиотеки, которая хранится на магнитной ленте, и записывала ее в оперативную память[10].
В 50-е годы 20 века появились первые высокоуровневые языки программирования, Грейс Хоппер разработал COBOL, а Джон Бэкус — FORTRAN. Подобные разработки значительно упростили написание прикладного программного обеспечения, осуществляемого в то время каждой фирмой, которая приобретала вычислительную машину[11].
В начале 50-х годов 20 века понятие программного обеспечения еще не сложилось. Так не говорилось о нем ничего в статье «Office Robots», вышедшей в 1952 году в журнале Fortune, где были описаны компьютеры Univac. Но в статье уже упоминается компьютер в качестве универсального устройства, процесс программирования в этой статье был анахронически описан в виде переключения тумблеров[12]. Но к середине 50-х годов уже вполне сложилась разработка программного обеспечения на заказ, несмотря на то, что сам термин программного обеспечения еще не использовался, тогда говорили просто о программистском обслуживании или программировании на заказ. Первой программной фирмой стала созданная в 1956 году компания System Development Corporation, основанная на базе фирмы RAND Corporation, которая принадлежала Американскому правительству. На этом этапе заказчиками уникального и нетиражируемого программного обеспечения были государственные структуры и крупные корпорации, а стоимость в один миллион долларов за программу не была чем-то необычным[13].
Непосредственно сам термин программного обеспечения вошел в широкий обиход с начала 60-х годов 20 века, в то время, когда актуальным стало разграничение управляющих компьютером команд и аппаратного обеспечения, то есть его физических компонентов. В то же время и началось становление индустрии программного обеспечения в виде самостоятельной отрасли. Первой компанией по разработке программного обеспечения стала корпорация Computer Sciences Corporation, основанная Роем Наттом и Флетчером Джоунсом в 1959 году с начальным капиталом в 100 долларов. Первыми клиентами CSC и появившихся вслед за нею софтверных компаний были государственные организации и сверхкрупные корпорации, вроде НАСА, и фирма продолжала работать на рынке заказного программного обеспечения, как и другие первые программистские частные стартапы, такие как Computer Usage Company[14].
Первыми программными продуктами, выпущенными самостоятельно и не поставляемыми в комплекте с компьютерным оборудованием, были выпущенный в 1965 году фирмой Applied Data Research генератор компьютерной документации AUTOFLOW, который автоматически рисовал блок-схемы, и разработанный в 1960—1967 годах в Informatics Inc. транслятор языка программирования MARK-IV[15]. Становление рынка корпоративного программного обеспечения тесно связано с появлением семейства компьютеров IBM System/360. Достаточно массовые, относительно недорогие вычислительные машины, которые совместимы друг с другом на уровне программного кода, открыли дорогу тиражируемому программному обеспечению[16].
Постепенно круг заказчиков программного обеспечения расширялся, стимулируя разработку новых видов программного обеспечения. Так появились первые фирмы, которые специализировались на разработке систем автоматизированного проектирования.
В 1966 году журнал Business Week впервые обратился к теме индустрии программного обеспечения. Статья имела название «Software Gap — A Growing Crisis for Computers» и рассказывала о перспективности этого бизнеса и о связанном с нехваткой программистов кризисе. Типичные программные продукты того времени служили для автоматизации общих для бизнеса задач, таких, как автоматизации бизнес-процессов или начисление заработной платы в таких предприятиях среднего бизнеса, как коммерческий банк или производственное предприятие. Стоимость такого программного обеспечения обычно была между пятью и ста тысячами долларов[17].
Появление в 70-х годах 20 века первых персональных компьютеров создало предпосылки и для зарождения массового рынка программного обеспечения. Изначально программы для персональных компьютеров распространялись в «коробочной» форме по почте или через торговые центры и имели цену 100—500 американских долларов[18].
В качестве основных знаковых продуктов для зарождающего массового рынка программного обеспечения выделяют:
- электронную таблицу VisiCalc, идея которой пришла Дэниелу Бриклину, когда тот, будучи инженером-программистом в DEC и выпускником MIT, посещал курсы в Гарвардской школе бизнеса, хотел облегчить себе утомительные финансовые расчеты;
- текстовый процессор WordStar, разработка которого была начата Сеймуром Рубинштейном после тщательного изучения потребностей рынка[19].
О VisiCalc впервые заговорили, как о killer application, то есть компьютерном приложении, самим фактом своего существования доказывающем необходимость и нужность покупки платформы, для которой реализована такая программа. Для WordStar и VisiCalc такой платформой стали персональные компьютеры, благодаря таким программам из богатой игрушки для гиков ставшие рабочим инструментом. С них началась микрокомпьютерная революция, а у этих программ появились конкуренты: электронные таблицы Lotus 1-2-3, SuperCalc, система управления базами данных dBase II, текстовый процессор WordPerfect и другие подобные. СУБД, электронные таблицы, текстовые процессоры, а также графические редакторы вскоре стали основными продуктами рынка программного обеспечения для персональных компьютеров[20].