Good Essay About Java Requirements Gathering
The problem being solved
The task to be carried out is to translate books written in English language in to other languages. The solution will consist of java code with the class translate and the method with the same name such that a call or invocation to the method at one point of the program will be the same as calling the class itself. The parameters will include Text1, language1 and language2. Text1 will represent the string of characters in the form of a sentence or paragraph written in English. Language1 is the English language that identifies Text1 to be translated to a different language. Text2 is the language to which text1 is to be translated to. These three parameters are thus variables of the type string.
At the same time, the translate method will also be of the return type string, that is, it returns a string value. Language1 and language2 will be variable parameters in the form of class having objects such French, Spanish, Kiswahili, German and many others which are the languages to which Text1 is to be translated to. The sample method for the general line of code will appear as follows:-
Translate.translate (Text1, language1, Language2); In this case, Text1, language1 and language 2 are the actual parameters of the method. The method or program that calls translate method at any point of the program will do so with the help of formal parameters arranged in the same order and enclosed in parenthesis after the method name. This means that the first, second and third formal parameters will correspond to the first, second and third actual parameters respectively if the call to the method is to be successful (Johnsen et al., 2012).
The specific line of code will therefore appear as follows:-
Translate.translate(“All cows eat grass”, language.English, language. German); .This means the translation of the sentence or string of characters, “All cows eat grass” into German equivalent. The interface design will be such that the user enters Text1 while language2 becomes an output after translation process.
The operation of the program is such that when the program calls translate method, the caller method, the return address of the calling method is pushed on to the program execution stack or method call stack.. In case a sequence of method calls takes place, the successive return address are pushed onto the stack in a LIFO algorithm where LIFO is last-in-first-out order of execution to permit every method to return to its caller. This method will thus be executed through recursive call to allow the user translate the input statement or paragraph in to as many languages as possible. In this case, Text1 and other parameters used are some of the requirements which are organized in the form of objects and classes to be executed via method invocation (Hainry & Péchoux, 2013).
The overall impact of the application
The impact of the application is such that it can allow the translation of any length of Text1 variable, that is, words, sentences, paragraphs and longer pages of text1 written in English into a specified language.Nevertheless, the translation from English to the specified language will be executed one language at a time. This implies that the application will not carry out translation of two or more languages at once.The string of text1 entered in English MUST is in the right spelling if the equivalent translation is to be done in the chosen language. As a result, an individual who does not understand English but wishes to learn other foreign language will be able to learn individually without necessarily having an instructor.
Hainry, E., & Péchoux, R. (2013). Type-based heap and stack space analysis in Java.
Johnsen, E. B., Hähnle, R., Schäfer, J., Schlatte, R., & Steffen, M. (2012, January). ABS: A core language for abstract behavioral specification. In Formal Methods for Components and Objects (pp. 142-164). Springer Berlin Heidelberg.