Understanding the flow of application and application behavior through raw data output, such as register views and memory from debuggers can be a challenging task software developers. Developing a suitable set of stimuli to the system under test can be a daunting task. Through data visualization and Analysis, I have acquired skills to synthesis the same raw data output, thus making system visualization quicker, more comfortable, and faster. Mapping the data can help me to understand the user requirements more thoroughly and identify loopholes in the system design. When developing software in a language such as C, C++, or Java, a software engineer often drowns in data. Advancement in technology and complexity of user requirements makes the development process even more complicated. This complexity is often attributed to the amount of data that is generated by the requirements of these advanced software programs. The concept of visualization has equipped me with the skills to present the tools in a “human” readable form.
While most of us think of data visualization as charts and graphs, the same concept can be extended to generate input and output values, as well as map the entire system. Through skills acquired from this course, I have the know-how to use visuals as stimuli for the system. Testing and prototyping are some of the critical phases of software development. These stages are often expensive to execute and may take quite some time to accomplish. Using visuals such as pen and paper prototypes to mimic the functionality of the system saves both time and financial resources. Through skills learned from this course, I have learned the significance of using presentations to help the user understand the technicality of the system.