Архітектура програмної системи

Реферат

На тему: Архітектура програмної системи






Проектування



Звичайно у проектуванні виділяють дві стадії:

• попереднє проектування (створення/вибір архітектури),

• детальне проектування.

Крім того, у багатьох випадку виділяють інтерфейсне проектування, ціль якого сформувати графічний інтерфейс користувача (СІЛ).

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

1. Структурування системи. Система структурується на декілька підсистем, де під підсистемою розуміється незалежний програмний компонент.

2. Моделювання управління. Визначається модель зв'язків керування між частинами системи.

3. Декомпозиція підсистем на модулі. Кожна підсистема розбивається на модулі. Визначаються міжмодульні з'єднання.

Результатом попереднього проектування є архітектура програмної системи та даних.



Структурування системи



Розглянемо чотири моделі системного Структурування:

° модель сховища даних;

° модель клієнт-сервер;

° трьохрівнева модель;

° модель абстрактної машини.

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

Модель Клієнт-сервер використовується для розподілених систем, де дані розподілені по серверах. Для передачі даних застосовують мережний протокол, наприклад ТСР/ІР.

Трьохрівнева модель є розвитком моделі клієнт-сервер. Графічний інтерфейс користувача

Функціональна частина системи.Реляційна СУБД

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



Моделювання керування



Розглянемо два типи моделей керування:

• модель централізованого керування;

• модель подійного керування.

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

У моделі подітого керування системою керують зовнішні події. Використовуються два різновиди моделі подійного керування: широкомовна модель і модель, керована перериваннями.

Модель диспетчера (менеджера)

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




Модель, керована перериваннями

У моделі, керованій перериваннями , усі переривання розбиті на групи - типи, що утворять вектор переривань. Для кожного типу переривання є свій оброблювач. Кожен оброблювач реагує на свій тип переривання s запускає свій процес.



Чернетка інтерфейсу користувачів



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

Кроки розробки інтерфейсів користувачів

Пропонується 11 етапів розробки інтерфейсів користувачів. Вони спрощені; кожний із цих кроків застосуємо до процесу обробки вимог замовника і (або) процесам обробки докладних вимог:

1. Познайомтеся зі своїм користувачем (С) (обробка С-вимог).

2. Зрозумійте призначення проектованої системи (С).

3. Застосуйте принципи гарного екранного дизайну (С, В).

4. Підберіть підходящий тип вікон (С, В).

5. Розробіть системні меню (С, В).

6. Виберіть відповідні апаратні пристрої керування (С).

7. Виберіть відповідні екранні елементи керування (С).

8. Організуйте і створіть розкладку вікон (С, О).

9. Виберіть підходящі кольори (В).

10. Створіть осмислені значки (С, В).

11. Надайте ефективні повідомлення, зворотний зв'язок і керівництво




Крок 1 (знайомство з користувачем).



Таблиця 3.1. Критерії, за якими оцінюються потенційні користувачі програми

Характеристика

Градації

Рівень знань і досві

Комп'ютерна грамотність

Високий



Середній



Низький — >• поясніть кожний термін

Системний досвід

Високий



Середній



Низький — >• надайте приклади і анімацію

Досвід роботи з подібними програмами

Високий



Середній



Низький — > надайте приклади і анімацію

Освіта

Вчений ступінь



Коледж



Школа — > використайте терміни 1 2-го класу

Рівень читання

> 12 років у школі/5-12/



<5 — > використайте дуже просту мову -

Машинопис

135 слів у хвилину / 55 / [1 0 надати невеликі поля для введення тексту, приклади, приділити особливу увагу формам для заповнення]

Фізичні характеристики користувача

Вік

Молодий/середнього віку/літній

Стать

Чоловічий/жіночий

Розвиненість рук

Лівша/правша/той, що володіє однаково обома руками

Фізичні недоліки

Сліпий/дефекти зору/глухий/моторні недоліки

Характеристики завдань і роботи користувача

Спосіб використання цієї програми

За розсудом/[обов'язкова — > зробіть програму цікавої у використанні]

Частота використання

Постійна/часта/випадкова/[разова — > надайте всю довідкову інформацію з кожним екраном]

Коефіцієнт плинності кадрів

Низький/середній/[високий — > надайте всю довідкову



інформацію з кожним екраном]

Важливість завдання

Висока/середня/[низька — > зробіть цікавої у використанні]

Повторюваність завдання

Низька/середня/[висока — " автоматизуйте якнайбільше кроків, надайте розмаїтість у представленні даних, надайте можливість навчання]

Попереднє навчання

Немає/самостійне вивчення по довідниках/[інтенсивне — > надайте інтерактивну систему навчання]

Категорія роботи

Адміністратор/менеджер/професіонал/секретар/[клерк і т.д. — > використайте мову, приклади і описи, знайомі звичайному клеркові]

Психологічні характеристики користувача

Імовірне відношення до роботи

Позитивне/байдужне/негативне

Імовірні мотивації

Високі/середні/[низькі — > зробіть додаток особливо привабливим]

Стиль процесу пізнання

Словесний або [просторовий — >• підкресліть геометричний вигляд]



Аналітичний або [інтуїтивний — > підкресліть символи в тексті]







Крок 2 (розуміння призначення).

Крок 3 (розуміння принципів гарного екранного дизайну). Деякі основні елементи гарного екранного дизайну.

Переконайтеся в однаковості екранів додатка, а також у логічності кожного окремо.

° Угоди; процедури; місце розташування.

Зробіть припущення про те, звідки звичайно користувач буде починати роботу.

° Часто "перший" елемент розміщають у верхньому лівому куті.

Зробіть навігацію як можна більш простою:

° вирівняйте схожі елементи;

° згрупуйте схожі елементи;

° врахуйте границі навколо схожих елементів.

4) Застосуйте ієрархію для підкреслення порядку важливості.

5) Застосуйте принципи приємних візуальних ефектів:

° баланс, симетрія, регулярність, передбачуваність;

° простота, однаковість, пропорційність, економія.

Крок 4 (вибір подходящего типу вікна). Для типів вікон використана термінологія, хоча вони і є типовими. І. Ціль: показати властивості об'єкта - 

Вікно властивостей

Властивості автомобіля 1 89

Властивість

Значення

Марка

Тоуоїа

Модель

Сатгу

Номер

893-8913-789014



Крок 5 (розробка системного меню). Нижче перераховані деякі правила для створення головних меню

° Зробіть головне меню.

° Покажіть всі доречні альтернативи (але тільки їх).

° Приведіть структуру меню у відповідність зі структурою завдання додатка.

° Мінімізуйте число рівнів меню.

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

Крок 6 (вибір підходящих пристроїв керування).

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

Крок 7 (вибір підходящих екранних елементів керування).

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




Крок 8 (організація і планування вікон).

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

Крок 9 (вибір підходящих кольорів).

При використанні з умінням і зі смаком колір може збагатити екран. Використання кольору не робить автоматично інтерфейс користувача більш корисним або привабливим, однак може легко зіпсувати його. За виразом знаменитого дизайнера Поля Ренда "колір - це втілення складності. Програмісти, що не співробітничають із професійними дизайнерами, повинні бути дуже поміркованими і консервативними у використанні кольорів.