Студопедия — Висновки. В даному розділі були проаналізовані вимоги до розроблюваної системи
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Висновки. В даному розділі були проаналізовані вимоги до розроблюваної системи






В даному розділі були проаналізовані вимоги до розроблюваної системи. Вимоги відображають те, що система повинна робити.

Спочатку були сформульовані первинні вимоги, що документують бажання і потреби вимог замовника і фактично відображають функції проектованої системи на концептуальному рівні.Це є лише початковою фазою роботи з вимогами.

Наступним кроком стало виділення детальних вимог, що документують вимоги спеціально структурованою мовою за допомогою. Вони деталізують первинні вимоги.

Результати процедур із формулювання та аналізу вимог представлені у вигляді діаграми прецедентів (варіантів використання, UseCase), діаграми діяльності, діаграми взаємодій (діаграми послідовностей і комунікації) та їх описів.


 

3 ПРОЕКТУВАННЯ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ СТВОРЕННЯ ЗАСОБІВ ОПИСУ ПРОГРАМИ ДЛЯ ПОБУДОВИ ЇЇ АВТОМАТНОЇ МОДЕЛІ

Проектування є процесом специфікації рішення, яке суміщене з моделлю аналізу [10].

Під час проектування програмної системи використано прототипо-орієнтований стиль проектування. Розробник практично автономно розробляє виконавчу модель системи. При цьому використовується модель предметної області. Цей стиль характерний тим, що в ньому основною дійовою особою є програміст, що добре володіє певним набором ІТ-технологій, але слабо орієнтується в алгоритмах рішення завдань і можливих конструкціях системи. Характерною рисою цього стилю є ілюзія швидкого просування у вирішенні проблеми. Такий стиль з успіхом застосовується невеликими командами під час проектування систем невеликого об’єму.

Розглянемо кожен з етапів проектування системи.

3.1 Архітектурне проектування

3.1.1 Об’єктно орієнтована парадигма

Найважливішим кроком на шляху до вдосконалення мов програмування стала поява об'єктно-орієнтованого підходу до програмування (або, скорочено, ООП) та відповідного класу мов.

При об'єктно-орієнтованому підході програма являє собою опис об'єктів, їх властивостей (або атрибутів), сукупностей (або класів), відносин між ними, способи їх взаємодії та операцій надоб'єктами (або методи).

Безперечною перевагою даного підходу є концептуальна близькість до предметної області довільної структури та призначення. Механізм спадкоємства атрибутів і методів дозволяє будувати похідні поняття на основі базових і таким чином створювати модель як завгодно складної предметної області з заданими властивостями.

Ще одним теоретично цікавою і практично важливою властивістю об'єктно-орієнтованого підходу є підтримка механізму обробки подій, які змінюють атрибути об'єктів і моделюють їх взаємодію в предметній області.

Переміщаючись по ієрархії класів від загальних понять предметної області до більш конкретних (або від більш складних - до більш простих) і навпаки, програміст отримує можливість змінювати ступінь абстрактності або конкретності погляду на модельований їм реальний світ.

Використання раніше розроблених (можливо, іншими колективами програмістів) бібліотек об'єктів і методів дозволяє значно заощадити трудовитрати при виробництві програмного забезпечення, особливо, типового.

Об'єкти, класи і методи можуть бути поліморфними, що робить реалізоване програмне забезпечення більш гнучким і універсальним.

Складність адекватної (несуперечливої і повної) формалізації об'єктної теорії породжує труднощі тестування та верифікації створеного програмного забезпечення. Мабуть, ця обставина є одним з найбільш істотних недоліків об'єктно-орієнтованого підходу до програмування.

Найбільш відомим прикладом об'єктно-орієнтованої мови програмування є мова C + +, яка розвинулася з імперативної мови С. Його прямим нащадком і логічним продовженням є мова С #. Інші приклади об'єктно-орієнтованих мов програмування: Visual Basic, Java, Eiffel, Oberon.

Перехід від структурно-процедурного підходу до об'єктно-орієнтованого програмування, подібно переходу від низькорівневих мов програмування до мов високого рівня, вимагає значних витрат на навчання. Природно, що платою за це є підвищення продуктивності праці програмістів при проектуванні та реалізації програмного забезпечення. Інша перевага ООП перед імперативним підходом - більш високий відсоток повторного використання вже розробленого програмного коду.

При цьому, на відміну від попередніх підходів до програмування, об'єктно-орієнтований підхід вимагає глибокого розуміння основних принципів, або, інакше, концепцій, на яких він базується. До числа основоположних понять ООП зазвичай відносять абстракцію даних, успадкування, інкапсуляцію і поліморфізм.

Спадкування конкретних атрибутів об'єктів і функцій оперування об'єктами засноване на ієрархії. Інкапсуляція означає "приховування" властивостей і методів всередині об'єкта. Поліморфізм, як і у функціональному програмуванні, розуміється як наявність функцій з можливістю обробки даних змінного типу.

У розділах математики, які досліджують моделювання процесу створення програм, під абстракцією прийнято розуміти довільне вираження мови програмування, яке є відмінним від ідентифікатора.

Найважливішою операцією є операція обчислення значення виразу або команди, тобто операція означування (зокрема, функція обчислення значення явно використовувалася при побудові семантики мови програмування). У цьому зв'язку важливо встановити, що є значенням абстракції. Будемо вважати, що значення функції або змінної може бути присвоєно абстракції і є значенням останньої.

В об'єктно-орієнтованому програмуванні кожен об'єкт представляє собою принципово динамічну сутність, тобто змінюється в залежності від часу (а також від впливу зовнішніх по відношенню до нього факторів). Інакше кажучи, об'єкт володіє тим чи іншим способом поведінки. У відношенні абстракції як об'єкта, поведінка полягає у додатку функції до аргументу.

Як було сказано, концепція абстракції в об'єктно-орієнтованому програмуванні адекватно моделюється за допомогою ламбда-числення. Точніше кажучи, операція абстракції в повній мірі є моделлю однойменного поняття ООП.

Іншою фундаментально складовою концепцією об'єктно-орієнтованого програмування є інтуїтивно ясне поняття наслідування. У неформальній постановці під наслідуванням розуміється властивість того чи іншого об'єкта, який є похідним від якогось базового, зберігати поведінка (а саме, атрибути та операції над ними), характерне для батьківського об'єкта. З точки зору мов програмування поняття спадкування означає застосовність всіх або лише деяких властивостей або методів базового (або батьківського) класу для всіх класів, похідних від нього. Крім того, збереження властивостей та методів базового класу має забезпечуватися і для всіх конкретизацій (тобто конкретних об'єктів) будь-якого похідного класу. У математиці концепцію успадкування прийнято моделювати, наприклад, ставленням часткового порядку (яке представляє собою вид ієрархії).

3.1.1 Структурна ієрархія системи

Розроблювана система згідно її опису виконує наступні функції:

- підтримка сучасних версій операційних систем сімейства Windows;

- установка значення розміру фізичної пам’яті при старті системи;

- визначення розміру сторінки пам’яті при запуску системи;

- можливість додавання сегментів пам’яті із довільним розміром (в тому числі розміром, що перевищує розмір фізичної пам’яті);

- вибір кольору сегменту для наочного представлення сегменту у віртуальній пам’яті;

- введення імені сегменту;

- візуальне представлення моделі віртуальної пам’яті;

- візуалізація завантаження сегменту у фізичну пам’ять;

- інтерактивна демонстрація емуляції звертання до сторінок у віртуальній пам’яті;

- реалізація як вибіркових звертань до сторінки сегменту із типом читання та запису, так і реалізація випадкових звертань;

- реалізація алгоритмів заміщення, додавання, витіснення.

Структурна ієрархія системи представлена на рис 3.1.

 

Рис. 3.1. Структурна ієрархія системи







Дата добавления: 2015-09-04; просмотров: 702. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

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

Шов первичный, первично отсроченный, вторичный (показания) В зависимости от времени и условий наложения выделяют швы: 1) первичные...

Предпосылки, условия и движущие силы психического развития Предпосылки –это факторы. Факторы психического развития –это ведущие детерминанты развития чел. К ним относят: среду...

Анализ микросреды предприятия Анализ микросреды направлен на анализ состояния тех со­ставляющих внешней среды, с которыми предприятие нахо­дится в непосредственном взаимодействии...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия