Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Project2.docx Архітектура.docx
Скачиваний:
6
Добавлен:
05.03.2016
Размер:
723.89 Кб
Скачать

Міністерство освіти і науки, молоді та спорту України

Тернопільський національний технічний університет імені Івана Пулюя

Факультет комп’ютерно-інформаційних систем і програмної інженерії

Кафедра програмної інженерії

Програмний проект

«ФУНКЦІОНАЛЬНИЙ КАЛЬКУЛЯТОР »

З дисципліни

«Архітектура програмного забезпечення»

Виконали:

студенти групи СП-31

Палагнюк Наталя

Деркач Остап

Черепанов Ігор

Наворинський Віктор

Керівник:

Петрик М.Р.

Тернопіль 2011

ВСТУП

Розробка ПЗ, керована моделями (MDD), - це нова парадигма розробки програмного забезпечення, керована і підтримувана методами архітектури Model-Driven Architecture (MDA) (підхід до розробки ПЗ, створений командою Object Management Group (OMG) MDA надає ряд рекомендацій для структурування специфікацій, представлених в якості моделей, починаючи з незалежною від платформи моделі (PIM), потім при виборі мови програмування виходячи із специфіки розробки, і нарешті, при трансформації моделі в одну або декілька моделей, що визначаються платформою, в рамках якої вони реалізуються (PSM) . Кількість платформ може бути будь-якою, наприклад: Java ™ 2 Platform, Enterprise Edition (J2EE) ™, CORBA або .Net, реалізовані на одній із загальноприйнятих мов програмування, таких як Java ™, C # або Python. MDA зазвичай виконується за допомогою автоматизованого інструментарію, наприклад, IBM ® Rational ® Software Architect. MDD-розробка, заснована на MDA, в основному займається трансформацією моделей і генерацією коду.

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

Розробка на основі шаблонів допомагає вирішити цю проблему. Шаблон – це вирішення періодично виникаючої проблеми в рамках певного контексту. Шаблони інкапсулюють час, працю і знання розробника, які вже одного разу знадобилися для вирішення проблеми. Більше того, після багаторазового використання в різних проектах шаблон набуває статусу еталона. Використовуючи шаблон як відправну точку в проектуванні, розробники можуть більш гнучко контролювати генерований код, який не обмежений, адже він заснований на абстрактній моделі.

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

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

Існує ряд визначень для калькулятора, а саме:

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

- це комп'ютерна програма, яка емулює функції калькулятора.

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

ЗМІСТ

ВСТУП 2

1 ПОСТАНОВКА ЗАВДАННЯ 5

2 АНАЛІЗ ВИМОГ 5

2.1 Загальний опис і основні проблеми 5

2.2 Функціональні вимоги 6

2.3 Не функціональні вимоги 6

3 ПРОЕКТУВАННЯ 6

3.1 Загальний опис 6

3.2 UML моделювання 7

3.3 Загальна діаграма класів 14

4 ПРОГРАМНА РЕАЛІЗАЦІЯ 15

4.1 Згенерований код – поля і прототипи методів 15

Menu 15

Function 16

Exponent 17

Line 17

4.2 Приклад виконання 18

ВИСНОВКИ 19

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]