Nicholas Frey and John Mangel nicholas, jmangel
(A) Description:
Misc translate to secret language is a simple program that can create a few different GUIs which can translate from english to pig latin or gibberish and vice versa. The program also has a few font and font color options.
(B) User Stories: As a secret agent, I can translate sensitive messages to pig latin or gibberish so that only my fellow agents can read them.
As a mono-lingual english speaker, I can translate pig latin os gibberish phrases to english, so that I can understand pig-latin or gibberish phrases.
(C) 1 Running Assessment
It takes a command line argument to decide which GUI to open. If the command line input is ant Gibberish it opens up a GUI with a text input box, a drop down menu to choose the direction of translation, and a result text area. To translate the user must hit enter. If the command line input is ant PigLatin it opens a GUI with a text input, buttons for help/instructions, English to Pig Latin or vice versa, and a result text area. The user doesnt have to hit enter and instead has to hit a button to translate in the desired direction. Below there are drop down boxes to choose the correct english translation when ambiguity arises translating pig latin to ennglish. If the command line input is ant Run it opens a GUI which includes the functionality of both translators. The UI of this GUI takes from that of the Pig Latin Translator, with added buttons for English to Gibbereish and vice versa and font style and font color.
(C) 2 Additional User Stories As a learner of pig latin, I want to save the correct pig latin to english translation of ambiguous inputs, so that I don't waste time selecting the same word every time.
As a caligrapher, I want more font options, because I want the program to be more aesthetically pleasing.
As a secret agent, I want to be able to translate my messages to reverse, so that I can have increased security.
As a minimalist, I want to close the font options window when I press select on a style so that I can return to my translating more quickly.
(D) README assessment: The README.md is poorly formatted, hard to mentally parse in some paragraphs. The photos are badly placed in the text. Content wise the README is good.
(E) Assessment of build.xml The content is all necessary, the descriptions are all sufficient, but the indentation is poorly formatted.
(F) Issues Assessment There are enough issues to earn 1000 points and all the issues seem doable. All the issues are clear and we discussed some of them in lab with our mentor so they are understood.
(G) Additional Issues We did not add any issues.
(H) Assessment of actual code. First off, the code for the Gibberish Translator and tester classes are unnecessarily included in the pig latin translator directory. Regarding code, there are obsolete TODO comments which distracts and indentation is bad. The number of methods is reasonable and each is named wisely so that its function is understandable. It is obvious how the classes relate to one another and aside from indentation the code is easy to read. To describe this to another user: The main of a translator class calls the go method, which creates a JFrame and adds an object of the class WindowSetUp, which is a separate .java file that adds buttons and action listeners and sets up all main parts of the GUI window. The actionPerformed of the action listeners on the translate buttons include calls to methods in the translator class that convert the string from the specified language to the other specified language and output it in the result box. The WindowSetUp class also includes the buttons and action listeners for the help, font style, and font color buttons.
(I) Testing There are JUnit tests. There are several tests for each direction of translation. However, there is an extra set of tests due to the fact that the gibberish translator is included in both the gibberish folder and the pig latin folder. The tests also apparently test corner cases, and it appears that it covers all the relevant ones. It may be difficult to add later tests due to the fact that all the junit tests are stored in a .jar file. We may have to find out how to extract these files if we end up adding more use cases, including new languages.
General observations:
The combined translator has options to change font style and color, but the individual translators do not. The combined translator and PigLatin translators have help/instructions, but the Gibberish translator does not. Otherwise, the Gibberish translator GUI seems nicer (it has a drop-down menu instead of two buttons, etc.).
W16 Final Remarks: The indentation is still very inconsistent and