The job involves replacing an open XML file with a encrypted XML file and making the required changes at all locations where the file is opened or read. We would like this to be done within the next one month. The work can be done remotely but we will have our staff members to assist you in building test cases, showing you the expected behavior and work side-by-side to help understand the code. There are multiple extensions to this project- licensing, read/view, modify etc. We understand most places in the code where changes have to be made. We also know the use cases clearly.
Mirabilis Design has a modeling and simulation platform. There are two major functionalities- Graphical User Interface and Simulation. Our current method is to read the selected XML file, look at tags and present the data to the User Interface. Similarly the simulation also look at the tags and determines the logic of the tasks to be executed.
The projects involves the following steps: 1. The XML file needs to be encrypt. This means that no can open the XML file to view or modify. 2. Need a mechanism to for the user to enter the required information. 2. The XML file or model can be used to read some fields for populating the GUI and for simulation. 3. If the file name is changed or values inside the file are modified, the file is considered corrupted. 4. The current software package expects an open XML file. We need to change this to when it recognizes that a file is encrypted, it must follow the decrypt mode. 5. The XML can be read-only. 6. The current software accesses the XML file in multiple locations. So the candidate must identify all the locations and update the java code.
Language: Java Libraries: None
More detailed description: Proposal The XML file contains three parts of interest- external port names, parameters and logic, which include the wiring between internal ports, blocks and the content of each. We need to encrypt the logic piece and make the port and parameters visible. We need a mechanism to test the file and make sure it has not been unaltered. A tag is required to know that it is an encrypted file. Do we need to add it to the DTD? There must be a simple form or a command-line operation to encrypt. The only reason to decrypt the file is to simulate only. No viewing is possible for Phase 1. The user encrypts the file and ships it to another user via email. The user will instantiate class to include in a model. At that point, the user can view the parameters and the ports. They cannot do an Open Block or Open Instance. The XML file can be instantiated as a Class that can be stored in a Folder or part of the model. It Class/Block and Instance cannot be viewed at all. CTRL+F allows for the search within all the XML files that are part ofd the main XML file. This will search the parameter and port name but not the logic. When the user clicks the GO button to start a simulation or runs the command-line version, the XML file must be decrypted in memory. The decrypted model cannot be saved to file. The user can do a Listen to Block while running the simulation. Similarly, they cannot do a Listen to Simulator to track what is going on inside the block. The model creator can send the statistics on an output port to send to the Architecture Setup. The debug messages must be sent to a port. Similarly, the trace can be passed on via the Data Structure fields.