5.1 Діаграма варіантів використання.
Для більш чіткого уявлення проектованого програмного забезпечення була побудована загальна модель діаграми варіантів використання.
Рисунок 5.1 – Діаграма варіантів використання.
Згідно з постановкою завдання , на діаграмі (Малюнок 2.1) показаний один актор - це безпосередньо « Користувач ». Заходячи в систему «Користувач» відразу стає доступним інтерфейс системи голосового перекладу мови в реальному режимі часу. У інтерфейсі є наявність вибору варіантів : «Запис жестів » , «Запис звуку » , « Введення тексту » , « Редагування тексту».
«Запис жестів » - користувач за допомогою веб -камери записує жести.
«Запис звуку » - користувач за допомогою мікрофона записує пропозиції які він говорить. « Введення тексту » - користувач вводить текст який потрібно перекласти. «Редагування тексту » необхідно користувачу при неправильному введенні тексту.
Так само «Користувач» доступно « Відтворення » і « Відображення тексту ». « Відтворення » - це синтез мови користувача вже перекладений на потрібну мову тексту.
Самій системі доступні наступні варіанти використання :
« Розпізнавання » , «Переклад» , « Відтворення » і « Відображення тексту ».
« Розпізнавання » - система розпізнає слова в звуковому сигналі або жести на відео. «Переклад» - системі доступний переклад розпізнаного або введеного тексту.
5.2 Діаграма аналізу класів.
Рисунок 5.2 –Діаграма аналізу класів.
Controller - це головний клас , який керує всім процесом роботи системи і управляє формою програми , змінюючи її в залежності від обраних параметрів .
Main_form - це діалогове вікно , в якому користувач може обирати мову і метод введення даних в систему.
Obrabotka_text - це керуючий клас , який готує текст для подальшого його перекладу.
Recognition_audio - це керуючий клас , який обробляє звуковий сигнал , розпізнаючи людський голос і переводить його в текст.
Recognition_video - це керуючий клас , який обробляє відео сигнал , розпізнаючи жести і переводить їх у текстовий формат .
Translate - це керуючий клас , який отримує текст для перекладу , розбиває пропозиції на слова , слова на частини , окремі частини слів він відправляє на переклад в кожен клас , отримує частини слів , збирає слова , і пропозиції .
Morfolog_anal - це клас який зв'язуючись з базою даних визначає леми слів і виявляє морфологічні ознаки .
Lexical_categorixation - це клас який зв'язуючись з базою даних визначає контекст слова , позначки і уточнення.
Leks_transfer - це клас який зв'язуючись з базою даних шукає відповідні леми для перекладу.
Strukture_ transfer - це клас в якому відбувається узгодження слів.
Morfolog_generation - це клас в якому створюються словоформи переказного тексту.
Controller викликає Main_form , де користувач вибирає який вид інформації подаватиметься в систему , після чого в залежності від даних , вона подається в один з керуючих класів: Obrabotka_text ,
Recognition_audio , Recognition_video . Після того як виконуються методи в цих класах , дані повертаються в Controller у вигляді тексту. При виборі параметрів , Main_form змінює свій вигляд. Translate отримує текст для перекладу , де розбиває пропозиції на слова , слова на частини , окремі частини слів він відправляє на переклад в кожен клас , отримує частини слів , збирає слова , і пропозиції . Після чого перекладений текст подається в Controller , де далі виводиться на Main_form і стає доступним користувачеві.