Zimmerman

Name: Josh Zimmerman

Guiding Question: Would I like to work to design software solutions to problems at a credit card bank?

(optional) Use this space to list possible activities, tasks, experiences. Remember everything you do should help you answer your Guiding Question.

(Required) This plan is a “best guess” as to what you and your mentor think you will be doing. It is not meant to be a hard and fast schedule for your Exploration. The plan should illustrate how you intend to complete a minimum of 80 hours.


 * = Date ||= Location/Activity ||= Number of Hours ||
 * =  ||= Complete a Joint Review of Application System and Project Objectives ||= 2 ||
 * =  ||= Complete initial review of application code for target conversion ||= 6 ||
 * =  ||= Develop design and plan for the systems conversion ||= 8 ||
 * =  ||= Review design and plan ||= 1 ||
 * =  ||= Establish work environment for development and testing ||= 2 ||
 * =  ||= Complete initial build for conversion ||= 36 ||
 * =  ||= Complete final design and code review ||= 4 ||
 * =  ||= Test converted code ||= 8 ||
 * =  ||= Develop implementation plan ||= 2 ||
 * =  ||= Final review and development of post implementation test plan ||= 1 ||
 * =  ||= Complete Implementation ||= 4 ||
 * =  ||= Complete post implementation review ||= 2 ||
 * =  ||= Wrap-up Project ||= 4 ||
 * =  ||> Total Number of Hours ||= 80 ||
 * =  ||> Total Number of Hours ||= 80 ||
 * =  ||> Total Number of Hours ||= 80 ||
 * =  ||> Total Number of Hours ||= 80 ||

Journal: 5/16/2011 (8.5 hours): 1. Plan of Action: We're tracking fairly well. We've started the planning process for the project (joint review, initial review, design), but there were some glitches in setting up my computer with email and getting the speed necessary to do what I need to do. Answering guiding question: We've only done a little bit of work so far, so I still have a ways to go to determine whether I like the whole process involved with developing software solutions. Mentor discussion: We talked about details of how the system currently works and started to plan out how to implement the program to view reports, what, technically, it'd need to do, the background of the server system at Applied Card Systems, and how the overall process of software development there works. 2. How I feel: Setup was moderately frustrating, but the design process so far has been interesting and fun. Concerns, etc.: I'm worried about my ability to write the code, as there's a lot I don't know, specifically related to Web application development and how to write code for that. I'll have to do research online to discover what I need to know.

5/19/11 (6 hours): 1. Plan of action: We're following it very well, if not going faster than planned. I made a detailed design document today, which impressed Lance, my mentor. I also coded a lot of the project today. There's still more to do, but comparatively little now, I think. I do need to check some things before going further, to ensure that the functions I called work as I expect--some with my mentor, and some online. Answering guiding question: I am closer to answering the question, and think that I *would* like developing software solutions to problems at a credit card bank. Mentor discussion: Lance has been very pleased with my work so far. Today, we discussed more specific technical details of implementation, like how to write the code and how the web page should look for users. 2. How I feel: I feel pretty good about the project so far, but my Internet access disappeared, which limits my ability to do the research I need to do. I had to file a form today to request that it be reinstated, which was moderately frustrating. Concerns, etc.: I have lingering uncertainties about how to do certain parts of the project, but I'm now slightly more confident that I'll be able to resolve these issues with research and/or mentor discussions.

5/20/11 (6 hours): 1. Plan of action: We're going fairly fast, and may be able to send the project to QA early next week, and then move on to putting it into production! -I like this work, but, again, I've only done a relatively small part of the process. There's still a lot--including testing and putting into production--to do. -Mentor discussions: We discussed more technical details, and I learned more about web page development, and things I need to know for the project. 2. I feel good about the project, though the continued lack of Internet access is annoying. The process of developing itself is enjoyable. -Concerns: I have fewer, now that we've done so much. Seeing my code work is making me more self-confident about my programming ability, especially with regards to this project. I'm still concerned about the lack of Internet access and bureaucracy behind that.

5/24/11 (8.75 hours): 1. Plan of action: Today was mostly spent debugging my code, and fixing unforeseen problems. For example, we originally planned to strip the long strings of numbers from the end of report names, but found that we couldn't do that, as those numbers were the only way to identify some of the reports. -The debugging is both frustrating and satisfying, but overall, I like the process of software development so far. I'm sure that after I've graduated from CMU and have a better idea of how to do it, I'll like it even more. I'm much closer to answering my guiding question now. -Mentor discussions: We spoke less today, mostly talking about debugging when we did. 2. I am feeling good about finding and fixing these bugs in my project. Some of them made me feel somewhat stupid, but I'm glad that I caught them and fixed them. I feel that some of the solutions I came up with (for example, a hash table used to convert from all-capital letters to mixed case with acronyms still capitalized) are inelegant and would like to make them better.

5/25/11 (8.5 hours): 1. Plan of action: Today, we worked mostly on unit testing and on preparing documentation to help QA and people who will maintain the project in the future. I fixed the section of my code that converts from all-caps to mixed-case and made various other improvements throughout. We're just about ready to send it to QA, but they are now busy with an urgent project that just came through, so it may be a while before they can get a chance to look at it. -The testing process as I did it was somewhat tedious, but there may be a better way to test the GUI elements (graphical user interface). I'd like to learn about that. The process has been somewhat delayed by this new urgent project, which is frustrating, but ultimately it makes sense as a business decision--this is an application that is only ever used by employees. -Mentor discussions: We discussed how to write unit testing documents and other documentation, as well as some last-minute changes that needed to be made to the code. My mentor is busy with this new urgent project, though, so we haven't been able to talk through the testing or putting into production processes. 2. I feel generally good about the project, but am concerned about having enough time to put it into production it now that this urgent project has come up. I would like to learn about how ACS does version control and things of that nature, along with QA and putting into production, but that will have to wait some.I have Internet access now, and so can do research at work. I'm somewhat concerned by the apparant lack of resources (i.e. people) at this company, but it is a small company, so it is to be expected, and is something I'll keep in mind when attempting to answer my guiding question.

5/26/11 (8.75 hours) 5/27/11 (8.75 hours): 1. Plan of action: We prepared to send the code to QA today, but will be waiting until next week before they can review it. I fixed some minor bugs with my code, and now we're just waiting for QA. It is unlikely that we'll be able to fully implement the project before the Exploration is over. Guiding Question: I'm fairly close to being able to answer my guiding question, I think. I won't finish the entire process, but the parts of it I've done so far have been enjoyable. Idling is somewhat unenjoyable, but I imagine that if I were to work for a software company as a full-time employee, I'd have little of that to do. Mentor Discussions: We talked about how ACS does source/version control and how to send programs to QA for testing, as well as some minor bugfixes and improvements to allow users to see more reports on their screen at once. 2. I feel fairly good about this process, though the now slow progress we're making is somewhat annoying. I wish there was a way that we could be able to fully implement my program before I leave, but that seems infeasible, unfortunately. I'm concerned that there may be some bug I haven't thought of, or that I've made some stupid, hard-to-catch mistake somewhere, as no testing can be fully comprehensive. Overall, though, I feel more confident about my ability to write software now.

5/31/11 (7.75 hours): 1. Plan of action: I am now working on a new project—debugging an error that has been showing up for several years in another program. Tomorrow I have a meeting with the head of QA and others to discuss my first project and testing it. Guiding Question: I think that I would like to work developing software solutions for some company, but the legal restrictions that credit card companies must deal with seem like they could be frustrating at times. In addition, working with old, hard-to-understand code and attempting to find bugs in it is somewhat frustrating (especially when I can't even reproduce the bugs on my own machine and the development server. ) Mentor discussions: Today, we talked mostly about the project I'm trying to fix the error in, and also organized a meeting for tomorrow with the QA manager and others, and ironed out details for that. 2. I am frustrated by the code I'm trying to debug, as it's uncommented and somewhat hard to follow. In addition, I can't reproduce the error that happens on the production server, so it's difficult at best to track down the problem. I do enjoy writing code, though, and testing my own code. I would really like to pursue that as a career goal, though avoiding debugging other people's code would be good.

6/1/11 (8.5 hours) 6/2/11 (8.75 hours)

8.5+6+6+8.75+8.5+8.75+8.75+7.75+8.5+8.75 = 80.25 hours

Photographic Evidence:







5/7/11 POL presented successfully in Meeting Room. Mentor not present. Copy of mentor evaluation emailed to Mike Smith. Thank you written but envelope not addressed yet--he will give us address later.

J. Ergueta