Lloyd's Logbook
From SoftwarePractice.org
16th August 2008
Scheduled Activities:
Today we met with the whole team. Originally the group consisted of Lloyd, David and Shane, however today we have had a newcomer to the group: Anne. In addition, today our biggest decision was to decide on which topic we all wanted to put into practice. We came to the conclusion that the Tagged Object Finder would be the better choice, as none of us have had any experience using the Java Sound API. We also used the phases of the Miniature Unified Process and the schedule from the subject guide to map out and plan the MUP over the upcoming weeks, and decide when things needed to be completed by, and which sections of the process would need the most time allocated to it. We also decided to meet every Thursday inside the tutorial, and also after the tutorial. We all discussed with each other about our programming experience and background, and soon found that Shane was probably the best programmer of the group, as he had recently completed Embedded Systems with good marks. David and I had last programmed in Java way back in spring of 2002, for OOP, so we certainly needed to refresh our memories on Java. I was lucky enough to know David from previous courses and subjects, and it made the group transition an easier process for me. We also exchanged phone numbers and emails, so we could keep in regular contact with the group, and since we all spend a solid amount of time online each day, we figured email would be our primary means of contact each other.
Things to have completed by next meeting:
Over the next two weeks, we have decided to refresh ourselves on JAVA, as many of us have now forgotten the correct JAVA syntax. Also we are to research RFID TAGS to get a better understanding on how they operate in preparation for the upcoming assignment.
23rd August 2008
Scheduled Activities:
Today in the tutorial we discussed the tutorial work which needed to be completed. We outlined the key system elements, and deduced that they would be: Tagged Object User, Server, Tag Reader, Tagged Objects and User Interface. Secondly, as a group we outlined the Key Stakeholders involved with the device and managed to discover engineers, developers, customers and marketers. We also constructed some key development risks, such as, inadequacy of resources, schedule slips, false feature rich etc. Implementation risks were also discussed such as privacy issues and system maintenance. Furthermore, the CRC modeling task within the tutorial, helped us decide on the different classes we would need in order to implement the Tagged Object Finder. We decided on only 4 classes during this tutorial, such as: GUI, Tagged Reader, Tag and Database. We were quite confident that these were the only classes we will need at this stage. Moreover, we also concluded that the Database class would be the crux of the program, which takes care of all the number crunching and the edit/store/delete methods. We also deduced that Tagged Reader class would be a simple class, where we can simply set the coordinates of the tagged reader, as well as update the coordinates of the tagged reader within that class. That would allow us to model and calculate the distance between the tag reader and the tag itself whilst the tag reader could be moved by simply updating the coordinates. The GUI class was simply to contain the code that constructs the GUI using components such as JPanels, JLists etc, however none of the members have worked with GUI design before, so it will take a lot of research on Java GUI’s to create one. For the Tag class, our plans are to have the methods to set and get the tag id, as well as set and get the x and y coordinates. I felt this tutorial was worthwhile and that we were making steady progress with our planning.
Things to have completed by next meeting:
We still have not yet come up to speed with java, and at present, when we have time we are to try and familiarize ourselves with java. However, for the mean time, our main goals are to complete the initial phases of the MUP, so we can be ready for milestone one.
30th August 2008
Scheduled Activities:
Today we met and it was the first time we decided to allocate tasks to each group member, and to have them completed by the following week. We began to work on an initial collaboration diagram in class, whilst using the lecture notes as a guide on how to do these. David and I have completed Software Engineering as a subject already, so we had some familiarities with drawing up UML diagrams. We managed to finish the initial collaboration diagram by the end of class, which took us longer than expected as there was a lot of thinking involved on how the different components of the program were to interact with each other. With only this being done in the tutorial we allocated responsibilities to each member. We also came up with some scenarios of usage for the Tagged Object Finder. Shane concluded that the device could be used by couriers in order to find particular parcels in their truck, and that a tag could be placed on particular boxes. Once the courier has arrived at his destination he can simply use the hand held object finder to find all tags within the back of his truck, and use the description section in the database to decide on what needs to be done with that particular parcel. Furthermore, I came up with the idea of a bird aviary, where injured birds could be tagged within the aviary, and the device allows caretakers easily see which birds are the injured ones so they can be monitored very closely. We then allocated each other tasks to work on for next week, and the allocations are as follows: Lloyd: Sequence Diagram, Class Diagram. Shane: GUI Design, User Interface Sketches, RFID Research. Anne: CRC Cards. David: Wiki Creation, Scenarios, Stakeholders.
Things to have completed by next meeting:
The allocated tasks would need to be completed by next week, and if not, we decided we would show what we have worked on, as we needed to get some information up on the WIKI page.
6th September 2008
Scheduled Activities:
Today Shane, Anne and I met in class, and then in the Civil Labs afterwards to go through the GUI exercise from the lab session, as David was away ill today. We worked on the Self-Study Module: Graphical User Interface, and developed the required changes to GUI such as adding the menu bar, and dialog boxes. We worked on this in a group, as I still had a lot of refreshing to do with Java, and Shane was easily the most confident programmer of the group. He offered valuable insight to me, and explained and helped clarify things I did not quite understand. It was a valuable exercise in preparing us for what needed to be worked on for the GUI. After the lab session, we stayed in the lab, and allocated presentation slides to each member. Each member was allocated two slides and the allocations decided we as follows: Me: Class and sequence diagram slides David: Analysis of problem domain and derivation of scope and functionality of software system, as well as a written explanation of design assumptions and decisions. Anne: Set of CRC cards describing the purpose of the classes, its responsibilities and collaborations. Shane: Set of usage scenarios and use cases and collating the slides. Team: User interface design sketches.
Things to have completed by next meeting:
By next week, we hoped to have finished our slides, and we will be meeting again on Tuesday to work on the design of the GUI as a team.
13th September 2008
Scheduled Activities:
Today Shane, Anne and I met in class, and then in the Civil Labs afterwards to go through the GUI exercise from the lab session, as David was away ill today. We worked on the Self-Study Module: Graphical User Interface, and developed the required changes to GUI such as adding the menu bar, and dialog boxes. We worked on this in a group, as I still had a lot of refreshing to do with Java, and Shane was easily the most confident programmer of the group. He offered valuable insight to me, and explained and helped clarify things I did not quite understand. It was a valuable exercise in preparing us for what needed to be worked on for the GUI. After the lab session, we stayed in the lab, and allocated presentation slides to each member. Each member was allocated two slides and the allocations decided we as follows: Me: Class and sequence diagram slides David: Analysis of problem domain and derivation of scope and functionality of software system, as well as a written explanation of design assumptions and decisions. Anne: Set of CRC cards describing the purpose of the classes, its responsibilities and collaborations. Shane: Set of usage scenarios and use cases and collating the slides. Team: User interface design sketches.
Things to have completed by next meeting:
By next week, we hoped to have finished our slides, and we will be meeting again on Tuesday to work on the design of the GUI as a team.
18th September 2008
Scheduled Activities:
Today we met at 4pm, as David and myself only finished our Formal Software Engineering class at 4pm. We headed to the civil labs where we discussed the GUI design. We came up with a few ideas, and we decided it would be Shane’s task to take the sketched ideas of the GUI, and construct it using Adobe Photoshop as well as integrating it into the slides. We also reinforced what needed to be completed by milestone one and that all the slides needed to be sent to Shane by tomorrow no later than 9pm, so he could have enough time to collate them and put them together.
Things to have completed by next meeting:
Our presentation is on Thursday, and everyone is required to have completed their slides, and have them sent to Shane no later than 9pm tomorrow, so he has ample time to collate and put the slides together.
20th September 2008
Scheduled Activities:
Today is our presentation. I felt the presentation went quite well, as we received some good comments from Lian. However, we also received some constructive feedback where we were told that a use case diagram is not a usage scenario, and that we should have really written out a usage scenario for the milestone presentation. We were also told to be more specific about our prototype.
Things to have completed by next meeting:
VC week is next week, and we have made no plans to meet during this time. We will pick up where we left off, when we all come back from the break.
18th October 2008
Scheduled Activities:
Unfortunately we haven’t had a meeting in a while, as Shane has been away and I have been away the last 2 weeks sick. Today I met David and Shane outside the OOD classroom after my Formal Software Engineering tutorial, and we headed to the cafeteria to discuss the coding for the assignment. Anne was unable to attend as she had a group meeting for another subject. We decided that Shane would work on the GUI class, while David and I worked on the TAG, TAG Reader, and Database classes. Anne was allocated the Wiki, Tester Classes and Use Cases. After this allocation, we headed to the printing/binding room on level 3 building 1, and used one of the computers to view the assignment sheet to see that we had all bases covered. We are still unsure that we allocated the classes correctly and there was some confusion on whether we should change the allocation or not. We decided to keep the allocation the same.
Things to have completed by next meeting:
The next time we meet as a group, we will show our progress on the classes we were designated.
19th October 2008
Scheduled Activities:
Today I met David at Blacktown library to begin coding on the classes. David and I have been using my laptop to begin the java coding on the Database, Tag Reader, and TAG classes. A friend mine: Srini, joined us at the library today, where he offered a helping hand with the java coding, as there were parts that David and I were unable to get working. We completed roughly about 30-40% of the coding that we were required to do, and I am very happy with the results. I was able to get the array functioning as expected, and storing up to 100 tag id’s and information relating to these tags within each array slot. This was the crux of the database class, as it provided the storage locations for all the tag id’s and information on the tags that the user could input into the system. Other classes would have access to the array by creating an object, or an instance of the database class, and then calling the required method. Overall today was very productive, and I feel that I certainly got a lot of work done.
Things to have completed by next meeting:
David and I decided that on Monday we will meet at university, approximately around lunch time, and work on our classes until Engineering Enterprise begins at 6pm.
22nd October 2008
Scheduled Activities:
Today I arrived at university at 12pm and decided to continue working on the classes for the assignment using my laptop on level 5 of building 2. I soon ran into a problem, and it seemed I was doing something wrong when writing the function to calculate the distance between the tag reader and the tag itself. I was using the Pythagoras Therom formula in order to achieve the distance, however the code was refusing to work. David joined me at 1pm today, and we decided to see if we could figure out what was wrong. After doing some research on the internet we decided to try some other approaches which we had found using google and none of those seemed to work either. We were on the right track originally, and ended up figuring out what the issue was through a little help from one of my friends: Srini. What started out as an unproductive day, ended up being a productive day, and the coding of the Database, TAG, and Tag Reader has been completed and was functioning as expected.
Things to have completed by next meeting:
Our next meeting is scheduled for tomorrow, where David and I will be meeting Shane to merge our codes together, and hopefully get a working GUI/program.
23rd October 2008
Scheduled Activities:
Today I met David on level 6 building 2 outside the mega labs. Our coding is complete and we are ready to integrate it with Shane’s code in order to get the program working successfully. However, Shane called at about 1:30pm and said he is unable to make it to the meeting as he is still working on his part. We decided to go home and meet again on Thursday.
Things to have completed by next meeting:
By Thursday we need to have our classes complete so the code can be merged together.
25th October 2008
Scheduled Activities:
Today we met at the Civil Engineering labs however; it was crowded so we decided to go to the engineering labs on level 23 and work there. Everyone was present today. Shane revealed the GUI, and I must say I thought he did a fantastic job, as it looked very nice and neat, and exactly like our initial design from milestone one. David and I presented our code to the team, and we merged it with Shane’s. However, we had several errors/exceptions occur, such as null pointer exceptions, which we needed to fix. We were unable to fix all the errors today, but some errors were solved. We also showed Anne how the program functioned so she has a good understanding of the program before writing the tester classes and use cases. We concluded by reminding Anne that the tester classes needed to be completed and called it a day.
Things to have completed by next meeting:
We plan to meet at university on Sunday, in order to see if we can fix the errors that were occurring during this session.
28th October 2008
Scheduled Activities:
Today, David Shane and I met at university in the mega lab. We fixed some of the code, and removed the errors, and allocated programming tasks which needed to be implemented in order to complete the merging of the code. Shane will be working on fixing and improving the code, whilst David’s task is to work on the “list view” on our GUI, which allows the user to toggle between the map and list of tags. My task is to create a boolean array, which flags the database on whether something has been stored or not. By creating this array, David knows when something has been stored in the database, and can display it easily using JTables on the list view. After these allocations, we all decided to go home.
Things to have completed by next meeting:
Our next full group meeting was to be on the morning the code was due, 1st of November.
31st October 2008
Scheduled Activities:
Today after university, I decided to head home and work on the coding from 9pm-midnight. I managed to get the list view working, which David was having issues with, and also create new JPanels where the user could edit the tag data stored in the list view. This was working successfully by midnight, and decided to call it a day. I was very pleased with how the program turned out, and it certainly matched our prototype from milestone one almost identically.
Things to have completed by next meeting:
Tomorrow the code is due for marking and we have to demonstrate the program. We plan to meet at university at 10am, to tweak and fix any final issues we have been having.
1st November 2008
Scheduled Activities:
Today the code is due for marking and the demonstration of the program is scheduled for 2pm. I arrived at university today at 10am, and waited for the others to arrive. We began fixing minor issues with our program, and eventually got it working almost perfectly. There still appeared to be initial issues with the list view, in that it was not displaying the tag id, but rather displaying the array index instead. With additional tweaking of the code, we managed to get this completed as well and the list view was successfully displaying the tag ids of the stored tags. However, we soon ran into another issue. We found that since we were using a random number generator to assign the coordinates to the tags, the list view was displaying all tags that were generated by the random number generator, instead of only the tags that have been stored by the user. With some modification of the code, we managed to get this finished by 1:30pm. We also worked on the use cases until it hit 2pm, and then printed them out to head down to the civil labs for our demonstration. However, the tester classes had not been complete yet and it was time to demonstrate. Unfortunately we ran out of time with the tester classes, and had to demonstrate without them. The demonstration went well, and we were able to show that our program did everything that was required of it. I am pleased with how the program turned out, however I am disappointed that we did not plan our time more effectively to get the tester classes complete and that this task was left to the last minute.
Things to have completed by next meeting:
For the remainder of this week, we all plan to work on the WIKI, and to ensure that everything is up to date.
