Вы находитесь на странице: 1из 41

Table of Contents

CHAPTER ONE..................................................................................................................2
INTRODUCTION...............................................................................................................2
1.3 Significance of the Study...........................................................................................4
1.4 Aim and Objectives...................................................................................................4
1.5 Scope and Limitation of the Study............................................................................4
1.6 ORGANIZATION OF THE PROJECT..............................................................5
1.7 Definition of Operational Terms...............................................................................6
CHAPTER TWO.................................................................................................................8
LITERATURE REVIEW....................................................................................................8
2.0 INTRODUCTION.....................................................................................................8
2.1 MACHINE TRANSLATION (MT) APPROACHES..........................................8
2.2. TYPES OF APPLICATIONS................................................................................13
2.2.1 Android.................................................................................................................14
2.2.3. Android Architecture...........................................................................................15
2.3 SUMMARY OF REVIEW......................................................................................17
CHAPTER THREE...........................................................................................................21
SYSTEM ANALYSIS AND DESIGN.............................................................................21
3.1 System Analysis.......................................................................................................21
3.1.1 Analysis of the Existing System...........................................................................21
3.1.2 Limitation of the Existing System........................................................................21
3.1.3 Justifications of the New System..........................................................................21
3.1.4 Description of the New System............................................................................22
3.2. Design of the Proposed System..............................................................................22
3.2. Data Structure.........................................................................................................24
3.2.1. ER Diagram.....................................................................................................24
3.2.2. MVC Diagram.................................................................................................25
3.2.3. Class Diagram..................................................................................................25
3.2.4 Input Design and Output Specification.................................................................27
3.3 Program Design and Specification..........................................................................27
1
3.2.5. Design Layout..................................................................................................30
CHAPTER FOUR.............................................................................................................31
SYSTEM IMPLEMENTATION.......................................................................................31
4.1 Choice of Programming Language..........................................................................31
4.2 The System Main Menu Implementation................................................................32
4.2.1 Main Menu............................................................................................................32
4.2.2 English to Nupe Page............................................................................................32
4.2.3 Nupe – English Page.............................................................................................33
4.5 System Testing and Integration...............................................................................34
4.6 Test Plan..................................................................................................................34
4.7 Test Data..................................................................................................................34
CHAPTER FIVE...............................................................................................................35
SUMMARY, CONCLUSION AND RECOMMENDATION..........................................35
5.0 SUMMARY.............................................................................................................35
5.1 CONCLUSION...................................................................................................35
5.2 RECOMMENDATION...........................................................................................36
REFERENCES..............................................................................................................37

2
CHAPTER ONE

INTRODUCTION

Nupe is a language spoken natively by about four million people in Nigeria and in the

neighboring countries. English language today however being the major language of

communication in Nigeria (particularly in educational institutions) poses great threats to

the continued existence of indigenous languages like the Nupe language (Akeredolu,

2007). It is not uncommon to find Nupe homes where the language is hardly ever spoken

by parents to their children (Balogun, 2013). Even in schools, the learning and speaking of

the language is confined to language classes (Chaudron, 2014). In order to ensure its

continuity and accessibility to the upcoming generation of Nupe children, it is important to

explore viable media that will foster continuity (Braimoh, 2012). Mobile devices

(especially the mobile phone) are one such option (Teo, 2015)

Since their introduction into Nigeria in 1998 by President Olusegun Obasanjo, the mobile

phone adoption has increased remarkably. Today, mobile phones are ubiquitous devices

among the Nigerian populace - young and old; rural and urban dwellers (Idongesit, 2014).

This motivates the exploration of this medium in this study as an option to preserve the

Nupe language and make it easily accessible to those who also intend to learn the

language. This study is however not the first to explore opportunity in mobile devices as

means of learning a language. A number of wonderful mobile applications have been

developed along this line. They are discussed in the paragraphs that follow:

3
Learn Basic Yoruba (dotCasda, 2013) is an Android-based application that provides

English to Yoruba translation for basic and common Yoruba words and sentences used

daily. It is more like a reference that can be used on the go. Its lack of voice makes it

difficult for user to learn the true pronunciations of words - especially given that Yoruba is

tonal language. Another mobile application is Yorùbá101 (InnCite, 2014) It is a fun and

educative app that gets a user acquainted with Yoruba using a combination of games,

voice, text and graphical illustrations. Yorùbá101 mobile application is developed with the

belief that the user has no prior knowledge of the language. Each module builds on the

other providing the user with an incremental acquisition of the language. It also makes it

possible for learners to monitor their learning progress across every module by playing

simple interactive games with performance indicators at the end of each helping the

learner to realise areas that require more attention. The exploration of Yoruba language

translation has gone so wide. In any case, to date there has been almost no examination

concentrated on Nupe language translation precisely how, why, and to what degree

documentation benefits these endeavors. The little research done on Nupe language

translation prompted this exploration.

The aim of this project therefore is to develop a mobile application that will translate

English to nupe and vice versa..

1.1 Statement of the Problem

We observe that majority native of Nupe tribe language people cannot identify or write

fluently in their language due to the constant use of English language. As the world

progresses, the technology of man is improving, a person tends to forget their natural

4
language because they are acquainted with the use of English language in

communication. These hinder Nupe culture and ethnic among its people. People who

have not been exposed to Nupe language as their native language often find it difficult to

speak, read, learn and write Nupe language. There is the fear of trading Nigerian

indigenous languages for English Language as the focal means of communication due to

modernization.

1.3 Significance of the Study

This application will help interested member of the society to learn the Nupe language,

this implementation will aid the preservation of the language from going into extinction,

hence promoting the cultural value of our natural language and allowing the continuity

of speaking and learning native tribes. This work will be of importance for pupils,

students, teachers and tourist to learn the Nupe language easily and effectively.

1.4 Aim and Objectives

The aim of this project is to develop an Android bi-directional mobile application that

translate English – Nupe and vice versa for easy comprehension of the language.

The objectives of this study are:

i. To design an Android base translator application which can be used by people

who want to translate texts from English into Nupe.

I. To implement an efficient Android base English↔Nupe translator.

ii. To test the proposed system.

5
1.5 Scope and Limitation of the Study

The scope of this study is to design an Android base automated Nupe translation system

taking the Nupe language of Niger State as a case study to help improve translation of

Nupe language to English, so as to ascertain end result of this study. The scope would be

achieved in the following areas below:

i. Translate Nupe Language into English.

ii. Improving proficiency in Nupe language speaking through tutor.

Usually, every research has some limitations and this study is not exempted. The major

limitations of this study are:

i. It is strictly Android dependent. Therefore, other mobile operating systems like

Apple iOS are excluded.

ii. This project is limited to two languages, English and Nupe.

iii. The number of words in the dictionary and translation memory is limited and is

subjected to upgrade with time.

1.6 Organization of the Project

This thesis consists of five (5) chapters. Chapter 1 discusses on the introduction of the

system. The purpose of this chapter is to briefly explain about the overview system that is

developed. It consists of the problem statement, objective and scope.

Chapter 2 is Literature review. Gives explanation on the related works or literature

reviewed.

6
Chapter 3 is the methodology, analysis of the existing system and system design used in

the system. In this chapter, we discussed about the techniques and related software that is

used for the project development which is Systems Development Life Cycle (SDLC).

Chapter 4 is the implementation and program development. This chapter explains briefly

about the implementation and testing of Mobile application.

Lastly, Chapter 5, the conclusion concludes and come out with a summary about the

developed project.

1.7 Definition of Operational Terms

I. Android:

This is an open-source operating system that is used for smartphones and tablet

computers. It is developed and maintained by Google.

II.Firebase Cloud Messaging (FCM):

Firebase is a mobile and web app development platform that provides developers

with a plethora of tools and services to help them develop high-quality apps, grow

their user base, and earn more profit. Firebase Hosting is a static and dynamic web

hosting service that launched on May 13, 2014. It supports hosting static files such

as CSS, HTML, JavaScript and other files, as well as support through Cloud

Functions. The service delivers files over a content delivery network (CDN)

through HTTP Secure (HTTPS) and Secure Sockets Layer encryption (SSL).

7
Firebase partners with Fastly, a CDN, to provide the CDN backing Firebase

Hosting. The company states that Firebase Hosting grew out of customer requests;

developers were using Firebase for its real-time database but needed a place to host

their content.

III.CSS

Cascading Style Sheets (CSS) is a style sheet language used for describing

the presentation of a document written in a markup language. Although most often

used to set the visual style of web pages and user interfaces written

in HTML and XHTML, the language can be applied to any XML document. Along

with HTML and JavaScript, CSS is a cornerstone technology used by most websites

to create visually engaging webpages, user interfaces for web applications, and user

interfaces for many mobile applications. CSS is designed primarily to enable the

separation of presentation and content, including aspects such as the layout, colors,

and fonts. This separation can improve content accessibility, provide more flexibility

and control in the specification of presentation characteristics, enable multiple

HTML pages to share formatting by specifying the relevant CSS in a separate .css

file, and reduce complexity and repetition in the structural content.

IV. Translator

Translator in this project, is the process that translates words, sentences, etc. from

nupe to English language or vice versa.

8
CHAPTER TWO

LITERATURE REVIEW
2.0 introduction

In this chapter, the contribution of different researchers is discussed. The methodologies


used and the results got were considered while reviewing the studies.

2.1Machine Translation (Mt) Approaches

Statistical machine translation is a machine translation paradigm where translations are

generated on the basis of statistical models whose parameters are derived from the

analysis of bilingual text corpora (Weaver, 1955).

Statistical machine translation (SMT) is characterized by the use of machine learning

methods, for example, Hidden Markov Model for POS tagging. In less than two decades,

SMT has come to dominate academic MT research and has gained a share of the

commercial MT market (Weaver, 1955).

Rule-based Machine Translation (RBMT) also known as `Knowledge-based Machine

Translation', RBMT is a general term that denotes machine translation systems based on

linguistic information about source and target languages. Basically, the linguistic

information can be retrieved from (bilingual) dictionaries and grammars covering the

main semantic, morphological and syntactic regularities of each language (Bond, 2006;

Osborne, 2012). Having input sentences (in source language), an RBMT system

generates the output sentences (in the target language) on the basis of morphological,

9
syntactic and semantic analyses of both the source and the target languages. This involves

a concrete translation task (Bond, 2006; Osborne, 2012).

Hybrid machine translation (HMT) leverages the strengths of statistical and rule-based

translation methodologies (Boretz, 2009). Several MT companies (Asia Online,

LinguaSys, Systran, PangeaMT, and UPV) are claiming to have a hybrid approach using

both rules and statistics. The approaches differ in a number of ways:

1. Rules post-processed by statistics: Translations are performed using a rule-

based engine. Statistics are then used in an attempt to adjust/correct the output from the

rule’s engine.

2. Statistics guided by rules: Rules are used to pre- process data in an attempt to

better guide the statistical engine. Rules are also used to post-process the statistical output

to perform functions such as normalization. This approach has a lot of power, flexibility,

and control when translating, but complex. Hybrid machine translation is a combination

of both statistical and rule-based translation methodologies (Yeaseenu, 2010). There are

issues identified in this research which is the issue of ambiguity whereby the machine

unable to handle conjunction, interrogative, question mark etc.

Translation can without a doubt be thought about from the point of view of language,

culture or society and translation researchers have added to the comprehension of the

field all in all by considering the different parts thereof. Translation can be

conceptualized as acting, sneaking or cross-acting. There should an applied space in

which to relate proposals points of view to each other and inside which one could

10
comprehend why these roads are taken in the endeavored to conceptualize translation.

The applied space ought to not just concentrate on either contrast or closeness. Or maybe,

it ought to be a conceptualization that persistently recognizes similitude and recognizes

(contrasts), that is, it keeps up a theoretical oddity between parts of translation.

Understanding the interrelationships between the different parts of translation could help

with making a comprehension of the marvels with which we are working, (Kobus, 2014).

2.2 Related Studies

Adeoye, (2014) work on a web-Based English to Yorùbá Noun Phrases MT System,

Finite state Automata (FSA) was used whose operation was based on first set techniques

that allow the parser to choose which production rule to apply based on first input word

of an input phrase (Rule- Based).

Eludiora, (2014) experiments the machine translation process of English text to Yoruba

text. The study provided a machine translator that can translate simple sentences. The

simple sentences can be basic subject verb object (SVO) or modified SVO. Rule-based

approach was used and context free grammar was used for the grammar modelling. Re-

write rules was designed and implemented for the two languages.

Translation processes for translating English ambiguous verbs are proposed by

Agbeyangi (2015). A machine translation system was developed for this purpose.

Context-free grammar and phrase structure grammar were used. The rule-based approach

was used for the translation process. The re-write rules were designed for the translation

11
of the source language to the target language. The MT system was implemented and

tested. For example, Ade saw the saw, Adé rí ayùn náà Agbeyangi (2015).

Eludiora, (2015) experiment the concept of verbs‟ tone changing. For instance, Ade

entered the house, Adé wọ ilé. In this case, the dictionary meaning of enter in is wọ

. This verb takes low tone, but in the sentence above it takes mid-tone. The authors

designed different re-write rules that can address possible different verbs that share

these characteristics. The machine translator was designed, implemented and tested. The

system was tested with some sentences.

Okunola (2015) research on split verbs as one of the issues of English to Yorùbá machine

translation system. The context-free grammars and phrase structure grammar are used for

the modelling. Authors used rule-based approach and design re-write rules for the

translation process. The re-write rules are meant for split-verbs‟ sentences. The machine

translator can translate split verbs sentences. For instance, Tolu cheated Taiwo, Tolú r

Táíwò j.

Azeez, (2015) propose the alternatives for the use of He/she/it => Ó of the third personal

plural of English to Yorùbá machine translation system. Yorùbá language is not gender

sensitive, the authors observed the problem that does arise when the identity of the

doer/speaker cannot be identified in the target language. Authors proposed different

representations for he/she/it. Kùnrin was proposed for he, Bìnrin was proposed for she,

and ǹkan was proposed for it.

12
Adenekan,, (2015) propose a rule-based approach for English to Yorùbá Machine

Translation System. There are three approaches to machine translation process. The

authors reviewed these approaches and considered rulebased approaches for the

translation process. According to Authors, there is limited corpus that is available for

Yorùbá language this informs the rule-based approach.

Odejobi (2015) propose system that can assist in the teaching and learning of Hausa,

Igbo, and Yorùba. The study considers human body parts identification, plants

identification, and animals‟ names. The English to Yorùbá machine translation and

Yorùbá number counting systems are part of the main system. The model was designed

to build a system for the learner of the three languages. It is on-going research work.

Akinwale (2014) propose a web-based English to Yorùbá machine translation system.

The Authors considered a data-driven approach to design the translation process. The

context-free grammar was considered for the grammar modelling. The Yorùbá language

orthography was not properly used in that study.

Driven by the development of a worldwide economy and advancements in high

innovation, the way toward making and deciphering specialized documentation has been

developing quickly. Specifically, Machine Translation (MT) has demonstrated expanding

abilities of effectually achieving the beginning times of the eight phases of translation. As

an outcome, translators have figured out how to utilize machine translation as an


13
instrument to quicken their work, yet they have likewise become careful about machine

translation's potential for supplanting them. To guarantee solid job, a few translators have

started broadly educating as specialized essayists; correspondingly, a couple of

specialized writers have started broadly educating as translators, as the two callings give

off an impression of being experiencing a progressive pattern of combination. Scholarly

projects are asked to react to the advancing patterns (Maylath, 2013).

Odejobi, (2015). Propose system that can aid the instructing and learning of Hausa, Igbo,

and Yoruba. The investigation considers human body parts ID, plants distinguishing

proof, and creatures" names. The English to Yoruba machine translation and Yoruba

number tallying systems are a piece of the fundamental system. The exploration of

Yoruba language translation has gone so wide. In any case, to date there has been almost

no examination concentrated on Igbo language translation precisely how, why, and to

what degree documentation benefits these endeavours. The little research done on Igbo

language translation prompted this exploration. After thoroughly accessed the project,

some drawback was discovered which are: inability to differentiate different punctuation

marks and figures of speech.

2.3. APPLICATIONS

There are three types of applications web, native and hybrid application. All three types

differ from each other and have their own unique attributes;

• Web application: These types are software that runs on the web browser and is

dependent on internet connectivity to complete tasks. The web application are build

14
using html, JavaScript and deployed from browser like Internet Explorer, Safari,

and Google chrome.

• Native application: Theses are platform based and are specifically designed for

smartphone like android, and iPhone. The type of programming language that are

used for these phone are Java for android and objective C for iPhone. Theses

application are available from Google play and apple store and their performance

are much better than the web and hybrid application. One of the disadvantage of

native application is that an android application cannot run on the iPhone and same

for iPhone application cannot run on the android phone.

• Hybrid application: These consist of similarity of web and native application. They

are built using html and JavaScript and run on mobile browser instead of mobile

web browser similar to web application. The hybrid application can be used on any

operating system, and they have access to native libraries such as camera, and

address book(Sreekanth, 2013).

2.2.1 Android

Android is an open source mobile operating system that is designed for touchScreen

mobile devices and it uses Java programming language for developing applications. It is a

Linux based operating system, and was developed by Google and Open Handset

Alliance, it was financially backed by Google and was later brought buy them in 2005

(Wikipedia, 2014).

15
At the present time, Android is one of the fastest growing smartphones. The graph

below, figure 2.1, shows the U.K smartphone market share from 2011 to 2013. Android is

still the market leader, iPhone following closely in second position. The Blackberry and

Windows smartphone are following closely to each other but Windows overtook

Blackberry by end of June 2013 (Singh, 2013).

Figure 2.1: UK Smartphone market share

After reading articles regarding the mobile application, and platforms, the two major

players were the Android and the iOS. Large number of smartphone users are using these

two platforms more then the other (Singh, 2013). The iOS phones are user friendly as its

easy to use and Android is great for running multiple application.

2.2.3. Android Architecture

Android architecture comprises of a stack of software components, which are divided

into five sections and four layers.

16
• Application - The top layer of Android application is where most user interact with,

including basic android functionality such as phone calls, accessing the web

browser and any third party applications installed by the user.

• Application Framework - This part of layer provides advance level services to

applications in the form of Java classes. This includes functions on the phone like

resource management, and voice call management. Developers use these tools to

build applications and some of the important blocks of applications framework are

Activity Manager, Content Providers, Telephone Manager, Location Manager and

Resource Manager (Android-App-Market, 2012).

• Libraries - This layer consist of a set of libraries which includes open-source web

browser engine such as WebKit, SQLite database, this repository is used for

storage and sharing of applications data, libraries to play and record audio and

many more (tutorialPoints, 2014).

17
Figure 2.2: Android Architecture (tutorialPoints, 2014)

• Android Runtime - This layer consists of Dalvik Virtual Machine and Core Java

libraries. The core libraries provide most of the functionality available in the Java

programming language. Android application runs in its own process, with its own

instance of the Dalvik virtual machine, which has been written so that the device

can run multiple virtual machine efficiently. The Dalvik virtual machine executes

files in the Dalvik Executable(.dex) format, which is optimised for a minimal

memory footprint.

• Linux Kernel - This is the bottom layer in the Android stack that never interacts

with the user and developers, but is at the heart of the whole system. The Kernel

layer communicates with the hardware and it includes all crucial hardware drivers,

and it also acts as an abstraction layer between the hardware and other software

layers (Android, 2013). Further functions that Kernel layer includes are:

– Memory Management Programs

– Security Settings

– Power Management Software

– Other Hardware Drivers

– Support for Shared Libraries

– Network Stack

18
2.3 SUMMARY OF REVIEW

However, several other research works were carried out and the trend still evolves on a

daily basis. This is as a result of the different forms of scope embedded in most available

publications. While certain people argue on the need for totally new designs, some prefer

improving on the techniques demonstrated in existing publications. An example of this

was the study to determine the relationship between grammar efficacy and grammar

performance among Native language learners on aspects such as Correction of grammar

errors, Vocalization of words, and Construction of sentences through questionnaire and it

was observed that a moderate exist correlation between grammar efficacy and grammar

performance with efficacy of sentence construction as the most noticeable result

(Mustapha, 2017).

From this literature review, we can observe that there are no attempts to create an Nupe

dictionary for mobile platforms. So the goal is to conduct a dictionary which is organized

by meaning and has common- sense, semantic and lexical relations and form a network

of meaningfully related terms and concepts. Also, it composed of most common and

concise English/Nupe words and corresponding explanations and it has quick and

dynamic search and works on mobile devices.

A LIST OF THE REVIEWED RESEARCH WORKS

REFERENCE STRENGHTS WEAKNESSSES


language (Omoregbe, Yoruba Language Mobile Restricted to Yoruba to

19
Azeta, & Adewumi, 2014) Tutor is an Android-based English only
application that provides
English to Yoruba
translation
Eludiora (2014), rule-based English to Translate English language
Yorùbá Machine texts to Yorùbá language.
Translation System
Batra and Lebal (2010) Rule-Based MT of Noun MT for noun phrases
phrases from Punjabi to
English
Alexandra (2009) Machine Translation (MT) Automatic Machine
in Broadcast News Domain Translation (MT) in
Broadcast News Domain
Adeoye, (2014) web-Based English to English to Yorùbá Noun
Yorùbá Noun Phrases MT Phrases MT System
System
Kukulska-Hulme & Shields, depth communication Few research studies have

( 2008). suggested that CALL has

some

limitations like lack of in-


depth communication
(Weaver, 1955). Statistical machine Statistical machine
translation
translation
(Yeaseenur Rahman Tahin, Hybrid machine translation Hybrid machine translation

2010). is a combination of both

20
statistical and rule-based

translation methodologies
(Maylath, 2013). (Odejobi, instructing and learning of instructing and learning of
Hausa, Igbo, and Yoruba.
et al.., 2015) Hausa, Igbo, and Yoruba.
(Hana, 2016) “Amharic to English proposed “Amharic to
Language Translator for
English Language
iOS (iPhone Operating
Translator for iOS (iPhone
System)”:
Operating System)”:
(Goyal and Lehal, 2010) "Hindi to Punjabi Machine proposed "Hindi to Punjabi
Translation System"
Machine Translation

System"
(Agbeyangi, et al., 2015) "A rule-based approach for proposed "A rule-based
English to Yoruba Machine
approach for English to
Translation System
Yoruba Machine

Translation System
(Mouiad, and Tengku, Rule-Based and Example- proposed Rule-Based and
Based Machine Translation
2011) Example-Based Machine
from English to Arabic
Translation from English to

Arabic

21
22
CHAPTER THREE

SYSTEM ANALYSIS AND DESIGN


3.1 System Analysis

3.1.1 Analysis of the Existing System

Nupe is a language spoken natively by about four million people in Nigeria and in the

neighboring countries. Nupe tribe in these generation often speak nupe language but find

it difficult to read and write in nupe language while majority, can neither speak, read or

write. Nupe dictionary supposed to be solutional tool to bridge the gaps but none has

been in exitance. This has become a major challenge in the nupe ethnics and even other

people that have interest in the nupe language.

3.1.2 Limitation of the Existing System

The existing system is limited to lack of official dictionary for nupe to English or vice

versa

3.1.3 Justifications of the New System

The new system is going to deal with the limitations of the existing system by; keeping

historical data that makes it easy for nupe people and others to have access to archive of

nupe words with corresponding English words. The system will allow the users translate

nupe words and sentences to English and English to nupe with high level of accuracy.

23
3.1.4 Description of the New System

The new system is simple mobile application that is capable of translating nupe to

English words by the simply a click of a button. This new system is structured based on

Android mobile phone to give the users full access to nupe dictionary.

3.2. Design of the Proposed System

The work here work is designed to replace the involvement of humans in the translation

of English (source language) to Nupe (target language). In most cases, the system needs

to emulate the thinking strategy as humans do during translation. The various characters

sets making up the alphabets in both English and Nupe languages are to be identified and

analyzed. A database of the English alphabets is to be created and made to represent the

set of characters representing the source with those of Nupe language taken in to

consideration. Also, the syntaxes of both languages are to be made reference to with the

aid of in-built tools and some other forms of program segments when needed in terms of

their relationship character-wise. The various scenarios in the design of the system were

modeled using Unified Modeling Language (UML). For instance, the modeling section

involving the Use-Case diagram (figure 2) has to with the demonstrations of the

relationship among the various entities making up the system in terms of functions and

possibly dependencies. A logical way of representing this user-data relationship is also

shown in the class diagram (figure 3). Another aspect of this modeling includes the

procedural flow among the various class objects involved in the translation mechanism.

The said scenario is diagrammatically illustrated using the Activity diagram (figure 4).

24
3.1.1. Use Case Description and Use Case Diagram

The use case consists of a use case which shows steps of interaction between the roles

within the application.

Input

Input word or sentence


(i.e. English )

Translator

Generate the Nupe equivalent

Output

Result of the sent text view the Nupe


form of the English text
Figure 2: Use-Case Diagram

Use Case Description: This is a very important part, as it includes preconditions, post

conditions, flow of event a certain part of application takes. This shows sequences of

steps that application takes to reach its goal.

This application has three use cases descriptions, English-nupe and Nupe-English and

Index. The Index use case shows the steps user needs to take in order to get into the

translation process for the application. The second use case English-Nupe shows user

25
input area, where the user will provide the English words or sentence to be translated

into nupe language.

The Nupe-English use case describes shows user input area, where the user will

provide the Nupe words or sentence to be translated into English language.

3.2. Data Structure

After gathering the requirements from the analysis phase, the design phase develops

the physical model of the application. This contains ER diagram, class diagram, and

sequence diagram.

3.2.1. ER Diagram

The Entity-relationship diagram is designed in early requirement and analysis phase of

development as requirements of database and its process could be understood better.

Entity-relationship diagram below shows the table entities and its relationship between

the tables. The name of the table is shows at the top and table attributes are displayed

under, the table relationship has one to many associations with other tables in the
Nupe-English
diagram. Nupe-English

-id: integer
-nupeword: string -id: integer
-englishword: string -nupeword: string
User
-englishword: string

-nupe word: string


-english word: string
Figure 3.2: ER Diagram

26
3.2.2. MVC Diagram

The software architecture diagrams below show the basic model of the system

applications, and makes it easier to visualize the applications design. The MVC

software architecture used in this application shows the Model object with all the main

Java classes that represent the database tables. The Controllers, shows all the activities

and the View contained all the XML classes.

The mvc diagram shows the ‘View’, ‘Model’, ‘Controller’ Xml classes. The

View xml represent the background activity handling the corresponding model xml.

Model xml present the GUI of the three different forms to the users. Controller

“Translator_proccess”, interpret the English words or sentence to nupe and vice versa.

Figure 3.3: MVC Diagram for Android Application

3.2.3. Class Diagram


The class diagrams show the classes that are contained in the system, their

interrelationships including inheritance, aggregation and association and operations

27
and attributes of the classes. The class diagram is used for wide variety of purposes,

including conceptual/domain modelling and details design modelling.

The class diagram shows name of the class at top of the box, under it the second box

shows the attributes and at the bottom it shows class methods. The class diagram shows

the ‘IndexActivity’, ‘Nupe-EnglishActivity’, ‘English-NupeActivity’.

Text(s)(English)
TextType: TextType:
string/char char/string
TextLength: int TextLength: int
real(): display():

Translation
TranslatorType:
string
TranslatorLength:
int
gen():

Figure 3: Class Diagram

28
Start

Select: To send Generate Nupe


text(s) in English form oftexts
format

Select: To view Display result


translated form of on screen Stop
texts

Figure 4: Activity diagram

3.2.4 Input Design and Output Specification

It is necessary to denote that data inputted in the computer for processing determines

what the output usually is. Screen designs are generally or basically made for data entry

or capture. With English text as input, the output section of the system in this research

work is designed to automatically display its result in Nupe language also vice versa

(based on the input supplied); i.e. generate response immediately after the input is

received by the system. However, the nature of the output strictly depends on that of the

input as well as the correctness of the code implementation with respect to the rules

governing the writing and transformation of both character and words in the concerned

languages.

29
3.3 Program Design and Translation process

The system’s structure, as shown in the flowchart (fig. 5) has the general form as a task

divided into several subtasks, which come together to give the solution to the problem

with the translation process as the core stage (fig. 6). The program is designed with the

translation process of having two languages modules namely English Language and Nupe

Language.

Start

English Language

Translate

Translate
Nupe Language More?
Yes
No
Stop

Figure 5: System Flowchart

30
Input Text
(English)

English
I- Rules

NUPE DICTIONARY
ENGLISH
DICTIONARY

Nupe
I-Rules

Output Text
(Arabic)

Figure 6: Translation Process

31
3.2.5. Design Layout
The below figure shows the prototype layouts of the application for ‘Index activity,

‘English-nupe’ activity, ‘Nupe-Englidh’ activity, and finally the ‘Login’ activity.

(a) Index (b) English-Nupe (c) Nupe-English


Activity Activity Activity

32
CHAPTER FOUR

SYSTEM IMPLEMENTATION
4.0 Introduction

This is the phase that produce the actual system as specified in the system design phase. The

system design is actualized to produce a concrete system. The system is developed as

specified in the design and requirements phase. The developed English-Nupe native system

that takes translation electronically. This system was implemented using JavaScript. The

programming language shall take care of the user interface design as well as taking in and

outputting data while Mysql shall be the backend i.e. the database.

4.1 Choice of Programming Language

The system was designed using common and popular mobile development technology which

includes JavaScript and MySQL.

Java: JavaScript is a programming language that can be included on web pages to make
them more interactive. You can use it to check or modify the contents of forms, change
images, open new windows and write dynamic page content. You can even use it with CSS
to make DHTML (Dynamic HyperText Markup Language). This allows you to make parts
of your web pages appear or disappear or move around on the page. JavaScripts only
execute on the page(s) that are on your browser window at any set time. When the user
stops viewing that page, any scripts that were running on it are immediately stopped. The
only exception is a cookie, which can be used by many pages to pass information between
them, even after the pages have been closed.

33
MySql: MSSQL server is used to implement the back end of the new system. The server

uses relational database management system that offers a variety of administrative tools to

ease the burdens of database development, maintenance and administrations. It also allows

the use of stored procedure which is used to implement some of the business logic directly

from the database.

 T-SQL: Transaction Structured Query Language is used to write stored procedures

embedded in the SQL Statement.

4.2 The System Main Menu Implementation

This refers to how the main menu in the system is being implemented. There are two interfaces

that make up the entire system. They are described below:

4.2.1 Main Menu

Figure 4.1 shows the main starting page of the application, consist of two menus Nupe –

English and English – Nupe. Here the user can either click on nupe – English to translate nupe

words or sentences to English. The second menu is English – Nupe, translate English to nupe.

34
Figure 4.1: User Start Page

4.2.2 English to Nupe Page

Figure 4.2 shows the English – nupe translator page. The user enters English words or sentence

into the provided textbox, and click on the button “translate” to translate every words or

sentence from English to nupe accurately.

Figure 4.2: English – Nupe Translator Implementation

4.2.3 Nupe – English Page

Figure 4.3 shows the Nupe – English translator page. The user enters Nupe words or sentence

into the provided textbox, and click on the button “translate” to translate every words or

sentence from Nupe to English accurately.

35
Figure 4.3: Nupe - English Translator Page

4.3 Database Implementation.

The MySQL was used to create database for EnglishNupe application, MySQL is an open

source object-relational database management system. The database was created to hold the

data for the application, which will allows user to run query the information. The database

contained one tables and was populated with English and nupe words data shown in the

example in the table below.

CREATE TABLE dictionary (wordid


VARCHAR(20), english
VARCHAR(20), nupe
PRIMARY KEY(wordID)
);
//data example
INSERT INTO dictionary (english, nupe)
VALUES (come, pbe’);
To connect the database to the application the MySQL jdbc connector was used, then a

Connection object was used and ‘java.sql.*’ classes was imported into the code.

4.5 System Testing

This is a formal process of soliciting feedback on or from a system that is being developed. It is

used to determine the effectiveness, the correctness, efficiency, reliability and robustness of the

proposed system. This new system of tested on different android phone of different firmware
36
versions. The englishnupe app was deployed into an android phone were it was install and

execute. The user select the two different modules “English -nupe “ and “nupe-english” one at

a time. Each of the module were tested with words and sentences, and the result were also

display on the same module section translating the provided words to corresponding words.

4.6 Test Plan

It involves a stage-by-stage assessment of all the subsystems which are carried out to

determine the performance and efficiency on the authentication system and comparing the

result to the over-all desired result. This verifies that the system elements have been properly

integrated.

4.7 Test Data

The data needed for the testing comprises of Words and Sentences in Nupe language and

English Language which is to entered when the user is operating the mobile application.

CHAPTER FIVE

SUMMARY, CONCLUSION AND RECOMMENDATION


5.0 SUMMARY

The developed system proved very efficient with respect to its outputs and the translation was

very accurate within reasonable time frame. This represents a useful tool for assisting those

seeking redress in a form of assistance in the lexical understanding of texts between English

language and Nupe language. Understanding how characters in English are written in their

Nupe and vice-versa shall promote a form of familiarity between the two languages thus
37
assisting stakeholders in not just writing of letters but knowing the exact of any character thus

enhancing how certain letters are to be pronounced in their respective languages. The different

tasks accomplished in the process of designing and implementing the system were properly

displayed in the various figures shown and their needed explanations included accordingly.

The design here showcases a translation form considered as “One-to-One Correspondence”

and so, some future works are still required as stated earlier for the incorporation of more rules

as well as functions for ensuring a more robust and more useful form of language translation.

5.1 CONCLUSION

In theory, one is expected to get increased in comprehending a particular language, therefore,

getting use to the Nupe form of English letters is expected to create a form of familiarity that

could assist Nupe who sometimes find it uneasy to either write or pronounce such texts. This

could also be a tool for beginners in Nupe language.

5.2 RECOMMENDATION

The parameters of interest in this study as demonstrated in the various results obtained show

that the system was simply meant to handle the text-to-text conversion between English

language and Nupe language. This showcases the form of representation one expects as

regards to the Nupe form of a given English text. However, some improvements are clearly

necessary to increase both the quality of the study scenario with a view to addressing the

possible meaning of the Nupe form of any given English text and possibly make it speech

based. This is simply because of the draconian nature of spellings and pronunciations

involved in Nupe language. To achieve this, a robust system that takes care of both texts as

38
well as the voice part is required. This shall take care of the targeted goal in future designs as

regards to this area of Natural Language Processing.

39
REFERENCES

Omoregbe, N. A. I., Azeta, A., & Adewumi, A. (2014). DESIGN AND IMPLEMENTATION

OF YORUBA LANGUAGE MOBILE TUTOR Nicholas A . Omoregbe , Ambrose A .

Azeta , Adewole Adewumi , Olayemi O ., (July).

Publisher, J. K., Armstrong, M., & How, K. W. (1991). Translators and Language Engineering

in Nigeria : A Case Study of Nupe.

[ CITATION Chi191 \l 1033 ]

O. A Opebiyi and A. A. Sadiq, “Development of Yoruba proverbs mobile application”, BSc


project report, Department of computer science, Nassarawa state university, Nigeria,
2011

O. M. Oyelami, “Development of Igbo language Elearning system”, BSc project report,


Department of computer and Information Science, Covenant University, Ota, Nigeria,
2008

Krasimir Angelov and Peter Ljungl¨of. 2014. Fast tatistical parsing with parallel multiple
context-free grammars. In European Chapter of the Association for Computational
Linguistics, Gothenburg.

Krasimir Angelov, Bj¨orn Bringert, and Aarne Ranta. 2009. PGF: A Portable Run-Time
Format for TypeTheoretical Grammars. Journal of Logic, Language and Information,
19(2), pp. 201–228.

Krasimir Angelov. 2011. The Mechanics of the GrammaticalFramework.


Ph.D.thesis,ChalmersUniversity of Technology.

Bj¨orn Bringert. 2008. Speech translation with GrammaticalFramework. InColing2008:


Proceedingsof the workshop on Speech Processing for Safety Critical Translation and
Pervasive Applications, pages 5–8, Manchester, UK, August. Coling 2008 Organizing
Committee.

40
Gr´egoire D´etrez and Ramona Enache. 2010. A framework for multilingual applications on
the android platform. In Swedish Language Technology Conference.

Emil Djupfeldt. 2013. Grammatical framework on the iphone using a C++ PGF parser.
Technical report, Chalmers Univerity of Technology.

Aarne Ranta, Krasimir Angelov, and ThomasHallgren. 2010. Tools for multilingual grammar-
based translation on the web. In Proceedings of the ACL 2010 System Demonstrations,
ACLDemos ’10, pages 66– 71, Stroudsburg, PA, USA. Association for Computational
Linguistics.

Aarne Ranta. 2009. The GF resource grammar library. Linguistic Issues in Language
Technology. Aarne Ranta. 2011. Grammatical Framework: Programming with
Multilingual Grammars. CSLI Publications, Stanford. ISBN-10: 1-57586-626-9 (Paper),
1-57586-627-7 (Cloth).

41

Вам также может понравиться