As promised, I got to go into the test environment with my advisor this week. Let’s clarify what that means. The goal of my project is to have my GUI sent along with another Unanet product. In the weeks leading up to this, I have been building up this GUI to complete tasks that would be similar to the ones that will be run for the customer. This week, my advisor and I logged onto the environment so that we would have access to the files and tasks to be run. Sadly, I was not able to use my actual GUI because there was still a bit of space between what I had and what I needed – a space that could only be filled by going into this test environment.
After my first meeting of the week, I figured out a few different things I needed to do. My GUI needs to take information from an XML file and run a series of java scripts from the command line with specific arguments. I already had the means to go through a series of tasks, so this week mainly involved changing the XML file to be able to specify arguments and run things from the command line. Along with this, I still wanted to keep everything very open and nonspecific, especially in the Python script. As stated in my abstract and introduction, my end goal is to be able to put any sort of series of tasks into an XML file and have the GUI illustrate and execute them.
One prime example of how I wanted to make my XML more skeletal is as follows. I originally had different definitions for arguments within the XML file that the Python script would reach into by name and parse through, like this:
But if you think about it, this is not as bare as it can be. What if I am trying to run something else from the command prompt, not requiring a ‘-b’ or ‘java’ at the front? After realizing this, I made a new subcategory area in my XML file so that instead of having set-out arguments, the Python script would just parse right through each one of these ‘args’ in a row (set up by the user beforehand). Here is the updated section:
Even though the second option is longer, it allows for more manipulability of the XML file.
This part of the project feels more creative than the others because I find myself thinking of any possible way that a task would not work in my GUI. Running through these scenarios in my head, I gain a better understanding of how to divide up everything that I’m dealing with: GUI scripting, task data, and computer data (where to find everything in the C:\ directory). In the coming weeks, I hope to develop my script well enough that I can get to actually running it in the test environment. Wish me luck, and stay tuned for my last few blogs of the Senior Project!