1.3.1_Product_Perspective - SofiAlfonso/Odissea GitHub Wiki

Product Relationship with other systems:

Oddisea is a translation system dedicated specifically for travelers so then, major of its functions are also applicated to other systems, for example:

  • Google translator: It is a translator systema that like our, can translate via text, image or audio, also It can read out of loud the text.
  • Momondo places: It is an app that allows user search for touristic or interesting places, and also, give suggestions to travelers.
  • TripLingo: It allows text and voice translations, also brings suggestions to interact with natives, formalities and some recommendations. Some of its characteristics are premium.

Those systems have some of our functionalities, the difference with Oddisea is that our app collect them in a unitary system, so then, users won’t have to search on different apps to satisfy their main needs as travelers. Also, Oddisea offers its functionalities freely, so premium functions won’t limit user’s interaction. Another interesting characteristic is that our system implements AI assistance, to make suggestions and examples, that will make them more personalized and updated.

System Interfaces

The system has three layers or interfaces managed by Django:

  • Model: Here the model for SQL is made, the data is managed, its storage and recovery. There is a table that stores the user profile data.
  • View: This layer is the responsible of the program logic, it will analyze the user data to establish a source language for the translations, it will be responsible for performing the translations, scanning the images and transcribing the audios, in addition to being the one who integrates the use of AI for recommendations and suggestions, and the logic of the currency conversion.
  • Template: It is the user interface, the layer that manages how the user sees the translations, the options menu, each application in the menu and their own profile, registration and login.

User Interfaces

  • Home: Here the user finds the option to view their profile, as well as to choose the language they want to translate into and the country they are in, a basic interface of the translation systems that has two text boxes, one to enter the text to be translated and another to show the translated text. In addition, there are two buttons, one for the camera (which enables the scanning option) and another for audio (which enables the transcription option). Also, 4 buttons are shown at the bottom, one to show examples, another that generates response recommendations, another for currency conversion and a final one for the recommendation of places.
  • Login: This is the interface that the user will see to enter their username and password and get into the page.
  • Registration: Here the user will fill out the registration form for the web application.
  • Profile, Here the user will be able to see their profile and modify it.
  • Drop-down interfaces:
  1. Scan: Shows the user the display of their camera and a button to take the photo.
  1. Transcription: Shows the user when they can start recording their audio and an option to end the recording.
  1. Examples: Shows the user a pop-up window with at least three separate texts that have applications of the translated word and below it, its translation.
  1. Suggestions: Shows the user a pop-up window with at least three separate texts that contain a suggested answer and below it, its translation.
  1. Currency converter: Shows two text boxes, one to enter the amount to be converted and another for the result, as well as the types of currency in which the conversion is being made, and including a button to reverse the currency to be converted and the converted currency.
  1. Places of interest: Shows a pop-up window with the name of at least three places belonging to the country being visited, basic information or description and its link to Google maps.
  1. Visited country and language selection: Shows a dropdown window whit two text boxes one to fill with the name of the visited country and the other one for the language talked on that country.

Hardware Interfaces

  • Camera: Access to a camera for capturing images or videos for text and object recognition.
  • Microphone: Access to a microphone for audio capture and voice recognition.
  • SQL Server: User data storage and management by connection through SQL database APIs.
  • Random Access Memory (RAM): Managed by the operating system, with Python handling data processing and storage in memory.
  • Central Processing Unit (CPU): Direct interaction with the operating system through Python scripts for task and resource management.
  • Keyboard: Managed by the standard keyboard interface of the operating system, with Python libraries handling input events.
  • Touchscreen/Monitor: Managed through Python-based GUI frameworks like Tkinter or PyQt, which handle touch or click interactions and design the user interface.

Software Interfaces

  • SQL Virtual Environment: Connected through database APIs in Python, using Django model interface.
  • Artificial Intelligence APIs: Access cloud services like Google Cloud AI and Microsoft Azure Cognitive Services, or proprietary APIs, to integrate AI capabilities into the application.
  • Web API: Uses Django view interface to connect frontend and backend, ensuring efficient and secure communication. Additionally, the Web API can integrate with location-based services to recommend points of interest in the country the user is visiting, using data from travel guides or local directories.
  • Python Libraries: Libraries like EasyOCR for text scanning, googletrans for translation via text, speech_recognition for audio transcription, and others like numpy and pandas for data manipulation and analysis are integrated into the application to perform specific processing tasks.

Communication interfaces

  • HTTP/HTTPS Protocol: Uses HTTP/HTTPS for communication with the content manager, the database and the user interfaces.
  • Django: View interface manage the communicaction with model and templates interfaces.

Memory

  • RAM Memory: Used for money conversions and quick storage of texts to be translated and translated, audios and images to be scanned or transcribed. In general for the operation of the web application.

Operations

  • The Website must support for text translation between multiple languages.
  • The Website must have the Ability to recognize text in images taken with the device's camera.
  • The taken image must be converted to text.
  • The website must come with Integration of an AI assistant that provides contextual examples of the translated words - The Website should have the Functionality to convert spoken voice into text.
  • The website should come with Integration of an AI assistant that provides suggestions for possible responses.
  • The Website would make currency conversions.
  • The Website would provide the user with useful information (Places of interest) about the country of destination.
  • The user could be able to register on the website.
  • The translated text could be read out loud by the AI ​​voice model.

Site adaptation requirements

  • The website would be available in major web browsers (Chrome, Edge, Opera,...).
  • The website would look good well both, in Mobile devices and computers.
  • The website would be able to adapt to the origin language of the user.