МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Кафедраматематичних дисциплін та інформатики
РЕФЕРАТ
з дисципліни: ”Вступ до спеціальності”
на тему:
”Історія розвитку прикладного програмногозабезпечення персонального комп'ютера”
Тернопіль-2008
ЗМІСТ
1. Вступ. Загальні поняття ПО для ПК
2. Пакети прикладних програм (ППП)
2.1 Поняття ППП
2.2 Структура і основні компоненти ППП
2.3 Етапи розвитку ППЗ
3. Висновок
4. Список використаної літератури
1. ВСТУП. ЗАГАЛЬНІПОНЯТТЯ ПЗ ДЛЯ ПК
Персональнийкомп'ютер, як відомо, є універсальним пристроєм для обробки інформації.Персональні комп'ютери можуть виконувати будь-які дії по обробці інформації.Для цього необхідно скласти для комп'ютера на зрозумілій йому мові точну ідокладну послідовність інструкцій — програму, як треба обробляти інформацію.
Міняючипрограми для комп'ютера, можна перетворити його на робоче місце бухгалтера абоконструктора, дизайнера або ученого, письменника або агронома. Крім того,тенденція пониження вартості комп'ютерної техніки при одночасному зростанні її продуктивностіпривела до того, що комп'ютери стають предметом домашнього ужитку, як,наприклад, телевізор або холодильник, що розширює сферу застосування ПК щебільше. Відповідно, потрібне все більш різноманітне програмне забезпечення длявирішення завдань в нових областях застосування ПК. Безперервне підвищенняпотужності персональних комп'ютерів, периферійних пристроїв, а також розвитокзасобів зв'язку дає розробникам програмного забезпечення все більше можливостейдля максимально повного задоволення кінцевих запитів споживачів. Це і графічнийінтерфейс, що став стандартом, для будь-якого ПО, і упроваджені можливості длявідправки документів і даних з допомогою Інтернет безпосередньо з прикладноїпрограми (Microsoft Word 2000, Excel 2000, Access 2000 і ін.), і можливістьвикористання комп'ютера як сховища інформації завдяки появі нового виглядунакопичувачів великої місткості і малим часом доступу до даних, а також багатоінших можливостей і сервісних функцій.
При своємувиконанні програми можуть використовувати різні пристрої для введення івиведення даних, подібно тому, як людський мозок користується органами чуттядля отримання і передачі інформації. Сам по собі ПК не володіє знаннями ні водній області свого застосування, всі ці знання зосереджені у виконуваних наньому програмах. Тому вираз, що часто вживається, «комп'ютер зробив» означаєрівно те, що на ПК була виконана програма, яка дозволила виконати відповіднудію.
В даний часвесь комплекс ПЗ ділиться на системні і призначені для користувача програми.Системне програмне забезпечення виконує функції «організатора» всіх частин ПК,а також підключених до нього зовнішніх пристроїв. Програми для користувачівслужать для виконання яких — або конкретних завдань у всіх сферах людськоїдіяльності.
У своєму рефератія хочу розповісти про розвиток прикладного програмного забезпеченняперсонального комп'ютера, пакетів прикладних програм (ППЗ), а також провикористання прикладних програм в житті кожного користувача.
2.ПАКЕТИ ПРИКЛАДНИХ ПРОГРАМ ( ППЗ )
2.1ПОНЯТТЯ ППЗ
Численніпрограмні засоби для вирішення різних типів обчислювальних завдань можнарозділити на 4 групи:
- окремі прикладні програми;
- бібліотеки прикладнихпрограм;
- пакети прикладних програм;
- інтегровані програмнісистеми.
Розглянемо попорядку кожну з цих груп. Окрема прикладна програма пишеться, як правило, на деякійуніверсальній мові програмування (Паскаль і т.п.) і призначається для вирішенняконкретного прикладного завдання. Прикладами можуть служити програма рішеннясистеми лінійних рівнянь алгебри тим або іншим чисельним методом, програмаобчислення власних значень матриці і т.д. Авторами таких програм є прикладніпрограмісти, що спеціалізуються: у відповідних наочних областях. Прикладнапрограма може бути реалізована у вигляді набору модулів, кожний з яких виконуєдеяку самостійну функцію. Наприклад, програма обчислення власник значеньматриці може включати модулі, — реалізовуючі перетворення матриці з однієї,форми уявлення в іншу введення і виведення даних, обробку аварійних ситуацій звидачею діагностичних повідомлень користувачу і інші дії.
Бібліотека є наборомокремих програм, кожна з яких вирішує деяку прикладну задачу або виконує певнідопоміжні функції (управління пам'яттю, обмін із зовнішніми пристроями і т.п.).Бібліотеки програм зарекомендували себе ефективним засобом рішенняобчислювальних задач. Вони інтенсивно використовуються при рішенні наукових іінженерних задач за допомогою ЕОМ. Умовно їх можна розділити на бібліотекиширокого застосування і спеціалізовані бібліотеки.
Програми, щовходять до складу бібліотеки широкого застосування, призначені для вирішеннязавдань з різних наочних областей.
Спеціалізованібібліотеки орієнтовані на рішення окремих, деколи достатньо вузьких, класівзавдань.
Перехід відрозробки окремих прикладних програм до створення бібліотек програм поставивперед розробниками ряд проблем як системного, так і прикладного характеру. Доосновних проблем, що виникають на різних етапах конструювання бібліотеки,відносяться проблеми систематизації, документування, тестування іпереносимості.
Проблемасистематизації полягає в розбитті бібліотеки на розділи і підрозділи відповіднодо класифікації заду наочної області і методів їх рішення. Сюди входить вибірєдиних правил найменування програм (з урахуванням модифікації і розвиткубібліотеки), єдиних форм уявлення і найменування математично схожих об'єктів, єдиноїсхеми контролю помилок і т.д.
Проблемадокументування полягає в складанні єдиних правил опису програм бібліотеки. Наявністьякісної документації істотно спрощує доступ до окремих програм, організацію взаємодіїміж програмами, включення нових програм. Важливу роль при рішенні вказаної проблемиграють засоби автоматизації документування, що забезпечують широке застосуванняшаблонів (для титульних листів, фрагментів тексту і т. п.), використаннятекстів програм бібліотеки для автоматизованого складання документації і т.д.
Тестуваннябібліотеки полягає в перевірці програм на спеціально підготовлених тестовихданих. Результати тестування великою мірою залежать від правильності і повнотинабору тестів. Тестування, зокрема, включає перевірку відповідності текступрограми вибраному стандарту мови програмування, визначення областізастосовності програми і якості діагностичного апарату, виявлення різноманітнихкількісних характеристик, програми (швидкість роботи, точність одержуванихрезультатів і т. п.) порівняння з іншими програмами для вирішення того жзавдання.
Проблемапереносимості полягає в розробці методів і засобів, що забезпечують можливістьвикористання програм бібліотеки в різних обчислювальних умовах (на різних типахЕОМ, в різних операційних системах і т.д.) Ця проблема включає такі аспекти, лакпроходження стандарту мови програмування, організація роботи змашинно-залежними константами, створення інструментальних засобів, щодозволяють автоматизувати перенесення програм з одного обчислювальногосередовища в інше. Доступ до програм бібліотеки здійснюється з використаннямштатних засобів тієї або іншої мови програмування. Розробка бібліотек програмзвичайно здійснюється силами прикладних програмістів. При цьому нерідко вбібліотеку включаються програми, написані. різний час і різними авторами.Відсутність у складі бібліотеки спеціалізованого системного забезпеченнядозволяє в більшості випадків при її конструюванні обійтися без якої-небудьістотної допомоги системних програмістів (вони можуть притягуватися, наприклад,для написання лише окремих службових програм).
Таким чином,характерною особливістю бібліотек програм є відсутність проблемно-орієнтованоївхідної мови і досить розвиненого системного забезпечення. Як правило,бібліотеки програм орієнтовані на типові завдання наочної області і не містятьзасобів рішення специфічних прикладних задач (в першу чергу це відноситься добібліотек широкого застосування програми яких можуть використовуватися длявирішення завдань з різних наочних областей).
Перейдемотепер до розгляду пакетів прикладних програм (ППП) як самостійної формиприкладного програмного забезпечення. Для цього перш за все необхідно уточнитисаме поняття пакету. В даний час не існує визнаної всіма фахівцями єдиної точкизору з цього питання. Відсутня також єдина термінологія в пакетнійпроблематиці. Це пояснюється перш за все новизною даного наукового напряму,який склався, в основному за останні 30 років (приблизно з початку 70-х років).Крім того, різні визначення ППП розглядають це поняття з різних точок зору,виділяючи ті або інші функціональні або структурні особливості пакетів. ПППвизначається і як сукупність програм для вирішення певного класу завдань, доякої звертаються за допомогою простої символіки (мови) і як сукупність програм,сумісних по структурі даних, способам управління, об'єднуваних спільністюфункціонального призначеннями тих, що є засобом рішення класу завдань певнимкругом користувачів. При цьому під класом завдань розуміється безліч прикладнихпроблем, вживаних алгоритмів, що володіють спільністю, і інформаційних масивів,а також визначення пакету як комплексу взаємозв'язаних програм, що володіютьспеціальною організацією, яка забезпечує значне підвищення продуктивності праціпрограмістів і користувачів пакету. В даному випадку не робиться спробивиділити ППП серед інших форм програмного забезпечення ЕОМ.
Вважатимемопакетом програм будь-який комплекс, орієнтований на рішення деякого класузавдань. Формально таке визначення не виключає з числа пакетів і бібліотекипрограм. Проте уявлення, що склалося на сьогодні, про ППП як про самостійнуформу програмного забезпечення, дозволяє вказати на ряд характерних відмітнихособливостей пакетів.
Однією зголовних особливостей є орієнтація ППП не на окреме завдання, а на деякий класзавдань, що включає і специфічні завдання наочної області. Звідси слідуєнеобхідність, модульної організації ППП як основного технологічного принципуйого конструювання. Суть цього принципу полягає в оформленні загальнихфрагментів використовуваних алгоритмів у вигляді самостійних модулів. Рішеннясформульованої користувачем задачі здійснюється деяким «ланцюжком»таких модулів.
Іншоюособливістю ППП є наявність в його складі спеціалізованих мовних засобів, щозабезпечують зручну роботу користувача з пакетом. Як правило, розвинений пакетволодіє декількома вхідними мовами, орієнтованими на виконання різних функцій ірізні типи користувачів. Мова може призначатися для формулювання початковогозавдання, опису алгоритму рішення і початкових даних, організації доступу іпідтримки бази даних або інформаційної бази ППП, розробки програмних модулів,опису моделі наочної області, управління процесом рішення в діалоговому режиміі інших цілей.
Ще однаособливість ППП полягає в наявності спеціальних системних засобів, щозабезпечували прийняту в наочній області дисципліну роботи. До їх числавідносяться спеціалізовані банки даних, засобу інформаційного забезпечення,засобу взаємодії пакету з операційною системою і т.п.
Нарешті,інтегрованою програмною системою назвемо комплекс програм, елементами якого єрізні пакети і бібліотеки програм. Прикладом служать системи автоматизованогопроектування, що мають в своєму складі декілька ППП різного призначення. Частов подібній системі розв'язуються завдання, що відносяться до різних класів абонавіть до різних наочних областей.
Слід вказатина відсутність чітких і однозначних меж між перерахованими формами прикладногопрограмного забезпечення. Так, окрема прикладна програма, орієнтована нарішення класу завдань і оформлена у вигляді сукупності модулів можерозглядатися як бібліотека або навіть пакет програм не дивлячись на відсутністьспеціалізованих мовних і системних засобів.
Перехід відстворення бібліотек програм до розробки ППП був викликаний цілим рядом причин.До їх числа перш за все відноситься різке збільшення можливостей ЕОМ. Цепривело до значного ускладнення системного забезпечення обчислювальних машин.Відбулися істотні зміни в більшості областей застосування ЕОМ.
2.2СТРУКТУРА І ОСНОВНІ КОМПОНЕНТИ ППП
Не дивлячисьна велику різноманітність конкретних пакетних розробок, можна виділити наступніосновні компоненти ППП:
— вхідні мови;
— наочнезабезпечення;
— системнезабезпечення.
Важливовідзначити, що таке розбиття на складові елементи відображає в першу чергуфункції, що виконуються програмами ППП, а не структуру самих програм, яказалежить від індивідуальних особливостей конкретного пакету. У різних пакетахвказані компоненти можуть бути розвинені в різному ступені або зовсім бутивідсутнім. Проте найбільш розвинені ППП, як правило, володіють всіма цимикомпонентами, кожний з яких може мати досить складну структуру.
У численнихроботах, присвячених пакетній проблематиці, із-за не сталої термінологіїнерідко використовуються інші назви складових елементів ППП. Наприклад, вхіднумову називають також мовою завдань або мовою управління. Для позначеннянаочного забезпечення застосовуються терміни «функціональненаповнення», «функціональна підсистема» або «тілопакету». Системне забезпечення часто називають системним наповненням,організуючою або такою, що управляє програмою, а також процесором пакету.
Розглянемофункції кожного з компонентів ППП.
Вхідні мови єзасобом спілкування користувача з пакетом. Як наголошувалося в п. 3.1, розвиненийпакет може володіти декількома вхідними мовами, призначеними для виконаннярізних функцій і орієнтованими на різні типи користувачів. Можна виділитинаступні основні типи користувачів ППП:
Розробник ППП,що здійснює його модифікацію і розвиток з урахуванням зміни круга користувачів,класу вирішуваних задач (поява нових типів завдань, розвиток чисельних методів,модифікація форм проведення робіт і т. д.), а також складу апаратного іпрограмного забезпечення ЕОМ:
Відповідальнийза супровід, у функції якого входить підтримка пакету в працездатному стані вумовах конкретної обчислювальної системи (забезпечення збереження програм імасивів даних, своєчасне дублювання інформаційних файлів, виявлення помилок впрограмах пакету).
Адміністратор,що відповідає за організацію доступу користувачів до пакету, вміст бази даних,захист інформації від несанкціонованого доступу;
Кінцевий користувач,що застосовує пакет для вирішення конкретних прикладних завдань.
Вхідні мовивідображають об'єм і якість засобів, що надаються пакетом, а також зручність їхвикористання. Таким чином, з погляду кінцевого користувача саме вхідна мова єосновним показником можливостей ППП.
Як вхідні мовиможуть використовуватися як універсальні, так і спеціалізовані мовипрограмування. Наприклад, як вхідна мова розробника ППП для написанняприкладних і системних програм пакету звичайно використовується та або іншауніверсальна мова програмування (Фортран, Паскаль). В той же час вхідна мова кінцевогокористувача в розвиненому пакеті, як правило, є мовою якісно вищого рівня впорівнянні з універсальними мовами. Образотворчі засоби такої мови враховуютьособливості завдань наочної області і специфіку користувачів. Подібні мовиназивають проблемно-орієнтованими, або наочно-орієнтованими.
Перейдемотепер до розгляду інших компонентів ППП, конкретна прикладна діяльністьхарактеризується двома чинниками:
1) класомвирішуваних задач і використовуваних для цих цілей методів
2) дисципліноюроботи, тобто сукупністю правил, угод і технологічних прийомів, прийнятих прирозробці, відладці, експлуатації програм.
Наочнезабезпечення є компонентом пакету, що відображає особливості першого з цихчинників, тобто особливості конкретної наочної області. Наочне забезпеченнявключає:
- програмні модулі, щореалізовують алгоритми (або їх окремі фрагменти) рішення прикладних задач;
- засоби збірки програм зокремих модулівВизначенняскладу бібліотеки модулів і форм їх взаємодії між собою є одним з найбільштрудомістких завдань при побудові ППП. Її рішення припускає проведенняретельного і кваліфікованого модульного аналізу використовуваних алгоритмів.Вдало проведений модульний аналіз в значній мірі впливає на повноту обхватунаочної області, а також на можливість розширення класу вирішуваних задач.Таким чином, виділення модулів істотно залежить від специфіки завдань івикористовуваних алгоритмів і, по суті справи, відображає прийнятий в пакетспосіб збірки програм.Найбільш поширенов даний час оформлення кожного модуля у вигляді програмної одиниці на тій абоіншій мові програмування (наприклад, у вигляді підпрограми абопідпрограми-функції на мові Фортран). Такий модуль забезпечує рішення деякоїсамостійної задачі і пов'язаний з іншими модулями лише вхідною і вихідною інформацією.Організація наочного забезпечення у вигляді бібліотеки програм характерна длябільшості тих, що існують ППП.Крімрозглянутого підходу до оформлення модулів як програмних одиницьвикористовуються і інші способи.Системнезабезпечення є сукупністю системних засобів (програми, файли, таблиці і т. д.),що забезпечують певну дисципліну роботи користувача при рішенні прикладних задач.По своїй ролі у складі ППП і виконуваних функцій системне забезпечення по сутіє спеціалізованою операційною системою, що визначає операційне оточення пакету.Не дивлячись на різноманіття способів реалізації системного забезпечення врамках конкретних пакетних розробок, можна виділити його наступні основнікомпоненти:
- монітор, що управляєпроцесом рішення і взаємодією всіх компонентів ППП;
- транслятори з вхідних мов;
- засоби роботи з даними;
- засоби інформаційногозабезпечення, що реалізовують видачу різноманітної довідкової інформації як позапитах користувачів (про структуру і можливості ППП, про допущені помилки і т.д.),так і по запитах різних компонентів пакету (наприклад, відомості провластивості модулів наочного забезпечення, необхідні планувальнику обчислень);
- різні службові програми,зокрема що реалізовують взаємодію пакету з операційною системою (робота іззовнішньою пам'яттю, засоби введення/висновку, драйвери спеціалізованих,зовнішніх пристроїв і ін.).
У конкретномуППП, як правило, відсутнє чітке структурне розділення програм на наочне ісистемне забезпечення. Наприклад, програма планування обчислень може одночасновиконувати ті або інші службові функції { інформаційне забезпечення, зв'язок зопераційною системою і т. п.) і тим самим носитися як до наочного, так і досистемного забезпечення. Крім того, одні і ті ж програми в одному пакеті можутьвідноситися до наочного забезпечення, а в другом — до системного. Так, програмививедення графіків в рамках спеціалізованого пакету машинної графіки природновіднести до наочного забезпечення. Проте ті ж програми слід вважати службовимиі такими, що відносяться до системного забезпечення, наприклад, в пакетірішення обчислювальних задач).
2.3ЕТАПИ РОЗВИТКУ ППЗПакетнапроблематика як самостійне науково напрями склалася в основному за останні15-20 років. Перші ППЗ були простими тематичними підбірками програм длявирішення окремих завдань в тій або іншій прикладній області. Сучасний пакет єскладною програмною системою, що включає спеціалізовані системні і мовнізасоби. У щодо короткої історії розвитку обчислювальних ППЗ можна виділити 4основних покоління (класу) пакетів. Кожний з цих: класів характеризуєтьсяпевними особливостями тих, що входять склад ППЗ компонентів — вхідних мов,наочного і системного забезпечення.Як вхіднімови ППЗ першого покоління використовувалися універсальні мови програмування(Фортран, Алгол-60 і т. п.) або мови управління завданнями відповіднихопераційних систем Проблемна орієнтація вхідних мов досягалася за рахуноквідповідної мнемоніки в іменах змінних, функцій процедур, а також в текстовихконстантах. Складання завдань на такій мові практично не відрізнялося віднаписання програм на алгоритмічній мові.Наочне забезпеченняперших ППЗ, як правило, було організоване у формі бібліотек програм, тобто увигляді наборів (пакетів) незалежних програм на деякій базовій мовіпрограмування (звідси вперше виник і сам термін «пакет»). Такі ППЗіноді називають пакетами бібліотечного типа, або пакетами простої структури.Яксистемне забезпечення пакетів першого покоління звичайно використовувалисяштатні компоненти програмного забезпечення ЕОМ: компілятори з алгоритмічнихмов, редактори текстів, засоби організації бібліотек програм, архівні системи іт. д. Ці пакети не вимагали скільки-небудь розвиненої системної підтримки, ідля їх функціонування цілком вистачало вказаних системних засобів загальногопризначення. В більшості випадків розробниками таких пакетів були прикладніпрограмісти, які намагалися пристосувати універсальні мови програмування досвоїх потреб.РозробкаППЗ другого покоління здійснювалася вже за участю системних програмістів. Цепривело до появи спеціалізованих вхідних мов (їх називають вбудованими мовами)на базі універсальних мов програмування. Проблемна орієнтація таких мовдосягалася не тільки за рахунок використання певної мнемоніки, але такожзастосуванням відповідних мовних конструкцій, які спрощували формулюваннязавдання і робили його наочнішим. Транслятор з такої мови був препроцесором(найчастіше макропроцесор) до транслятора відповідної алгоритмічної мови.Як модулів пакетах цього класу стали використовуватися не тільки програмні одиниці(тобто закінчені програми на тій або іншій мові програмування), але і такіоб'єкти, послідовність операторів мови програмування, сукупність даних, схемарахунку і ін.Істотнізміни зазнали також принципи організації системного забезпечення ППЗ. Удостатньо розвинених пакетах другого покоління вже можна виділити елементисистемного забезпечення, характерні для сучасних пакетів: монітор, трансляториз вхідних мов, спеціалізовані банки даних, засобу опису моделі наочної областіі планування обчислень і ін.Третійетап розвитку ППЗ характеризується появою самостійних вхіднихмов, орієнтованих на користувачів-непрограмістів. Особлива увага в таких ППЗприділяється системним компонентам що забезпечує простоту і зручність. Цедосягається головним чином за рахунок такої спеціалізації вхідних мов івключення до складу пакету засобів автоматизованого планування обчислень.Нарешті,четвертий етап характеризується створенням ППЗ, експлуатованих в діалоговомурежимі роботи. Основною перевагою діалогової взаємодії з ЕОМ є можливістьактивного зворотного зв'язку з користувачем в процесі постановки завдання, їїрішення і аналізу отриманих результатів. Поява і інтенсивний розвиток різнихформ діалогового спілкування обумовлена перш за все прогресом у області технічнихзасобів забезпечення діалогу. Сюди відноситься створення різноманітноїдисплейної техніки (растрові дисплеї, засоби реалізації графічних, колірних ізвукових можливостей, різні технічні пристрої для ведення діалогу і т. д.), атакож надійних і швидкісних ліній зв'язку. Розвиток апаратного забезпеченняспричинив за собою створення різноманітних програмних засобів підтримкидіалогового режиму роботи (діалогові операційні системи, діалогові пакетипрограм різного призначення і т. д.). У багатьох додатках діалог вже повністюзамінив пакетну обробку, а відрядковий режим діалогу поступається місцем поекранному режиму і багато віконному графічному способу спілкування.Прикладнасистема складається з діалогового монітора-набору універсальних програм, що забезпечуютьведення діалогу і обмін даними, і бази знань про область. Інформація проструктуру, цілях і форма діалогу задає сценарій, відповідно до який моніторуправляє ходом діалогу. Носіями процедурних знань про наочну область єприкладні модулі, що реалізовують функції власної системи. Таким чином,створення прикладної системи зводиться до настройки діалогового монітора на конкретнийдіалог, шляхом заповнення бази знань. При цьому програмувати в традиційномусенсі цього слова доводиться лише прикладні модулі, знання про діалог вводятьсяв систему за допомогою набору відповідних засобів — редактора сценаріїв.Логічно вимагати, щоб редактор сценаріїв також був діалоговою програмою, щовідповідала розглянутим вище вимогам. Завдяки готовому універсальному моніторупрограміст може зосередитися на рішенні чисто прикладних завдань, виділення жзнань про діалог в сценарій забезпечує в значній мірі необхідна гнучкістьпрограмного продукту.Великаувага в даний час приділяється проблемі створення "інтелектуальних" ППЗ.Такий пакет дозволяє кінцевому користувачу лише сформулювати своє завдання взмістовних термінах, не указуючи алгоритму її рішення. Синтез рішення і збіркацільової програми проводяться автоматично. При цьому деталі обчислень прихованівід користувача, і комп'ютер стає інтелектуальним партнером людини, здатнимрозуміти його завдання. Наочне забезпечення подібного ППЗ є деякою базою знань,що містить як, процедурні, так і описові знання. Такий спосіб рішення інодіназивають концептуальним програмуванням, характерними особливостями якого єпрограмування в термінах наочної області використання ЕОМ вже на етапіпостановки завдань, автоматичний синтез програм рішення задачі, накопиченнязнань про вирішувані задачі в базі знань.Назакінчення даного розділу розглянемо ще одну сучасну тенденцію розробки ППЗ.Вона полягає в застосуванні спеціалізованих інструментальних засобів і систем,що дозволяють прискорити і спростити процес створення пакету, а також понизитивартість розробки. При цьому особлива увага приділяється створенню системнихзасобів, що дозволяють використовувати як наочне забезпечення ППЗ написаніраніше прикладні програми. Крім того, інструментальні системи звичайнореалізуються таким чином, що їх можна використовувати як базу (готовихкомпонентів) для системного забезпечення пакетів, що розробляються (тому їхіноді називають базові інструментальними системами). Створення інструментальнихзасобів, що спрощують розробку ППЗ в різних наочних областях, є одним зактуальних напрямів системного програмування в пакетній проблематиці.При виборіметоду реалізації того або іншого ППЗ слід враховувати особливості конкретноїситуації, зокрема, людські і матеріальні ресурси, що є в наявності. Так пакетбібліотечного типа, не будучи розвиненою системою з погляду розглянутих вимог,володіє, проте, тією перевагою, що вхідна мова і системне забезпечення такогопакету можуть бути достатньо легко реалізовані силами прикладного програміста.Тому у разі, коли подібний пакет задовольняє конкретних користувачів, його розробкає цілком виправданою.
3. ВИСНОВОК
Сучаснийукраїнський ринок прикладного програмного забезпечення є, значною мірою, ринкомпіратського ПО. Це пов'язано з тим, що український споживач не в змозі платитиповну вартість ліцензійного ПО західних і американських розробників. Заоцінками експертів, до 90% продажів складає піратське програмне забезпечення.
Західнінайбільші виробники програмного забезпечення вирішили рухатися 2-а шляхами: зодного боку, вони укупі з правоохоронними органами все частіше привертаютьпродавців піратського ПО до кримінальної відповідальності, а з іншою прагнутьтримати ціни на свої продукти мінімально низькими, розробляючи і запускаючирізного роду партнерські програми. Так, наприклад, в травні 2000г. фірмаMicrosoft проводила опит керівників підприємств, що використовують від 50 ПК,на предмет реєстрації підприємств в московському офісі Microsoft для того, що бв майбутньому вони могли придбати фірмові продукти із значними знижками. Окрімцього, та ж фірма Microsoft пропонує всім охочим «викачати» її новітній браузерMicrosoft Explorer 5.01 з вузла в мережі Інтернет абсолютно безкоштовно.
Помилки вприкладному програмному забезпеченні були і залишаються основним шляхомпроникнення зловмисника як на сервера, так і на робочі станції. Об'єктивнапричина цього — розробка подібного ПО різними групами розробників, які простоне в змозі приділити належної уваги мережевої і локальної безпеки свогопродукту. І якщо фірми-розробники операційних систем витрачають величезні сумина ретельні випробування поведінки їх програм в нестандартних ситуаціях, атакож активно враховують багаторічний досвід своїх же помилок, то для невеликихфірм це просто не під силу, та і украй невигідно економічно.
Помилкиактивно шукаються групами «хакерів» практично у всьому більш меншпоширеному ПО, проте, найбільшої популярності набувають, звичайно, дослідженняпрограм, встановлених майже у кожного користувача.
Багато атаквикористовують не тільки безпосередні помилки в реалізації ПО, але інепродумані розробниками аспекти використання стандартних можливостей програми.Так, мабуть, найяскравішим прикладом цього є MACRO-віруси в документах системиMicroSoft Office. Можливість виконання макросів була вбудована в цю систему зсамих благих спонук, але той факт, що макроси можуть запускатися на певні події(наприклад, відкриття документа) і діставати доступ на модифікацію до іншихдокументів, відразу ж був використаний творцями вірусів зовсім не в благихцілях.
На закінченняя хотів би відзначити те, що розробка і захист прикладного програмногозабезпечення вельми трудомісткий процес, що вимагає певних навиків і знань.
4.СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ
1. Можаров Р.В., Можарова Н.Р.,Евтеев В.В., Кузьменко О.А., Шевченко М.О. Программное обеспечение персональныхкомпьютеров // Учебное пособие для вузов. – М.: Финстатинформ, 1999.
2. Хомоненко А.Д. Основы современныхкомпьютерных технологий// Учебное пособие для вузов.– Ст-Петербург: Корона принт, 1998.
3. Борисов В.А. Разработка пакетовпрограмм вычислительного типа. — М.: Изд-во МГУ, 1990.
4. http://referats.net.ua