Showing posts with label Development. Show all posts
Showing posts with label Development. Show all posts

Wednesday, August 31, 2016

Work Term Update-August 2016

Edit Deposit Changes

The month of August was busy. My first task was to modify CMD Server so that we can update the expected amount of a deposit from the mobile app. This was one of the moments where I realized just how much I had learned this semester. This task was much easier then a similar task was earlier in the semester.

New API Call 

I also worked on a new API call in CMD server. This was the first time I had added anything completely new to the server. I liked how I was able to apply my knowledge from earlier in the semester to make this task easier.

Wrapping up my last work term

During my last week at NCR I wrapped up all my tasks and gave lots of knowledge transfer sessions in order to prepare for my departure. 

This semester was by far my favourite. I was given so many opportunities and I learned so much. I became a better developer and tester and I am so thankful for my co-workers who helped make that happen.  

Thursday, June 30, 2016

Work Term Update-June 2016

Bug Fixes

During the month of June I made several bug fixes. This was a great learning experience. I learned how to ask better questions to the testers so that I could get to the root of the problem faster, I also learned how to narrow down the location of the bug in the code faster.

Item Reclassification in CMD

The item reclassification in CMD was much more involved than my team first anticipated. Once we had the feature implemented we realized that we also needed to bring over more features from the web application in order for item reclassification to work seamlessly. I made changes on both the server side and the client side.

Tuesday, May 31, 2016

Work Term Update-May 2016

I worked on three things during the month of May

CMD Reclassification

I worked on the CMD Server to allow items to be reclassified. This was a really fun experience. I really enjoyed the learning that took place in changing the REST API.

CMD Tablet UI Work

This month I also got to make some changes to the CMD Client so that we can support tablets in addition to phones. This was my first experience with Angular JS and it was really enjoyable. This experience also helped me with the bug fixes I did this month.

Bug Fixes

I also made many bug fixes this month. I learned a lot and became better at narrowing down the root cause of issues.

Saturday, April 30, 2016

Work Term Update-April 2016

The whole month of April was spent working on a request for a customer. We had a high performance report but it was missing some information included in one of our other reports. I added the missing information and did some code refactoring during this time. This was a challenging month but a really great learning experience. I learned how to debug issues more effectively and explain features more clearly. A lot of issues from this month were due to unclear explanations I had given.

Monday, February 29, 2016

Work Term Update-February 2016

Authentication Adapter Work

During the month of February I mainly worked on an authentication adapter for CMD Server. There were three main components that I worked on.

Mock

Since we didn't have an authentication system running to test our adapter it was necessary to create a mock authentication service that would behave in the same way as the authentication system. We already had a mock that was working and that the testers knew how to use so I created one that behaved the same way for this authentication system.

Basically a user would specify their username like this
au:50,false,ENROLL,SUCCESS,1200,

the au indicates that the user should be authenticated
50 indicates the number of days left until their password expires
false indicates whether or not they want to change their password
ENROLL indicates that they need to be enrolled in security questions
SUCCESS indicates that the operation should be successful
1200 is the error code (in this case 1200 means successful)

Change Password & Forgot Password

In addition to the mock I worked on functionality for the change password and forgot password operations.

Sunday, January 31, 2016

Work Term Update-January 2016

Development Environment Setup

My work term began with setting up my development environment. This work term I worked both on the passport web application and the commercial mobile deposit (CMD) mobile application. It was a nice challenge setting up my development environment for CMD. CMD consists of a server and a client. The server is written in Java and the client is written in angular JS.


Story Planning

During the month of January I also participated in Story Planning for the next release. It was very interesting starting a coop term at the begining of a release instead of coming in during the middle of the release. I really gained an appreciation for how much planning goes into the release. We created the stories and then sized them using story points.

Monday, December 1, 2014

Work Term Update-November 2014

Through the month of November I worked on three major things. I installed and tested the newest version of the check recognition software we use. I fixed some failing unit tests on older versions of passport and I began executing regression tests.

New Check Recognition 

Since I am familiar with setting up drivers I was assigned the task of testing the new version of the check recognition software we use. The version we had been previously using was no longer supported and needed to be upgraded. I installed the new software by closely following a technical document that one of our information engineers put together. This ensured not only that the software could be upgraded but also that the technical instructions were correct and clear. Once the software was installed I scanned a variety of checks and made sure they were recognized correctly. I tested this change on not only the newest version but several previous versions to make sure that you can make the upgrade on any of our supported versions of passport.

Fixing the Failing Unit Tests

In my down time in November I worked on fixing the failing unit tests in many of the older versions of passport. I enhanced my research skills by looking through the subversion check-ins to see what caused the test to fail. I also compared the code to the most recent version (if the tests were passing in the most recent version) to see if it had already been fixed. I'm still working on my coding skills, but I was really happy with the learning progress I made in researching a problem.

Regression Testing

Towards the end of November our regression test cycle began. I was assigned over 300 test cases to execute. I also was assigned some SSE testing to do so it was a challenge to balance the work from both teams. December looks like it will be the same as the end of November, I will be working on testing for both the SSE team and the R&D team.

Tuesday, September 2, 2014

Work Term Update-August 2014

During the month of August I worked in both development and testing. The first half of the month I worked on two main development issues and the second half of the month I worked on regression testing again. Here are some more details about my work during the month of August:

Development Improvements

The development work I did this month was mostly around some improvements. There were two major improvements I worked on. The first involved updating some different reports from last month. The other involved adding a new configuration to one of the configuration files. This improvement was a challenge but I felt so accomplished when I figured out the issue and got it working correctly.

Regression Testing

During the second half of the month of August I worked on regression testing again. I was assigned some of the same areas to test as last cycle as well as some new features, or at least features I hadn't looked at in depth before. I really enjoyed getting to do something I am good at. One challenging thing this time around was setting up my testing environment with an Oracle database. 

This post ends my first official work term at NCR. I am continuing my co op at NCR through to December, but I will be on my second work term of five.

Thursday, July 31, 2014

Work Term Update-July 2014

This month I had a wide variety of tasks assigned to me. Here are a few of the things I worked on during the month of July:

Tested French Version

I was asked to test the French version of Passport during the beginning of this month. I spent a week selecting various test cases to run and I found 25 issues. This really tested my knowledge of the product because I needed to rely on my memory to navigate the application, since I am not fluent in French. After I had found the issues, I worked with another coop student who was fixing the issues. I also verified that the issues had been fixed for the hotfix release. I really liked being challenged to think of an efficient way to test the French version.

Development Assignments

This month I was assigned a couple of improvement development tasks. Specifically I was assigned one having to do with reports. I needed to add some information to the header of a few of the reports that were missing the information. I learned a bit more about jrxml files and how to use i-report. This was the first time I’ve gotten to fix an issue so far this work term and I felt very accomplished when I had finally figured out the problem and checked in the code.

Meeting with the Automation Testing Team

This month I also selected two test cases from the Driver Verification feature that I had previously tested to be automated. I was part of a meeting with the automation test team from India to demo the new feature to them to help them gain a better understanding of how the feature works.

Verified Customer Raised Issues

I also worked with the SSE Tester and assisted in verifying the issues that had been ported to the most current version of the code. This was challenging because some of the issues are difficult to reproduce on our Virtual Machines, so it can be challenging to figure out ways to verify that the issues have been properly resolved.


This month brought lots of learning experiences and I am really looking forward to having more development tasks in August.

Sunday, June 1, 2014

Work Term Update-May 2014

This month I had three major things I worked on at my work term at NCR. Two were related to development and the other was related to testing. This post will describe in detail what I have been working on in May and what I have learned so far.

Set up my development environment

My first week and a half of this coop work term at NCR consisted of setting up my development environment. Through setting up my environment I began to learn how use several new tools. These tools include maven, myeclipse10, svn repositories, Microsoft SQL Server Express and GlassFish. I used MS SQL Server Express last summer, but I didn’t gain experience in the setup process. Setting up my development environment proved to be a complicated task. I ran into a lot of issues, but I learned a lot about how Passport is set up and what to do when problems do occur.

Oracle Unit Test Failures

I was assigned a task to fix some problems with the nightly oracle unit tests. About 200 unit tests had been failing because of sequence numbers being hard-coded into the unit tests. My job was to figure out a way to reset the sequence numbers in Oracle as part of the unit test setup. This way each unit test that was run would start with a completely clean database, so we would not have to go into each unit test and fix the hard-coded sequences. The unit test setup already cleaned the database, but the sequences are not automatically cleared in an Oracle database. Through my investigation into the problem I found two different ways to reset the sequences:

DROP the sequence and then CREATE it again

Change the way the sequences are originally created in the database to include a MINVALUE. Then to reset the sequences you can do the following:

SELECT the current value
Reset the sequence with the negative value of the current value as the increment
SELECT nextval so that the negative increment takes effect
ALTER with +1 as the increment

 I found that the best way to reset the sequences was to drop them and then recreate them. This is because it is simpler and doesn’t require changing the way the sequences are originally created, which would require lots of regression testing to ensure nothing broke. I have not finished writing the code or testing the code for this improvement yet but it should be done early in June.

Tested New Driver Check Mechanism

The final major thing I did this month was test the new driver check feature. I wrote, executed and demoed test cases that tested when a user would be contacted to download a scanner driver. This increased my understanding of Passport and also refreshed my test case writing ability from last summer. This also increased my knowledge of HP Quality Center, which is where the test team writes and executes their test cases. This assignment also taught me how to deploy builds on a WebSphere environment, a skill I didn’t get to learn last summer. Learning to deploy builds introduced me to a new tool, BeyondCompare, which helps when copying the configurations from the old build over to the new build.

In June I am really looking forward to completing the fixes for the Oracle Unit Test Failures as well as regression testing the new driver check mechanism.