сервіс
) Surname - мінлива строкового типу: прізвище клієнта
Методи:
1) Contract - конструктор
) AddContract - додавання файлу контракту
) DelContract - видалення файлу контракту
) ChangeContract - зміна файлу контракту
Інтерфейс системи
Головне вікно
Форма використання сервісу
Таблиця бази даних клієнтів
Форма створення нового клієнта
3. Третя ітерація
Аналіз вимог
На третій ітерації був виділений клас WorkWithFiles для зручної організації роботи з наявними файлами клієнта, контракту, провайдера та статистики. У цей клас були перенесені методи з класів Provider, Client, Contract, що працюють з файлами.
На даній ітерації основними цілями нашої роботи стали:
) Введення нового класу WorkWithFiles для роботи з файлами.
) Перевірка клієнта на неактивність, видалення, якщо клієнт не активний більше місяця
) Додавання перевірки на закінчення активного періоду договору
) Додавання графічного представлення статистики
) Можливість перегляду статистики клієнтом
) Зміна тарифів провайдера
) Поліпшення інтерфейсу
Опис процесу проектування
Опис класів
Опишемо відносини взаємодії між введенням класом і вже існуючими:
Клас WorkWithFiles залежить від класу Events, так як метод Читання статистики з файлу використовує об'єкт класу Events.
Клас WorkWithFiles залежить від класу Contract, так як методи Читання файлу клієнта, Читання файлу клієнта, Читання контракту з файлу, Зміна контракту у файлі, класу WorkWithFile, використовують для роботи об'єкт класу Contract.
Клас Provider залежить від класу WorkWithFiles, так як методи класу Provider використовують об'єкт класу WorkWithFiles.
Клас Client залежить від класу WorkWithFiles, так як методи класу Client використовують об'єкт класу WorkWithFiles. А клас WorkWithFiles залежить від Client, так як методи Додавання та зміна файлу клієнта, Читання файлу клієнті, класу WorkWithFiles, використовує об'єкт класу Client.
У класі Provider додані методи для перевірки клієнта на неактивність, зміни тарифів. У класі Contract доданий метод для видалення неактивного користувача, а також поля, описані далі. У класі Client було додано поле Адреса, щоб ввести додаткову особистої інформації про клієнта, і Час дії контракту.
Опишемо детально зміни, що відбулися на третій ітерації в інтерфейсі класів.
У класі Client додані поля:
Адреса - поле для зберігання адреси клієнта, носить інформативний характер.
Файл статистики - поле, що містить адресу файлу, що зберігає дані про дії, скоєних клієнтом.
Контракт - договір, пов'язаний з даним клієнтом.
Список подій - поле, що містить дії, вчинені клієнтом (статистика клієнта).
А також метод:
Новий індекс - метод, який визначає порядковий номер (номер договору) при реєстрації клієнта.
У класі Provider також відбулися зміни.
Були додані поля:
Список контрактів - містить весь список контрактів даного провайдера.
Статистика - поле, що містить дії, вчинені клієнтом (статистика клієнта).
А також методи:
Неактивний клієнт - цей метод реалізує видалення всієї інформації про клієнта (файл клієнта, файл контракту, файл статистики) при виявленні неактивного клієнта за допомогою методу - Зміна активності. Якщо клієнт неактивний протягом певного періоду часу (тобто метод Зміна активності повертає брехня), то клієнт видаляється з бази даних.
Зміна тарифу - метод, що дозволяє редагувати ціни на використання сервісів.
Додавання контракту в список - метод, який заносить договір нового зареєстрованого клієнта в список.
Видалення контракту зі списку - метод, що дозволяє видалити зі списку контракт при видаленні клієнта.
<...