Development of a Yorùbá Arithmetic Multimedia Learning System

In recent times, the endangerment of Yorùbá has highly been speculated among Yorùbá intellectuals, indigenes and enthusiasts alike. In an effort to promote the learning and use of Yorùbá numeral system in carrying out day-to-day activities and transactions, the development of a Yorùbá arithmetic learning system will help bridge the gap between lost Yorùbá traditions of the transaction and modern day business activities. The design of this project was conceptualized using Unified modelling language (UML) tools. The resulting design and software specification was implemented using Python programming language due to its cross-platform compatibility and PyQt graphical user interface (GUI) module for the GUI. System evaluation was done using questionnaire to determine how the system is perceived by potential users. It was observed that 90% were unable to evaluate the addition expressions; 55% were unable to evaluate subtraction expressions, 65% were unable to evaluate multiplication expressions and 90% were unable to evaluate division expressions. It can be concluded from both research and the system developed that in order to make the Yorùbá language more relevant in the world today, attempts such as this project must be encouraged. The issue of the almost non-existent use of Yorùbá numeral must be addressed by producing learning systems or aids to help the teaching and learning of the Yorùbá numerals.


Introduction
According to "Reference [1]", language is defined as "fundamentally the means by which men communicate with each other and with themselves". It is through the e of language that man can express thoughts, exchange ideas and give words to emotions. The Yorùbá language is one of the three prominent indigenous languages (Hausa, Igbo, and Yorùbá) spoken in Nigeria. Apart from Nigeria with about 30 million Yorùbá speakers, Yorùbá is spoken in part of Togo, Republic of Benín, Ghana, Sudan, Sierra-Leone and Côte D'Ivoire. Outside Africa, a great number of speakers of the language are in Brazil, Cuba, Trinidad and Tobago [2].
In recent times, the endangerment of Yorùbá has highly been speculated among Yorùbá intellectuals, indigenes and enthusiasts alike. "Reference [3]" considers a language dead or endangered if "they are no longer spoken in the form in which we find them in ancient writings".
The Yorùbá Counting/Numbering system is the aspect of the language that is at most susceptible to falling out of use. Recent Yorùbá speaking generation and indigenes increasingly find it difficult to use Yorùbá numbers in enumerating objects or making transactions with local speakers. A case of this is when a child attempts to buy a commodity from a typical Yorùbá speaker (can understand and speak Yorùbá only) trader in the market, the child will find it difficult in bargaining the price of such commodity when the trader cannot understand the -English word and numbers the child is saying and the child cannot understand the Yorùbá numbers the trader is saying is her price.
In an effort to promote the learning and use of Yorùbá numeral system in carrying out day-to-day activities and transactions, the development of a Yorùbá arithmetic learning system will help bridge the gap between lost Yorùbá traditions of transactions and modern day business activities. It can also serve the purpose of promoting the learning of the Yorùbá numbering system among students in schools.
Low use of the Yorùbá counting system is a problem as it denotes the gradual extinction of the Yorùbá language. Many Yorùbá adults, youths, and children do not know how to count and calculate using Yorùbá numbers. As a result of this, this project aims to develop a software that will enable Yorùbá speakers and learners learn and perform counting and calculations using the Yorùbá arithmetic learning system was developed.
The system is capable of making an addition, subtraction, multiplication and division arithmetic operations strictly integer (non-decimal) numbers within the range of 0 to 1000. Thus, arithmetic computation cannot be made on negative numbers and fractional numbers as they have no representation in the Yorùbá numeral system. The sound for the system was recorded for numbers 0 to 100.
Section I introduces the study, section II discusses the literature review. System design is described in section III. Section IV addresses software implementation and section V discusses evaluation and discussion.

Literature Review
In this section different studies were reviewed to determine the strength of this study and add to the body of the knowledge of literature.
"Reference [8]" further states that though 'ọgbọ̀n' has no semantic connection with either twenty or forty, and the semantic import of some previous numbers will be noticed and more importantly, the significance of arithmetic concepts such as division, multiplication, subtraction, addition. "Reference [8]" continues the analysis of the Yorùbá counting system semantics from ọgọ́wàá/ogún mẹẃàá (20 x 10) which is 200, conventionally called 'igba'. The author states that from 200 'igba' above, 20 is no longer expressed as ogún e.g. 220 'okòó-lé-nί-igba/okòóléerúgba' (twenty more than 200).
Numbers from 500 follow a new pattern that replaces 10 and 20 with 100 and 200 respectively as computation bases begin. From 500 of the pattern of counting changes by adding the prefix 'ẹẹdẹ-' to any number that is less by 100. This shows that centuries larger than 200 is derived by either subtracting 100 form the next bicentenary or by multiplying 200 by the appropriate unit e.g.

B. Yorùbá Arithmetic System
"Reference [13]" the use of Yorùbá in the teaching and learning of mathematics in Nigerian schools, reiterated the basic operations in mathematics as the four cardinal arithmetic operations which are addition (+), subtraction (-), division (÷) and multiplication (x). The Authors proceeded to itemize these arithmetic operations in Yorùbá language. The following are the arithmetic operations as they can appear in Yorùbá language:  + : Àmì àròpọ̀  -: Àmì àyọkúrò  x : Àmì ìsọdipúpọ̀  ÷ or / : Àmì pínpín 'Àmì àròpọ̀' is a sign denoting the addition of two or more numbers together whose result will always be greater in value than its individual input variables except in the case of zero being an operand. 'Àmì àyọkúrò' is the opposite of the addition operation as this is clearly a reduction process (Subtraction). 'Àmì ìsọdipúpọ̀' is multiple increment of the multiplier which is always greater than addition once the multiplier is not 1. 'Àmì pínpín' is the opposite of multiplication which involves the division of a number, the dividend by another number, the divisor.

C. Yorùbá Language and its Numbering system in Nigerian Education
The role of Yorùbá language in education in Nigeria has reduced drastically over the years. This has contributed to alienation of the young and elite from the Yorùbá language. "Reference [14]" discovered that "parents have little or no influence on the language acquisition of their children. The wards, school mates and the playmates of children generally influence the language of the child much more than that of the parents". It can be inferred from this that unless parents 864 Development of a Yorùbá Arithmetic Multimedia Learning System make concerted efforts to plant in their children the zeal to learn about culture and tradition, they would most likely acquire the speech pattern of their play group.
"Reference [2]" surmised that "another reason for the present Yorùbá speakers' preference for the English's decimal system over the vigesimal system of Yorùbá is that the decimal system does not ask the comprehension skill of the hearers much unlike the vigesimal system, which requires a series of cognitive processes. Even nearly all electronic and print media have adopted the English decimal system at the detriment of Yorùbá vigesimal numeral system".
"Reference [15]" also identified the Yorùbá numeral system as the first major setback in efforts to use Yorùbá language in communication in science and technology. "Reference [15]" submits that the contributing factor to the growth of any language comes from introducing scientific terms into the language and advises that we make modifications to our language to such an extent that scientists can use it in research and this can therefore result in "meaningful and timely expansions to the language".

D. Interactive Language Learning Software
In recent times, there have been increasing interests in the use computers for language teaching and learning. Not more than a decade ago, the use of computers in the language classroom was of concern only to a small number of specialists [16]. However, with the advent of the Internet and multimedia computing, the role of computers in language instruction has now become an important issue confronting large numbers of language teachers and researchers throughout the world [17].
Speaking on the evolution of CALL (Computer Aided Language Learning), "Reference [18]" notes that during the five decades of CALL development, materials have gone from an emphasis on basic textual gap-filling tasks and simple programming exercises to interactive multimedia presentations with sound, animation and full-motion video.
Classroom learning is also enhanced through the use of visuals. On the use of visuals in teaching, "Reference [19]" concludes that visuals promote a student's ability to organize and process information.
Visuals can also be utilized to challenge students to think on levels that require higher order thinking skills [20].
Finally, technology provides opportunities for teachers to meet the needs of students with various learning styles through the use of multiple media [21].

System Design
Essentially three key things are discussed in the section. The software, database and audio system designs. Figure 1 shows the activity diagram of the system. There are two for gaining access to the system; select module and access general module. The Select module has four modules. From each module, the user can perform the four arithmetic operations. Alternatively, the user can use access general module to perform the four arithmetic tasks. Figure 3 and 4 show the sequence diagram of the two access points. Figure 2 is the class diagram of the whole system.

B. Audio System Design
The audio system will enable the speech output capability of the application and will demonstrate how each number sounds and is uttered. Each number in the Yorùbá numeral system will be recorded into an audio file. The application is limited to perform computations not greater than 1000 (ẹǵbẹrún) but due to memory considerations, the numbers will be recorded from 0(oódo) to 100 (ọgọ́rún).
The system will include a module 'Sound' that will play the audio file corresponding to each number inputted for computation.
(1) Audio File Format The audio file format that will be used for this system is the WAV audio format. Standard Windows digital audio. The WAV format was developed by Microsoft for use on Intel-based computers. Professional PC-based digital audio recording and editing systems use WAV files as their standard, and it is expanding into the Mac world.
(2) Number -Audio Mapping The relationship between the system's set of Yorùbá numerals and the system's set of audio files is one-to-one i.e. there is exactly one audio sound to one Yorùbá numeral. The association between a Yorùbá numeral and its audio file will be made by specifying the audio file's name as the Arabic equivalent of that Yorùbá numeral. Thus the createSoundFile(num) method in the Speech() class will get and load the audio file whose name corresponds with the one specified as the method's argument. The play() method is responsible for playing the loaded audio file thereby stimulating speech output.      [22]. XML tags identify the data and are used to store and organize the data, rather than specifying how to display it like HTML tags, which are used to display the data [23].
XML has many benefits that make it suitable for the Yorùbá number store of this project. They are: a) XML is extensible which allows for the creation and use of custom self-descriptive tags or language that suits one's application. b) XML allows us to store the data irrespective of how it will be presented. c) Since XML are allowed to contain only Unicode characters, it is suitable for the storage of Yorùbá numbers which makes use of accented characters. d) XML files are operating system and application independent which makes the system cross-compatible.

Software Implementation
The front and back ends are discussed in this section. The front-end is meant for user interaction and the back-end is meant for the database and other internal features.
The identified actor of the Yorùbá arithmetic learning system is the user, who can perform a number of activities with each activity making up a use case. These use cases are combined to derive the use case diagram. The use case diagram for the Yorùbá arithmetic learning system is depicted in Figure 5.

A. Front-End
The first point of interaction with the software is the start page dialog which presents the user with a variety of choice, the calculator main window gives the user access to the Yorùbá calculator and the onka dialog gives the user access to view the list of numbers depending on the module selected either via the select module dialog interface or the module selected to access the calculator.
(1) The Calculator Interface The calculator interface consists of several buttons through which the user can interact with the system. It can be seen from figure 6 that it has buttons corresponding to numbers 0 -9 (oódo -ẹsán), 'pẹlu' button for addition, 'dín' button for subtraction, 'lọ́nà' button for multiplication and 'pín' for division. It also has 'CE' button to clear each entry in arithmetic expression and 'C' button to clear the whole of the arithmetic expression altogether. The function of the 'switch' button is to switch between Yorùbá number view and Arabic number view. It can only perform this function after some arithmetic expression must have been evaluated, hence its disabled state at the start of the application. The 'Ònkà' button brings up the ònkà window where the user can view the list of number from 0 to the limit as specified by the module selected. Figure 7 shows the ònkà window. The 'Ìrànlọ́wọ́' button brings up the help window showing the user how to make calculations with the software. The 'Padà' button brings up the start dialog in case the user wants to perform another action in the software not present on the calculator window.

B. Back-End
The back-end is the layer in which all arithmetic and logical operations occur. It is the backbone of the system as it drives the functionality of the system. It is also the layer where all program module and code resides.

1) XML Parser Module
The XML parser module is the module that reads the XML file holding the data structure for the Yorùbá numerals. It parses each numeral parent node and extracts the values of the Arabic and Yorùbá child nodes into a key-value pair which is stored in a python dictionary data structure. This dictionary is the one returned by this module into the main application which in turn manipulates the values inside the dictionary to achieve the desired effect. This module consists of a class 'xmlParser', the method importDom() which reads the XML file, the method populateFromDom() which parses the root element of the XML file and then makes use of the readNumeralMethod() method to populate the 'self._numbers' dictionary with our arabic-Yorùbá values. The method readNumeralNode() from 'xmlParser' class in the XML parser module is one that directly parses the numeral node.

2) Sound Module
The sound module is the one that provides the audio facilities for this software. It makes use of the QSound audio class of the pyqt GUI module. It consists of a class 'Speech' which has two methods -createSoundFile() and play(). The createSoundFile() method maps class argument 'num' to a corresponding pre-recorded sound file stored in the project directory. The play() method, in turn, plays this created sound file to give an audio effect to the software.

C. Calculator Module
This is the module involved in the presentation of the main interface -the Yorùbá calculator and the user input processing. Thus, this module incorporates both the front-end and the back-end into one single file and class. This module consists of a class 'Calculator' which has various methods embedded in it to achieve various feature. The setModule() method is the one that sets the module to load according to the selection made by the user from the selectModule dialog or through the general module button on the start page dialog. The importXML() method imports the XML parser module into the calculator module. The on_btn_equal_clicked() method is the method executed whenever the 'jẹ' button is clicked. The calculate () method is the method that forms the Arabic and Yorùbá arithmetic expressions.

a) Àròpọ̀ (Addition)
Addition can be done by pressing the button 'pẹlu' between the two numbers to add. Figure 8 shows the calculator interface after the addition of two numbers. b) Àyọkúrò (Subtraction) Subtraction can be done by pressing the button 'dín' between the two numbers to subtract. Figure 9 shows the calculator interface after the subtraction of two numbers.

c) Ìsodipúpọ̀ (Multiplication)
Multiplication can be done by pressing button 'lọ́nà' between the two numbers to multiply. Figure 10 shows the calculator interface after the multiplication of two numbers.

d) Pinpin (Division)
Division can be done by pressing button 'pín' after the divisor and before the dividend. Figure 11 shows the calculator interface after the division of two numbers.

Evaluation and Discussion
The two testing approaches used are α-Testing and β-testing. Yorùbá Arithmetic knowledge test was also done to determine how many of the users can truly perform arithmetic using the Yorùbá numeral system.

A. Alpha-Testing
This is the in-house testing. Each module in the system was unit tested and then incorporated into the system to observe if the module will behave the same way. The observations made during this stage were used to improve upon the system.

B. Beta-testing
This is the testing done by presenting the system to the intended users for evaluation. The test elicits user's information about the system's user interface, usability, and accuracy. The result was used to improve upon the design and dynamics of the system.

1) Collection of Data
Questionnaires were distributed to potential users requesting them to rate three test parameters -user interface, usability, and accuracy -on a scale of 1 to 5 where 1 is the lowest rating and 5 is the highest rating.

2) Analysis and Interpretation of Data
All data gathered from users were coded and analysed using Microsoft Excel, a spreadsheet processing software. The data is represented in table 1 which shows the rating of the test parameters above by each user and the average rating, and figure 12 is a bar chart of rating of the three test parameters.   5  5  10  4  3  4  11  3  3  3  12  2  3  2  13  3  3  3  14  3  3  3  15  3  4  4  16  3  3  3  17  4  4  4  18  3  3  3  19  4  5  4  Below is the interpretation of the analysis: a) User Interface: Analysis shows that 95% of users find the user interface at the intermediate level and above but the remaining 5% think the user interface could still need modifications. b) Usability: Analysis of the usability data revealed that all the users found the system adequately usable. c) Accuracy: Analysis of the usability data revealed that 95% of the users found the system moderately accurate.

3) Beta -Test Results' Discussion
The average rating of each test parameter was determined from the data interpreted. The average rating for user interface was found to be 3.7, the average rating for usability was 3.95 and the average rating for accuracy was 3.8. Since the value of all test parameters is higher than the average, then the system can be said to meet user standards.

A. Yorùbá Arithmetic Knowledge Test
All data gathered from users were coded and analysed using Microsoft Excel, a spreadsheet processing software.

1) Personal Information
From the data gathered, 100% of the respondents had taken a Yorùbá language subject or course before but only 10% reported that the Yorùbá numeral system was not taught as part of the course. It was gathered that 10% of the respondents reported a very good Yorùbá numeral system knowledge level, 80% reported an average knowledge level while the remaining 10% reported a low-level knowledge.
In order to determine the how well users can perform Yorùbá arithmetic relative to the system developed, a section was included in the questionnaire to test their knowledge of Yorùbá arithmetic.

2) 2) Data Collection
Section A of the questionnaire asks the respondents if they have ever taken a Yorùbá language subject or course and if Yorùbá numeral system was ever taught as part of the subject or course while section C requests that the respondents evaluate sixteen (16) Yorùbá arithmetic expressions and give the answer back in Yorùbá using the accurate Yorùbá orthography.

3) Analysis and Interpretation of Data
This section discussed the results got from the data collected from the questionnaire. The results on the four arithmetic operations are discussed below.

a) Addition Test Results
Analysis of the results from the addition subsection revealed that 90% of the respondents were unable to evaluate any addition expressions, 5% were able to evaluate just one expression while the remaining 5% could perform two operations. Figure 13 is a pie chart depicting the data.

) Subtraction Test Results
It was observed that 55% could not evaluate any subtraction expressions, 30% were able to evaluate just one expression, 10% were able to evaluate two expressions while 5% could evaluate three expressions out of the given. Figure  14 is a pie chart depicting the data. It was observed that 65% could not evaluate any multiplication expressions, 25% could evaluate just one expression, 5% were able to evaluate two expressions while the other 5% could evaluate three expressions. Figure 15 is a pie chart depicting the data.  It was observed that 90% of the respondents were unable to evaluate any division expressions while the other 10% could only evaluate just one expression. Figure 16 is a pie chart depicting the data.

4) Yorùbá Arithmetic knowledge test results' Discussion
It can be inferred from the data interpreted that at least 50% of users were unable to give correct answers to the arithmetic expressions. 10% of these users, however, were able to evaluate some expressions correctly but could not give the accurate Yorùbá orthographic representation of the answers. The other 50% included users which could only evaluate certain arithmetic expressions in each arithmetic operation category.
Thus, it can be concluded that the majority of the users of the system will be unable to perform arithmetic operations using Yorùbá numerals which give reason to the need for a system such as the one developed to help to familiarise and help people perform arithmetic operations in Yorùbá.

Conclusions
Following the successful completion of the project, it can be concluded from both research and system developed that in order to make the Yorùbá language more relevant in the world today, attempts such as this project must be encouraged. The issue of the almost non-existent use of Yorùbá numeral must be addressed by producing learning systems or aids to help the teaching and learning of the Yorùbá language numerals.