Planning:
Report:
On Monday I set up my work environment at Brickx. I prepared a couple of things such as this logbook, a general planning using Trello and I even took a sneak peak at what development with the Zebra scanners looks like. I talked with Ruud about how the database and the queries were structured within the Brickx software and he compiled a database diagram for me. I started work on the project plan as well.
Planning:
Report:
On Tuesday I worked on my project plan and finished it. I also made a requirement analysis.
Planning:
Report:
On Wednesday discussed the project plan and the requirement analysis with Ruud. He had some notes for the requirements and I updated them accordingly. I also spent some time updating the Zebra devices that Brickx has and after that I worked on the user stories and prepared for a client interview tomorrow.
Planning:
Report:
On Thursday I worked on he class diagram, design sketches and the architecture diagram. Unfortunately I was not able to visit the client today as some other things came up that needed Ruud and Hans' attention. So instead I prepared some more and continued work on the documentation.
Planning:
Report:
On Friday I was able to clone the git repository for the original Mobile WMS project and create my own repository for the new WMS app. I also started work on some design sketches. Furthermore I went to Natuzor, one of Brickx's clients, there I was able to see how the order pickers work and how the current app works in practice.
Planning:
Report:
On Monday we had a meeting planned with De Wit in Schijndel. During this meeting the PIM part of the Brickx system was explained to the company and I was also able to learn a couple of things from that presentation. When we got back I worked some more on use cases to get a better view of how the app needs to work and how the individual features work together.
Planning:
Report:
On Tuesday I worked on making more use cases. I also started work on a proof on concept for login into the API.
Planning:
Report:
On Wednesday I went to Natusor to interview some of the users for the new WMS app. There I got some valuable feedback and decided to make a POC. Ruud said the app looked pretty good already so I'm going to keep development going on this POC.
Planning:
Report:
On Thursday I worked further on the PoC for the WMS app.
Planning:
Report:
On Friday I worked further on the PoC for the WMS app.
Planning:
Report:
On Monday I finished the PoC for the WMS app. I was able to get a working Dagger2 implementation and an MVP architecture with two views. A domain, presentation and data layer were created as well.
Planning:
Report:
On Tuesday I worked further on the PoC and added a Product Information screen.
Planning:
Report:
On Wednesday I made another screen, namely the location information screen. I used another recyclerview adapter and made sure Dagger2 was playing nice with it as well.
Planning:
Report:
On Thursday i got a bit further with the API to log in. I was able to get a connection to an API using Retrofit and RXJava. Though for some reason Retrofit was sending multiple requests to the API and thus my API key kept getting duplicated. I'll work around that next week.
Planning:
Planning:
Report:
On Monday I continued to struggle with the API and tried to play around with some dependency injection to see if i could resolve the issue.
Planning:
Report:
On Tuesday I figured out the log in and duplicate API call problems and managed to log in.
Planning:
Report:
On Wednesday I finished the authentication. I am now able to get a userdata object and save it in the shared preferences. I can also show the right menu items accordingly.
Planning:
Report:
On Thursday I started working on the product information screen. I mostly worked on the UI.
Planning:
Report:
On Friday I continued work on the product information screen and finished the UI for it. On Monday I will fully implement the API request.
Planning:
Report:
On Monday I finished work on the API request. You can fill in a product on the information screen and all the relevant information (minus the location info) will be properly shown. Sadly something has gone wrong with the threading so now the UI thread is locked mid-request so I will have to fix that some other time soon.
Planning:
Report:
On Tuesday I finished work on the API request. You can fill in a product on the information screen and all the relevant information (minus the location info) will be properly shown.
Planning:
Report:
On Wednesday I worked on finishing up some functionality for the productinfo screen. I made it so that all the data from the API would be shown on the productinfo screen.
Planning:
Report:
On Thursday I worked on adding the location info to the productinfo screen. This worked and also I added support for the barcode scanners on the Zebra devices.
Planning:
Report:
On Friday I finished implementing the location info page. I also finished the Zebra implementation and worked out some bugs in the code and my API.
Planning:
Report:
On Monday I experimented with loading animations. I eventually got one done for the login screen. I also made sure that commands can't be queued up twice to try and make sure the API does not get confused.
Planning:
Report:
On Tuesday I implemented loading animations for the product and location info screens. I also added error text in case the request would go wrong.
Planning:
Report:
On Wednesday I make designs for the order picking screen. The order picking consists of three major screens, the landing page where a user can select a order to pick. The main page where the order's products can be picked and the end page where an overview of ordered products is shown and the order can be booked to be completed.
Planning:
Report:
On Thursday I toyed around with some concepts for the main page. I settled on a page that shows the status of every order pick so that any picked order can be paused and picked up at a later time again. This is handy when one of the smartphones to pick and order suddenly stops working or when someone is about to go on a lunch break.
Planning:
Report:
On Friday I made the main screen. It was quite hard to figure out how to fully encompass all of the features needed to pick products. I wanted to make things easier to read and to access so I ended up formatting all the required product information using headers. I asked my mentor about what data he would like to see on the screen and using his advice I came up with a layout. For the product itself I used a handy cardview at the bottom of the page where users can input a number of products scanned, (also counts up using the scanner). There are also shortcuts for +1/-1 and equals. When the right amount is picked the status icon will turn green and the user can move on to the next product.
Planning:
Report:
On Monday I took the design I made for the landing screen and implemented it.
Planning:
Report:
On Tuesday I took the design I made for the main screen and implemented it. I used a viewpager to make a horizontal scrolling screen for all the products that need to be picked.
Planning:
Report:
On Wednesday I took the design I made for the end screen and implemented it.
Planning:
Report:
On Thursday I started adding logic to the order picking screen. I was able to make an adapter for the main page so it would scroll through products.
Planning:
Report:
On Friday I got a message from Marcel telling me to update him on my situation and hand in the final version of my project plan. He also told me to work on my portfolio, which I started doing.
Planning:
Report:
On Monday I worked on the final version of my project plan and handed it in.
Planning:
Report:
On Tuesday I worked on updating my portfolio with a new layout and a better structure.
Planning:
Report:
On Wednesday I continued working on the portfolio all day.
Planning:
Report:
On Thursday I continued work on the portfolio.
Planning:
Report:
On Friday I started to flesh out my architecture document.
Planning:
Report:
On Monday I started to flesh out my architecture document.
Planning:
Report:
On Tuesday I continued to flesh out my architecture document.
Planning:
Report:
On Wednesday I started wrapping up my project plan.
Planning:
Report:
On Thursday I wrapped up my project plan and sent it to Marcel.
Planning:
Report:
On Friday I continued development on the app. I started implementing the order pick feature.
Planning:
Report:
On Monday I started with a test of the order picking API which turned out to be more complex than I had anticipated so instead I started working on some designs for the order picking screens.
Planning:
Report:
On Tuesday I finished the designs for the order picking screens. I went with three different stages; an order overview, a main order picking screen and an picked products overview screen. Because the target devices (TC-20, TC-8300) have very small screens at low resolutions I can't display too much data at once because it won't fit.
Planning:
Report:
On Wednesday I started implementing the designs I made for order picking.
Planning:
Report:
On Thursday I added logic to the designs of the order picking screens
Planning:
Report:
On Friday I continued implementing order picking.
Planning:
Report:
On Monday I finished the first version of order picking. That day I went over the changes with Ruud and Hans and solved some API issues while we were at it. We made a list of items I need to change and improve for the order picking screen and I made a further planning for sprint 3.
Planning:
Report:
On Tuesday a Fontys day was planned for students to report their progress and get some advice on what to do next. A teams meeting was held online for a workshop on how to write a proper thesis. Another workshop was held to show what the Fontys expects of us. After that me and a few others had a separate meeting with Rens and some other assessors. We talked about our progress and how we handle the Covid-19 problem. I myself am pretty demotivated by it so I decided to visit the company more often to get feedback and stay focused.
Planning:
Report:
On Wednesday I started fixing up some issues and implementing some feedback I got from Ruud last Monday.
Planning:
Report:
On Thursday wrapped up some last changes that needed to be made to to order picking screen. Next up was the serial number feature needed inside the order picking screen as well.
Planning:
Report:
On Friday I started making the serial number feature. I used this day to come up with suitable designs for it.
Planning:
Report:
On Monday I got done with the serial number designs and started implementing them.
Planning:
Report:
On Tuesday I added logic to the serial number function and tested it out.
Planning:
Report:
On Wednesday I rolled up my sleeves and started fixing some of the threading issues I created by not correctly using the right Rx-java arguments.
Planning:
Report:
On Thursday I changed all the error messages from English to Dutch and I also added some more error messages for scenarios like losing connection to the API and for new features in general.
Planning:
Report:
On Friday I added the fact that that every product in order picking will also try to find an image. This happens asynchronously.
Planning:
Report:
On Monday I started making the stock mutation feature. Of course I started by making the designs and thinking about the flow of the function.
Planning:
Report:
On Tuesday I continued making the stock mutations screen. I finished the designs and moved on to implementation.
Planning:
Report:
On Wednesday I continued making the stock mutations screen. I added the logic for the stock mutation screen.
Planning:
Report:
On Thursday I started making the stock transfer screens. I started with the design.
Planning:
Report:
On Friday I continued work on the stock transfer screens. I finished the designs and started implementing them.
Planning:
Report:
On Monday I continued work on the stock transfer screens. I got done with the design and the implementation of it so now I added logic.
Planning:
Report:
On Tuesday I looked at the stock transfer and stock mutation screens and started testing them. I noticed I was missing some features so I started adding those. First off the serial numbers.
Planning:
Report:
On Wednesday I implemented serial number support for stock transfer.
Planning:
Report:
On Thursday I implemented serial number support for stock mutation.
Planning:
Report:
On Friday I implemented get a report ready for sprint 3 and started planning sprint 4.
Planning:
Report:
On Monday I went back to the Brickx offices to show my work for Sprint 3. Ruud was pretty happy with the changes I made to order picking and the order mutations and transfer screens. I did some testing on the the features using the Brickx API. I spent the rest of the day finetuning the app and adding quality of life improvements.
Planning:
Report:
On Tuesday I realized that it's only one more month until the internship is over so I really had to get my documentation and portfolio in order. I also wrote and email to Marcel updating him on my progress.
Planning:
Report:
On Wednesday I continued putting pen to paper for the research questions.
Planning:
Report:
On Thursday I continued working out the research question.
Planning:
Report:
On Friday I finally finished all the research and sent it to both my mentors.
Planning:
Report:
On Monday I began making designs for the settings screens and planning out its features. I also get feedback for my portfolio.
Planning:
Report:
On Tuesday I processed the feedback given to me by my mentor.
Planning:
Report:
On Wednesday I went around some stakeholder and strangers to carry out my usability tests.
Planning:
Report:
On Thursday I implemented the settings screen.
Planning:
Report:
On Friday I did some polish and bug fixing on the settings screen.
Planning:
Report:
Whit Monday.
Planning:
Report:
On Tuesday I prepared the presentation I had the next week.
Planning:
Report:
On Wednesday I did an attempt to make unit tests using different API base URLs. This only half-worked out. I made a separate branch for it so I can work further on it later.
Planning:
Report:
On Thursday I worked on updating some portfolio things and fixed some inconsistencies and mistakes in the code.
Planning:
Report:
On Friday I continued working on updating some portfolio things and fixed some inconsistencies and mistakes in the code.
Planning:
Report:
On Monday worked on re-injecting Retrofit when a new base URL is inputted by the user. I also did a test presentation with Ruud and Marcel which went rather well.
Planning:
Report:
On Tuesday I worked on adding new functionality to the order picking screen.
Planning:
Report:
On Wednesday I finished the work from the previous day and I also fixed a bug where loading images would never stop displaying the loading animation.
Planning:
Report:
On Thursday I made some tweaks to the code and got the documentation in order.
Planning:
Report:
On Friday I used the Android profiler to go after some performance issues and managed to raise the frame rate from 20 FPS to over 60 FPS using a custom image scaler I created. I also updated the app icon.
Planning:
Report:
On Monday I laid the final hands on my project documentation and portfolio before handing it in.