96
Task Manager/Planner Android Application Team A CSC 380 – Fall 2008

Task Manager/Planner Android Applicationcs.oswego.edu/.../Android/380_Android_Final_Report.pdf · Software Requirements Specification for Page 1 1.Introduction 1.1Purpose

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Task Manager/Planner Android Application

Team A

CSC 380 – Fall 2008

Table Of Contents:

Requirements Document Pages 3 – 9w/ Use Cases Included

UML Diagram Page 10Coding Standards Page 11Build-and-Test Plans Page 12Reporting: Pages 13 - 95

Team Pages 13 – 26

Kendall Pages 27 – 44 -Individual Reports Pages 27 - 40 -Metric Sheets Pages 41 – 42 -Individual Reflection Pages 43 – 44

Chintan Pages 45 - 61 -Individual Reports Pages 45 - 58 -Metric Sheets Pages 59 - 60 -Individual Reflection Page 61

Mike Page 62 – 78 -Individual Reports Pages 62 – 75 -Metric Sheets Pages 76 – 77 -Individual Reflection Page 78

Gerrit Pages 79 - 95 -Individual Reports Pages 79 - 92 -Metric Sheets Pages 93 – 94 -Individual Reflection Page 95

Technical Postmortem Pages 96 - 98

Software RequirementsSpecificationforAndroid Task Manager/PlannerVersion 1.0 approvedPrepared by Kendall Moore and team membersTeam A09/22/2008Copyright © 2002 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.NOTE: This template is shareware downloaded from www.processimpact.com. All sharewarepayments are donated to the Norm Kerth Benefit Fund to help a consultant who is disabledwith a brain injury. Please visit http://www.processimpact.com/norm_kerth.html to make ashareware payment ($10 suggested). Thank you!eLearning versions of several popular Process Impact training seminars are available atwww.processimpact.com/elearning.shtml, including “In Search of ExcellentRequirements,” “Exploring User Requirements with Use Cases,” “Writing High­QualityRequirements,” “Software Inspections and Peer Reviews,” and “Project Management BestPractices”. Single­user and corporate­wide site licenses are both available.Software Requirements Specification for <Project> Page iiTable of Contents1. Introduction...............................................................................................................................11.1 Purpose............................................................................................................................................... 11.2 Document Conventions...................................................................................................................... 11.3 Intended Audience and Reading Suggestions..................................................................................... 11.4 Project Scope...................................................................................................................................... 1

1.5 References.......................................................................................................................................... 12. Overall Description....................................................................................................................12.1 Product Perspective............................................................................................................................ 12.2 Product Features................................................................................................................................. 12.3 User Classes and Characteristics....................................................................................................... 22.4 Operating Environment..................................................................................................................... 22.5 Design and Implementation Constraints............................................................................................ 22.6 User Documentation......................................................................................................................... 22.7 Assumptions and Dependencies........................................................................................................ 23. System Features........................................................................................................................ 23.1 Add/Remove Tasks........................................................................................................................... 23.2 System Feature 2 (and so on)............................................................................................................. 34. External Interface Requirements............................................................................................. 34.1 User Interfaces.................................................................................................................................. 34.2 Hardware Interfaces.......................................................................................................................... 34.3 Software Interfaces........................................................................................................................... 34.4 Communications Interfaces................................................................................................................ 45. Other Nonfunctional

Requirements.........................................................................................45.1 Performance Requirements................................................................................................................. 45.2 Safety Requirements......................................................................................................................... 45.3 Security Requirements...................................................................................................................... 45.4 Software Quality Attributes............................................................................................................... 46. Other Requirements.................................................................................................................. 4Revision HistoryName Date Reason For Changes VersionDraft #2 09/22/08 Final Draft 1.0Software Requirements Specification for <Project> Page 11.Introduction1.1PurposeThe main objective is to create a task manager/planner that is easy to use while still offering a veryfeature­rich experience.1.2Document ConventionsThe priorities of the various parts of our project will be explicitly stated and therefore no specialtyping will be used to denote this.1.3Intended Audience and Reading SuggestionsThis document is intended for developers as well as general users of Android phones.1.4Project ScopeThe product being developed is a task manager/planner for the Android platform. It will includecapabilities to add/remove tasks, map locations, and get directions via GPS to the user'sdestination. The application will also be integrated with the calendar feature.1.5ReferencesGoogle Android Homepage: http:/ /code.google.com/android/Google Android SDK: http:/ /code.google.com/android/download.htmlSimple Notepad Tutorial: http:/ /code.google.com/android/intro/tutorial.html2.Overall Description2.1Product Perspective

This product is a new, self­contained product.2.2Product FeaturesTo­do list with capabilities to add map locations through Google Maps and/or GPS.Option of specific times, but not necessarily.Regular scheduling ­ Events that repeat on a weekly basis.Reminder pop­ups ­ ringtones on phone can be used for customizability.Software Requirements Specification for <Project> Page 2Remote access  ­  through Google Calendar or some other way.Adding through events from something like Facebook? (wishlist)Voice, either prerecorded or through text to speech. (wishlist)Capability to record messages as reminders on the calendar.2.3 User Classes and CharacteristicsThe typical user of an Android phone is the most favored user.2.4 Operating EnvironmentThe application will be running on top of the Android platform.2.5 Design and Implementation ConstraintsWe expect to run into time constraints, hardware constraints, and memory constraints. Amongthese memory constraints we expect to see limited buffer size and limited virtual memory.2.6 User DocumentationFor the sake of any developers working on this project after us, all code will be documented in theform of javadocs and comment markers. Also, for the users of this application, there will be amanual, or help option, which will include the functionalities of the planner that the user has accessto and also some descriptions of how they can be used to help their daily life.2.7 Assumptions and DependenciesThe only known dependencies that will be used for this would be anything that the Android platformitself is dependent on. As far as third party utilities or tools, we have no plans of incorporating theminto this project.3.System FeaturesSome general use cases:1) To be able to select a date from a calendar and add notes or plans for that date with theoption of entering the time at which this event will occur. There will be periodic times when a

reminder will tell the user that they have something planned for that time.2) If the users plan involves a destination for some sort of outting, there will be an option to getgoogle map directions to the location and also GPS walk­throughs on how to get there.3) User should be able to select from the various sounds incorporated on the phone forreminders and pop­ups.4) We would also like to make it possible for the user to record their own voice and use that asthe reminder for their plan.Software Requirements Specification for <Project> Page 33.1 Add/Remove Tasks3.1.1 Description and PriorityThe application will allow the user to add or remove tasks and will interface with thecalendar feature. This is of the highest priority.3.1.2 Stimulus/Response SequencesThe user will first select the intended calendar date which they would like to schedulesomething into the planner. Then, some sort of user interface (perhaps anaesthetically pleasing notedpad) will pop­up where the user can input what their planor task is. In this option, there will also be a place to add an address or location iftheir task involves a specific destination. Following this, they should be able to selectthe reminder they would like to receive for this and also how frequently they wouldlike reminders to pop­up informing them of the event.3.1.3 Functional RequirementsWhen the user submits this data, it will be stored into a database on the phone usingSQLite. Then, the program will be running in the background as to not takeprecedence over other procedures until it  is time for a reminder to pop­up. When thisoccurs, a pop­up will appear on the screen informing the user that it  is time for themto do whatever they had planned. If the user had inputted and address or locationthere will also be options to “Google Map It' or “Get Directions with GPS”  to make

finding their location easy.<Each requirement should be uniquely identified with a sequence number or ameaningful tag of some kind.>REQ­1: Use SQLite.REQ­2: Have GUI pop­ups for scheduling events.REQ­3: Having GUI pop­ups for the various events.REQ­4: Integrate with the map and GPS features as necessary.3.2 System Feature 2 (and so on)4.External Interface Requirements4.1 User InterfacesThe main user interface will be the Android calendar with the ability to create and remove tasks. Wealso expect the application to integrate with the Android maps and GPS interfaces.4.2 Hardware InterfacesThe hardware interfaces used in this application will be the ones found in the Android platformwhich have been defined for us in the Android spec.Software Requirements Specification for <Project> Page 44.3 Software InterfacesSoftware interfaces will exist between the calendar feature our planner so that they can be usedtogether by the user.4.4 Communications InterfacesThere will need to be use between any interfaces that exist for the maps feature and also for theGPS feature. Also, there will be need to use any voice interfaces given in order to have the userrecord their own notifications for their planned events.5.Other Nonfunctional Requirements5.1Performance RequirementsPerformance requirements with coincide with the Android platform limitations.5.2 Safety RequirementsHopefully none, although we here phones can be quite the hazard while driving.5.3 Security RequirementsIt is strongly encouraged that the user does not include and personal information in the plannersuch as SSN, email addresses, or banking info as this would not be protected in the event of thephone being stolen.5.4 Software Quality Attributes

At the very least, we hope that this products ease of use will be its number one feature. A productthat is immensely complicated and time consuming to learn does not suit the daily needs of theaverage user.6.Other Requirements<Define any other requirements not covered elsewhere in the SRS. This might include databaserequirements,  internationalization requirements,  legal requirements, reuse objectives for the project,and so on. Add any new sections that are pertinent to the project.>Appendix A: Glossary<Define all the terms necessary to properly interpret the SRS, including acronyms andabbreviations. You may wish to build a separate glossary that spans multiple projects or the entireorganization, and just include terms specific to a single project in each SRS.>Software Requirements Specification for <Project> Page 5Appendix B: Analysis ModelsA UML diagram is in the making right now. That will be added upon completion.Appendix C: Issues ListIssues that may need to be resolved include allowing the user to record their own notifications.Also, we must decide whether or not the user will be able to change the time of the phone itself. Ifso, we must incorporate that into our planner since specific times will be entered by the user.

Coding Standards:

http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html

Team Build­and­Test PlanTeam Leader: Kendall Moore  ID Number: 802279762Team A

In order of highest to lowest precedence, we decided that the GUI should be the most important aspect of the project. This is because the application should be aesthetically pleasing to the users of the phone and also it should be very simple to use. This is impossible without a very nice, flowing graphical front end for the users to look at. Next, the database will be a large part of the project as well. This isbecause we are going to be able to store information about the people's events and plans without using up all of the space on the phone. On the same level of importance, the logic connecting the front end and the database will be a large effort. Without this logic, the application would look nice, but would be functionally useless.

As far as individual responsibilities go, I think we should all try and dedicate ourselves to getting approximately 50 lines of code done, and if that doesn't seem to be enough we can try and increase that number as necessary. This will give us enough information to see how functional our application really is and also should give us enough to talk about and discuss each week. Also, each person who has a role such as documentation will complete that accordingly. This would include small details such as adequate comments in the code, and all of the other finite details mentioned in our coding standards.

Lastly, we will try and continue meeting on a weekly basis, once a week. If we start to get behind though, we can always increase that to maybe twice or three times a week or increase the amount of time we meet for per week. As of now, everything seems to be on track so hopefully we can continue to stay on schedule.

Team Weekly Reports:

Week 1

Week 2

Team Weekly Report and PlanCSC 380Team Leader: Kendall Moore Student Number: 802279762Date: September 15, 2008

ReportDuring the course of this week, our team met on two separate occasions. The first was to decide on what our project was actually going to be. During this meeting, we decided upon an in depth and highly functional planner/scheduler which can be read about more in our requirements document. In the second meeting, we created a requirements document which we believe is as detailed as we can make it for thetime being since we haven't started coding the project or discussed it after out first team meeting.

PlanIn our next meeting, we plan to discuss in more depth the requirements that we came up with. Also, we will need to look at our requirements document and update it as we discuss in further detail our project.

Week 3

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: 9/22/08

ReportThis week, our team met all together on one occasion to discuss our requirements document and some use cases to include. Then we met separately on multiple occasions to try and figure out specific coding roles per person and also to try and work individual needs into our meeting times and requirements for the project.

PlanFor this upcoming week, we would like to make sure our requirements document is finalized and ready to be put into use for us to begin coding as soon as possible. Also, we will meet at least one time to work on the UML diagram needed for our project.

Week 4

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: 9/29/08

ReportThis week, our team worked on a rough design of what out application will look like from the user's point of view. Also, we got together and worked on the rough draft of our UML diagram which we encountered many issues for.

PlanThis week we will meet again on Wednesday evening where we will try to finalize a bit of our UML design. Also, we decided to make a few mock GUIs for our project so we know what we will be working with. This will give us the chance to say that we like how things are looking or change the things that we would like to look differently.

Week 5

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: 10/6/08

ReportThis week, our team met on Wednesday and worked on the UML diagram. After a bit of time, Gerrit and I were able to finally draw dependencies between classes the way that we wanted to and also include them in packages. The diagram will have to be reviewed and finalized by all team members because not everyone made it to the meeting on Wednesday.

PlanThis week, at our next team meeting I will go over the design of the project with everyone and get some feedback from all of the team members. Also, I will have everyone present whatever they have gotten so far with their GUIs so we can decide if we like how everything looks so far. If not, we can change accordingly and possibly decide on some new features for the project.

Week 6

Student Name: Kendall Moore             Team Leader ID Number: 802279762

Week Six Team Report:

Due to our extended weekend, our team never ended up meeting over the past week. This should not be a major setback, however, because we have not started coding yet and we only needed to come up with coding standards to use. I have picked out some but if anyone on the team has a better suggestion we cab certainly switch. For the upcoming week, if necessary, we will meet on two separate occasions to make up for any lost time of information. Otherwise we will just have our normal meeting time and discuss specific roles for each person so that we can all get working on writing some code for our project.

Week 7

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: September 15, 2008

ReportThis week, our team met to discuss the build and test plan. We came up with an outline for how we think we want things to be laid out in order of importance. Also, we decided we were all going to start working on various aspects of the GUI for our project since that will be the biggest part. Chintan, a group member for team A, found an Android GUI builder that we can use and we will try to implement that intoour design if at all possible.

PlanThis week, we will plan to meet on Wednesday after having some time to code on our own and then try to all code together to see how we work as a team. This should show each of us how our individual skills can come into play in order for us to best work as a team.

Week 8

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: October 27, 2008

ReportThis week, our team met on two separate occasions to discuss where we stand on our build and also came up with some individual coding roles. We decided that Chintan and myself would start working on the Calendar GUI for the first bit, while Mike and Gerrit worked on the pop-up GUI. Of these tasks, we finished most of the Calendar without any date logic tied in and a little bit of the pop-up GUI as well.Also, I met with professor Early today, 10/27, to discuss a more formalized build-and-test plan for the remaining 6 weeks of the semester.

PlanFor the upcoming week, we assigned more individual roles to try and finish as much GUI work as possible. Chintan will continue working on the calendar GUI to try and wrap up the look for that. Gerrit volunteered to start working on the date logic so that the calendar is functional before we start doing anything with the database. Lastly, Mike and I will be wrapping up the pop-up menus (date pop-up and notification pop-up) so that we can be caught up and on schedule with our build test plan. We plan to meet this week on Wednesday after the trip to PayChex in Rochester.

Week 9

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: 11/03/2008

ReportThis week, our team gave out specific roles to each user for demo number 3 coming up on Monday. Chintan will be working on database work while Mike and I work on a bit more GUI as needed. Lastly, Gerrit will be writing the calendar logic for the calendar that we currently have set up. Also, our team decided to work on coding a bit more than the past two weeks because we are slightly behind where we should be, but not so far that we can't recover quickly.

PlanFor the upcoming week, we will each be working on our separate portions of the code and submitting it regularly to our google code page. Also, we will be meeting up and showing our code to each other so we can start integrating everything that needs to be integrated.

Week 10

Week 11

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: November 17, 2008

ReportThis week, our team was each given individual tasks to work on for today's demo. Mike and myself were finishing up the GUI logic for all of the GUI classes that we have created except for the calendar and testing to see that the correct action was taken when the appropriate buttons were created. Chintan worked on getting notification reminders to pop-up but this proved to be a challenging task and moretime will be needed for this to be fully accomplished. Lastly, Gerrit worked on date logic for our calendar but has not yet finished this. This morning before class we worked a little bit together to try and get some of our code integrated for the demo.

PlanFor this upcoming week, we plan to finish any tasks that weren't finished for today. Also, integration with the database and events needs to be accomplished so that we can have everything aside from google maps and google gps done by Thanksgiving break. Individual roles for this upcoming week include Gerrit wrapping up date logic. Then, Chintan and myself will be storing events that come from the event GUIs and storing them in the databse. Lastly, Mike will be using Chintan's database to pull specific events and have them call the notification reminder. This doesn't necessarily need to be running on the correct timer yet because that hasn't been implemented but it should still be able to pop-up a notification if called manually. Everyone should upload code to code page by Sunday evening so that there is enough time to test thoroughly and prepare a demo for Monday's class time.

Week 12

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: November 24, 2008Report

This week, our team was able to get the event pop ups to be functional with the database. We are able to store events into the database and then also pull them from the database and add them dynamically to the list view which shows all engagements for that day. The GUIs that we designed were also finished and are functional, except for the notification popup which is not yet working with the database. Also, Mike managed to get the intro Map functionality working. We have one hard-coded map location loaded onto the phone.

PlanThis upcoming week's plan is to finalize the timer interface to actually complete events at the appropriate times, and also popup the notification reminder in advance to the event taking place. Also, Mike has the intention of finishing the google maps functionality so that we can demo that the Monday after returningfrom Thanksgiving break.

Week 13

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: December 1, 2008

ReportThis week was our Thanksgiving break and our team only met Monday right after class ended. We each came up with some separate things that we thought needed to be done for Today's demo which included wrap-up on the GUI – database logic, more on the google maps work, date logic, and an all around integration of all of the code bases for the demo. Of these things date logic was not finished and there isstill a bit more wrap-up that needs to be done in order to have one stable project base.

PlanThis upcoming is our least week of coding before our final demo on Monday is due. In order to finish, we have to complete the date logic for the calendar, wrap-up on google maps, GPS work, a timer interface, and one final integration of everyone's code into a project that can be submitted. Chintan and myself will be working on the timer interface, Mike will be working on the maps and GPS part, and Gerrit should finish the date logic in order for this to all happen. Also, we have to make sure that all of our documentation is completed along with other wrap-up tasks before the final demo.

Week 14

Team Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: December 8, 2008

ReportThis week was our last week to wrap up the project before Monday's final class demo. Personally, I worked on helping Chintan with concurrency issues, finishing the two event GUIs so that the users couldn't enter faulty data, attempting to help Gerrit with date logic but was unable to get work out of him, and integrating all the code into one code base. Also, I made it my aim to setup the demo before class to make try and have the demo be successful and show all of the appropriate features to the class on Monday. Mike worked on the google map feature for the entire project which he got working with the database appropriately and also with the buttons on each of the GUIs that required this. Gerrit at the very last second sent me a very small amount of code hinting at date logic but this was not able to be integrated into our project given the time constraints.

PlanThis upcoming week what needs to be done is the final report for the project. This will be done as soon as I receive all of the needed pieces from my group members. Also, final wrap-ups still need to be done for the project to hand in to Dr. Early during the finals week next week. Our team plans to meet again on Friday to make sure that everything is done according to the project spec and that we are satisfied with what is done so far.

Kendall Moore's Individual Reports

Week 1

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: 9/8/2008

ReportIn this section, describe your individual accomplishments in the previous week.

Established a weekly meeting date for our team to get together and work on our project. Downloaded Eclipse Ganymede and set up the Android plug-in to start working on the project. Created a mailing list to inform group members of changes to meetings or any other announcements.

PlanIn this section, list your individual objectives for the coming week.

Attend a group meeting with my teammates to discuss potential project ideas and also to make sure that all of our environment utilities are ready to start the design process for our project.

Week 2

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: September 15, 2008

ReportThis week, I met with my group members on two occasions, one of which was to work on project ideas and then again to actually put together a requirements document. Also, I played around a bit with the Android SDK in eclipse so that I am familiar with as much as possible when actual coding begins.

PlanMy personal goals for this upcoming week are to continue with the process of becoming familiar with the Android features. Also, I plan to prepare some information to discuss at our team meeting.

Week 3

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: 9/22/08

ReportThis week, I met with separate members of my team to discuss some of the roles we would be playing. For example, Chinatn is very interested in doing the database work with SQLite since he has the most database experience on our team. As far as the GUI is concerned, that will be a largely joint effort on part of each member because that is the largest part of the project. Also, this week, I started playing around on Wolf and just today made sure Ganymede would launch. Also, I compiled an email list for our team.

PlanThis upcoming week I intend to meet with my group to discuss and compose our first go at a UML diagram. Also, I will be running as many examples on Wolf to make sure that the emulator and plug-in are working correctly. This is very important since I hope to do most of my coding here on Wolf and not at my own personal computer.

Week 4

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: 9/29/08

ReportThis week, I worked on the UML diagram using netbeans but was unable to fully complete the diagram. Also, I worked on a little bit of a mock GUI for our planner that I will show my team members on Wednesday during our meeting.

PlanThis upcoming week will consist of more mock up GUI work and also a lot more work on the UML diagram.

Week 5

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: 10/6/08

ReportThis week, I personally worked on our UML diagram to try and craft our design for the project. Also, I started my mock up GUI for the project for what I pictured our project to look like. The UML diagram took up a few hours of work and is what I spent most of my time doing.

PlanThis upcoming week, I will show my mock up GUI to my teammates on Wednesday at our group meeting. Also, I will go over the updated UML diagram with them so they can see what my ideas have been for the project.

Week 6

Student Name: Kendall Moore                             ID Number: 802279276

Week 6 Individual Report:

This week I helped to decide on a coding standard that our team could use.Also, Chintan, a fellow group member of mine brought to my attention thatgoogle calendar isn't integrated into the Android platfrom. Due to thisminor setback, I will think of some possibilities that we could use in placeof that. Also, I finished setting up the Android platform on my PC so that Icould do work on the project from either my room or from school. For theupcoming week, I will start writing code for the first time to help get ourproject under way. Personally, I would like to start working on some databaselogic as a way to pull information from the database that Chintan has set up.

Week 7

Individual Weekly Report and PlanCSC 380

Student Name: Kendall Moore Student Number: 802279762Date: October 20, 2008

ReportThis week, I looked into the GUI builder that Chintan found which is called DroidDraw. It seems to be a very cool and fairly simple tool so I am hoping I can use that to do some of my GUI work. Also, I looked through our coding standards to make sure that everything there seemed to be logical and would function well with our design plan.

PlanFor the upcoming week, I plan on trying to make a very basic calendar GUI to show to the team to see if they approve of what I have worked on. I anticipate this taking at least the amount of time until our next meeting.

Week 8

Individual Weekly Report and PlanCSC 380

Name: Kendall Moore Student Number: 802279762Date: October 27, 2008

ReportDuring this week, I worked on a basic calendar GUI for about 2-3 hours. I was able to accomplish a basic calendar front-end which I tested using both DroidDraw (the Android GUI builder) and the regular Android plug-in for eclipse. I also met with my group members on a few occasions so that I could assign individual coding roles for everyone. Lastly, I met with Dr. Early to discuss the build-and-test plan and came up with a final copy of that.

PlanThis upcoming week, I will hold a group meeting for everyone after the PayChex trip in Rochester. Also, I will try and finish the pop-up GUIs with the help of Mike. Also, I will show the new build-and-test plans to everyone so that I can get everyone's input in order to make it finalized and submit it to ANGEL.

Week 9

Individual Weekly Report and PlanCSC 380

Group Member: Kendall Moore Student Number: 802279762Date: 11/03/2008

ReportThis week, I accomplished a pop-up GUI for our project, which Chintan will set up a database to start communicating with. Also, I have been trying to get my group members all together so we can have more discussions and time to work on coding together. This has been proving challenging to get everyone together. This week I managed to start working on the notification GUI as well, but very little progresshas been made on that so far. In total, I worked for around 3 or 4 hours on actual coding and a few hours on trying to get in contact with everyone in the group.

PlanThis upcoming week I will be working with Chintan on getting the pop-up GUI to communicate with the database where all of our information will be stored. Also, I will meet up with Mike and Gerrit and get all of the code that everyone has been working on integrated with each other.

Week 10

Week 11

Individual Weekly Report and PlanCSC 380

Student Name: Kendall Moore Student Number: 802279762Date: November 17, 2008

ReportThis week, I worked on the GUI logic for the existing event notification GUI and the new event notification GUI. This was accomplished and messages are echoed to the screen when the buttons are clicked along with the message that was put into each field. Also, I worked with Mike briefly to integrate his GUI logic with the main project and to help set up for our demo this morning.

PlanFor this upcoming week, I am going to work with Chintan's database to store events from the new event notification GUI. This should entail pulling each field separately from the GUI and querying the database with the correct information and storing it. Also, I plan to test everyone's code as they submit it to the google code page so that we can make sure things are working properly. Lastly. I will integrate what weworked on so that we can be prepared for Monday's class demo.

Week 12

Individual Weekly Report and PlanCSC 380

Student Name: Kendall Moore Student Number: 802279762Date: November 24, 2008

ReportThis week, I worked on finishing all of the GUI parts of my project and also getting the GUI information to store in the database and query the database when looking for existing events. Also, I worked on integrating everyone's contributions into one stable codebase.

PlanFor the week of Thanksgiving break, I plan to help Chintan work on the timer interface, help Gerrit with date logic, and help Mike with GPS and maps if the maps and GPS section proves to be a difficult task.

Week 13

Individual Weekly Report and PlanCSC 380

Student Name: Kendall Moore Student Number: 802279762Date: December 1, 2008

ReportThis week I only met with my group once before the break for the week. Over the break, I worked on finishing some GUI logic and also trying to integrate everyone's code into one project so that everything is a bit cleaner and refactored in such a way that makes sense. Also, I looked into some ideas to incorporate a timer interface into our application.

PlanFor the final week, I plan to work with Chintan on the timer interface which should just about wrap-up our application. Mike and Gerrit are working on their own respective tasks as well which I will then try and incorporate into the main project that I have set up. Also, I will make sure that all of the documentation is done correctly and that the code looks correct as according to our coding standards.This week is certainly going to be a busy week but I feel confident that our group can manage to finish in time.

Week 14

Individual Weekly Report and PlanCSC 380

Team Leader: Kendall Moore Student Number: 802279762Date: December 8, 2008

ReportThis week was our last week to wrap up the project before Monday's final class demo. Personally, I worked on helping Chintan with concurrency issues, finishing the two event GUIs so that the users couldn't enter faulty data, attempting to help Gerrit with date logic but was unable to get work out of him, and integrating all the code into one code base. Also, I made it my aim to setup the demo before class to make try and have the demo be successful and show all of the appropriate features to the class on Monday.

PlanThis upcoming week what needs to be done is the final report for the project. This will be done as soon as I receive all of the needed pieces from my group members. Also, final wrap-ups still need to be done for the project to hand in to Dr. Early during the finals week next week.

Kendall's Weekly Metric Reports

Week 1http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 2http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 3http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 4http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 5http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 6http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 7http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 8http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 9http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 10http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 11http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 12http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 13http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Week 14http://cs.oswego.edu/~kmoore3/csc380/Android/Kendall/Week1.metric.report.pdf

Kendall's Individual ReflectionKendall Moore 12/10/2008Individual Reflection for CSC 380 Android Project

As the group leader for this team, I feel as if there is a lot that I have learned about both myself as

a coder and a group leader/motivator. I will discuss what I have learned about my personal coding skills

first and then talk about how I have learned as a group leader and my skills as such.

First, I have definitely been able to improve my coding skills as an individual and a group

programmer. Mostly I got the experience to learn more about database programming this semester than I

have at any point in the past which I think will be a useful skill at some point. Also though, I realized

there is certainly a lot of work that I can do to improve how I work as part of a team to contribute to a

large project. For example, I now can see how unrealistic it is to think that everyone that I am on a team

with will think the way that I do or write code exactly the same way that I do. It is a fact that I will need

to be able to cope with other people's standards and preferences even if I don't personally agree with

them. Another important thing that I realized here for the first time was that giving people friendly input

and suggestions really goes a long way. This I feel worked both for me receiving advice and for giving

advice to my teammates. It is nice to be able to listen to what someone is telling me and use that advice to

learn something about programming and to see how other people approach problems differently than I do

rather than just assume whatever I am doing is correct and the best way to go about the problem. I would

say that this was singly the most important thing that I realized this semester with working in a group.

As far as being a team leader goes, I would say that this is where I learned the most overall about

how team projects work and function. Team leaders have a lot more on their shoulders than I initially

realized when I volunteered for the task. Just the job of motivating and encouraging the three other

people on my team was very time consuming and mentally draining because I felt that I easily got

frustrated when things weren't going the way I envisioned them in my mind. This I would say could have

been both a reflection on my personal abilities as a leader and also on the team functioning together. As a

leader for this project I would say that I learned different people are motivated by different factors, or

some people just not at all. Individual progress seems to vary widely across people, especially if they

have a lot of other things going on at the same time that might interfere with the project. What I think I

could probably have done differently in order to have made this project more successful would be to

mandate more meetings as a group so that everyone could work on stuff together, and that way I feel as if

I also could have kept an eye on every person in the group making sure to see that they were getting at

least something done to contribute to our weekly demos. Also, keeping together some sort of naming

conventions right from the start would have made for much less refactoring of code during the actual

coding process and would make integration of people's work much easier.

Overall, I would say that the project was mostly successful with a few minor flaws along the way.

That is nothing to worry about though as nothing I think ever goes perfectly, especially when we were all

learning as we went. I would, however say that I personally know of a lot of ways in which I can improve

as a programmer, a team contributor, and a team leader which I plan to work on in order to make myself

as good of a software engineer as possible.

Chintan's Individual Weekly Reports

Week 1

Individual Weekly Report and PlanCSC 380

Name: Chintan Modha Student Number: 802528907Date: 09/08/2008

ReportIn this section, describe your individual accomplishments in the previous week.

• Created project home page at Google codeLink: - http://code.google.com/p/csc380/• Wrote hello world, and other sample programs in eclipse.

PlanIn this section, list your individual objectives for the coming week.

• To decide a particular application as a group.• To gather sufficient resources for project requirements.• If time permits design an E-R diagram for the project (bonus).• Get familiar with SQl lite and other useful libraries.

Week 2

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___09/15/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Wrote some simple java programs on Android (use of basic data structures).W Created 1 Simple Database on SQL lite (Independent of Android platform).C Roughly designed , skeleton of the project.R Listed pros and cons (approximated) of the application.L Looked at the sample codes for SMS, Maps, GPS and Camera functions buit in android platform.

PlanIn this section, list your individual objectives for the coming week.

I Design some part of application in UMLD Explore more libraries and application frameworks of android like webkit and media frameworkm Main Goal is to look for l API like JDBC for sql lite.

Week 3

Individual Weekly Report and PlanCSC 380

Name: Chintan Modha Student Number: 802528907Date: 09/22/08

ReportIn this section, describe your individual accomplishments in the previous week.

● Designed tables,views, and functions for the database .● Wrote some GUI programs for android.● Looked at various sample codes for GUI.● Failed in designing , UML diagram for the project due to lack of functional requirements.● Wrote some DML queries in SQL lite.

PlanIn this section, list your individual objectives for the coming week.

● Decompose tables into BCNF or 3NF form.● Draw working E-R diagram from database.● Write some more GUI programs (also explore media API, google maps and gps functionality offered by android) .

Week 4

Individual Weekly Report and PlanCSC 380

Name: Chintan A. Modha Student Number: 802528907Date: 09/29/08

ReportIn this section, describe your individual accomplishments in the previous week.

• Finally created a fully fledged backend Database, which is capable for supporting application running on front-end GUI. (Database might be modified in future, in order to provide additional functionality to front front end GUI.)• Database was populated with 150 entries for testing.• Studied the codes related to Google maps and GPS functionality offered by android.(http://blogoscoped.com/archive/2007-11-19-n27.html).(http://davanum.wordpress.com/2007/11/15/working-with-google-androids

-maps-aka-search-forpizza/ ).

PlanIn this section, list your individual objectives for the coming week.

• Create the same Database in android using its shell. The Database created on sqlite was independent of android.• Write some fine programmes on android related to Google maps and GUI.• Bonus (create a GUI which can interact with database on android.)

Week 5

Individual Weekly Report and PlanCSC 380

Name: Chintan A. Modha Student Number: 802528907Date: 10/06/08

ReportIn this section, describe your individual accomplishments in the previous week.

• Created database in actual android shell (works only in linux not windows) and viewed it on emulator. (Database is not fully implemented)• Designed communication diagram for the project, has three packages

1) UI2) processor3) storage

• Wrote sample codes for Google maps and GPS, just the basic ones .• As emulator does not have a inbuilt google calender therefore looked at GData api for google calander that is used by developers.

PlanIn this section, list your individual objectives for the coming week.

• Create full fledge database in android.• Write some code to use google calender via GData api.• Find out how to emulators system time .

Week 6

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___10/13/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

● Examined the android documentation, that described different aspects of android application models.● Learned some basic XML to write application in andoird. wrote a simple GUIprogramme(calculator) using xml tags.● Found out how to manipulate emulator's time via adb shell date command.

PlanIn this section, list your individual objectives for the coming week.

I Try to write some more programmes using XML.T Look up at some more examples (like Notepad) which uses sqlite3 as back-end.e What to use java.util.calander api or google data api for front-end GUI.

Week 7

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: 802528907__________Date: ___10/20/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Studied java.util.calendar api and Google Data calendar api (which can be implemented via java client library).i Designed rough outline of first part of calendar GUI.

PlanIn this section, list your individual objectives for the coming week.

I To create calendar GUI , which will provide ground layer for the application.

Week 8

Individual Weekly Report and PlanCSC 380

Name: Chintan A. Modha Student Number: 802528907Date: 10/27/08

ReportIn this section, describe your individual accomplishments in the previous week.

● Created just basic calendar with widgets like buttons,spinner,text view.● Implemented absolute layout (root), linear_layout , table_layout,relative layout

PlanIn this section, list your individual objectives for the coming week.

• Create transparent or translucent buttons which will display date.• Implement date logic (I.e. dynamically changing text of buttons via spinner)• if possible try to implement some animation to it.

Week 9

Individual Weekly Report and PlanCSC 380

Name: Chintan Modha Student Number: 802528907Date: 11/03/08

ReportIn this section, describe your individual accomplishments in the previous week.

I Failed to implement transparent theme for calendar GUI. Especially for buttons and spinner widget.b Accomplishments were almost were none.

PlanIn this section, list your individual objectives for the coming week.

I Keep the GUI aside for a while and concentrate on back-endK Start working again on database .S Set the back-end ready for future interface with GUI and processor packages.

Week 10

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___11/10/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Created database via android's database and sqlitdatabase apiC Created and populated three tables with different sets of data.

PlanIn this section, list your individual objectives for the coming week.

I add more functionality to the database , try to create interface between GUI class and database.

Week 11

Individual Weekly Report and PlanCSC 380

Name: Chintan A. Modha Student Number: 802528907Date: 11/19/08

ReportIn this section, describe your individual accomplishments in the previous week.

I Worked on timer class that is going to implement event notification to the user .u Tries using AlarmManager to schedule different events but failed.

PlanIn this section, list your individual objectives for the coming week.

● Try to bundle most of the project, (at least GUI and DB ).

Week 12

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___11/24/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Created listview GUI which displays events and their respective timesC created context menu on top of GUI through which user can edit,delete or add new event

PlanIn this section, list your individual objectives for the coming week.

I Bind all GUI's and there functionality togetherB create a timer service class that will show notification .

Week 13

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___12/01/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Binded different GUI to the database.B Created timer interface(not fully completed ) that runs independent of the application, it notify users whenever an event is suppose to take place.

PlanIn this section, list your individual objectives for the coming week.

I Remove glitches from the timer interface (Glitches related to multi-threading ).t create a postpone GUI, that allows user to postpone a given eventc create a missed event GUI that will pop-up whenever user starts cell phone.

Week 14

Individual Weekly Report and PlanCSC 380

Name: ___Chintan Modha_____________ Student Number: ___802528907__________Date: ___12/09/08_________________

ReportIn this section, describe your individual accomplishments in the previous week.

I Implemented Timer Service for the project.I Modified the database added two extra tables. These two tables stores the temporary event which is processed by the service at run time. Other table is used to store events from the Reminder table to MissedEvents table.

PlanIn this section, list your individual objectives for the coming week.

I Bind up Everything and test for overall functionality.B If time permits implement missed events GUI and Postpone GUI.I Add Comments to code .

Chintan's Weekly Metric Reports

Week 1http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week1.metric.report.pdf

Week 2http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week2.metric.report.pdf

Week 3http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week3.metric.report.pdf

Week 4http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week4.metric.report.pdf

Week 5http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week5.metric.report.pdf

Week 6http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week6.metric.report.pdf

Week 7http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week7.metric.report.pdf

Week 8http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week8.metric.report.pdf

Week 9http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week9.metric.report.pdf

Week 10http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week10.metric.report.pdf

Week 11http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week11.metric.report.pdf

Week 12http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week12.metric.report.pdf

Week 13http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week13.metric.report.pdf

Week 14http://cs.oswego.edu/~kmoore3/csc380/Android/Chintan/Week14.metric.report.pdf

Chintan's Personal Reflection

Mike's Individual Weekly Reports

Week 1

Week 2

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 09/15/2008

ReportIn this section, describe your individual accomplishments in the previous week.

Again, another fairly slow week. Individually, I sort of talked our team into doing my initial application idea, a task manager/planner. From there, we all talked about some features we'd like to see implemented and really started to make the project our own. I also managed to find some time to sit down and watch many of the videos on the Android website, as well as read some of the information about the platform. I'll be honest, I've only skimmed tutorials so far, but I am anxious to begindabbling.

PlanIn this section, list your individual objectives for the coming week.

This week I'd like to add a bit more to our Requirements Document. When we looked over it as a group we concluded that, at the point we're at in the development of the app, a majority of the sections would either have to stay blank or be filled-in sparsely. I'd like to see a bit more material in there. Also, we'vedecided we'd like to use our wiki on Google Code to use for any sort of support documentation. Seeing as I have the Documentation role, I'd like to start populating the wiki with some of the stuff that we've done so far. It probably wouldn't hurt to write some code either I suppose.

Week 3

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 09/22/2008

ReportIn this section, describe your individual accomplishments in the previous week.

Did some more work with the Android platform, just getting more familiar. Watched some more videos and joined the group on Google Groups. I get an email each night that highlights what went on during the day, something like an agenda. It's pretty interesting to see what's going on with it.

PlanIn this section, list your individual objectives for the coming week.

Start to think more about the specifics of our application. I'd like to make a mock-up just to get an idea of what it'll look like. Once I get more familiar with the Google UI perhaps. I'd like to fiddle with some smaller-sized Android apps too, just to get more familiar with actually working with code on the platform.

Week 4

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 09/29/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This week I sat down and did some simple mock-ups with pen and paper, just to get an idea for how the application is going to behave. Continued research into the Android platform. Also tried out some neat apps that other people have created.

PlanIn this section, list your individual objectives for the coming week.

Since we have our SQLite database pretty much ready to go, I'm looking to begin some coding on the backend. We're all dreading having to work on the GUI, but if it comes down to it I wouldn't mind doing some work on that as well.

Week 5

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 10/6/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This week I did some light coding on a non-functional mockup so I could stop looking at sketches of what I wanted. I was somewhat successful but still need to work with my group more on the GUI. Also looked over some of our diagrams and documents to see if there was anything I could add to it personally.

PlanIn this section, list your individual objectives for the coming week.

This week I'd like to meet with my team and discuss what each of us should be working on over our short fall break. We have general ideas as to what each person is going to focus on, but I'd like to get on the same page as everyone else before I start doing individual work so as not to repeat what someone else might've already done.

Week 6

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 10/12/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This week I continued to work on some more backend things, trying to leave the GUI to my teammates. I'm also proud of the fact that I was able to do a lot more work (whether or not the code will actually be used is to be decided) than I would normally do on my own despite the fact that I wasn't able to make it to the meetings for long enough to get an idea of what exactly I should focus on.

PlanIn this section, list your individual objectives for the coming week.

This week I'd like to make what we have so far look a bit nicer. I'm starting to feel more and more unorganized and need to take some time to sort out what we have. Perhaps I could actually start using our wiki on Google Code. I'd also like to meet with my group a bit more this week so I can get on the same page as them.

Week 7

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 10/20/2008

ReportIn this section, describe your individual accomplishments in the previous week.

Not much was accomplished this week. Between midterms and other mid-semester projects I had very little time. Did some very minor fiddling with code.

PlanIn this section, list your individual objectives for the coming week.

My individual objective for this week is to fulfill my responsibility as laid out in our build plan. As of writing this our plan is not yet final, so I can't elaborate on what exactly I'll be doing. As noted in the metric report, I'm expecting not only myself but my teammates to be much more productive now that we'll have a schedule for the next several weeks.

Week 8

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 10/27/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This past week I began working on our calendar that we're going to have to make from scratch, seeing as the Android platform doesn't come with a calendar application. It's not entirely functional and we're going to have to get together to piece together all of the work each of us has done.

PlanIn this section, list your individual objectives for the coming week.

This coming week I'd like to work on the GUI and the calendar. Depending on how long it takes for us to finish the calendar portion, I'd say we can have a decent GUI up by the end of the week. Although, as you mentioned in class, I'm probably going to find that we fall short on our objectives. Oh well.

Week 9

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 11/03/2008

ReportIn this section, describe your individual accomplishments in the previous week.

During the past week I helped work on our GUI as well as the code for our calendar. Chintan handled most of the database work but I'm thinking that we're going to need to focus on that a bit more than we have so far.

PlanIn this section, list your individual objectives for the coming week.

This coming week I'd like to get completely caught up with our build plan, which means we're going to need to get a functional database that is testable. As of right now it's hard to say what exactly I'll be doing individually, but I'm thinking it will definitely be database related.

Week 10

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 11/10/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This past week I worked on the notification pop-up for events. It was basically just the GUI with very little code backend. I opted to work on a smaller portion of the team's build plan this week so that I could focus on other work, but was successful in completing what we planned to have done.

PlanIn this section, list your individual objectives for the coming week.

This coming week I'd like to do a bit more work than I did last week. Our team has yet to meet this week to assign work to each other, but I'd like to work on something a bit more involved with another member of my team, which is mainly what Kendall and Chintan have been doing. I'll have a lot more time to commit to this project this week so I'd like to work on something where I can get (and give)feedback immediately.

Week 11

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 11/17/2008

ReportIn this section, describe your individual accomplishments in the previous week.

This week I worked more with the notification GUI and basically finished all of the coding that we'll need for notifications. Unfortunately, I didn't have Chintan's database code so I couldn't integrate the two but he and I are looking to do that very early this week. Also did a little bit of clean-up on some of the other code we already had (changing variable names to make more sense, tidying whitespace, etc.)

PlanIn this section, list your individual objectives for the coming week.

I'd definitely like to meet with Chintan on either Monday or Tuesday to try to get my notifications code working with his database, as I mentioned. Aside from that we haven't really divided the work yet. Kendall and I have been talking about getting together and coding sometime, so whatever I do this week will likely be in conjunction with Kendall. Our goal as a group is to fully integrate the code thatwe have right now (which is basically a working but bare-bones app) with the database by Thanksgiving Break. This will give us time to work more with the GPS and map functionality Android offers.

Week 12

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 11/24/2008

ReportIn this section, describe your individual accomplishments in the previous week.

I wrote the maps code so we can now map a task's location by its latitude and longitude. It includes some nice little key event features. For example, pressing the 'S' and 'T' keys will toggle the satellite view and traffic view, respectively. Also, pressing 'I' and 'O' will zoom in and out. Also found a nice little icon to use for our application.

PlanIn this section, list your individual objectives for the coming week.

There were still some things about my maps code that I'm not very happy with. The fact that it must take the latitude and longitude as integers is an inconvenience. I'm looking to use a standard Google Maps search for whatever the user may enter as a task's location (for example, “7600 Morgan Road”). The user isn't currently able to scroll on the map using the touchscreen, or in my case, the mouse. Whatever coordinates are mapped become the permanent center of the map. At one point I had it working but have been hung up on it for a few days now. I've asked Kendall to look into it a bit, so hopefully one of us will figure it out this week. I'm also looking to add some touch events, such as tapping to zoom in and double-tapping to zoom out. Our plan was to work on the GPS code after Thanksgiving break, but since the maps code is finished I may start the GPS coding over the break.

Week 13

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 10/27/2008

ReportIn this section, describe your individual accomplishments in the previous week.

Last week I added some more functionality to the maps feature. Tap gestures still don't work but I've added a few more keyboard shortcuts and added the ability to pan the map. I've been forgetting to mention the fact that I've been keeping up the javadocs for our project since I'm the documentation person. For the past 3-4 weeks I've been taking some time once a week to go through and update them.

PlanIn this section, list your individual objectives for the coming week.

This week I'd like to add GPS functionality to the maps module. I'd also like to get together with Chintan to talk a bit about how the database and maps module will interact. We've been having some trouble getting the date logic done so I may get together with Kendall to finish that up. I'm feeling pretty confident that we'll be able to complete all parts of our project, or at least the ones detailed in our build plan.

Week 14

Individual Weekly Report and PlanCSC 380

Name: Mike Lenehan Student Number: 801424236Date: 12/08/2008ReportIn this section, describe your individual accomplishments in the previous week.

Last week I integrated the maps feature with the database and implemented a way to translate search terms (an address or business name, for example) to latitude and longitude coordinates. Also continued updating javadocs.

PlanIn this section, list your individual objectives for the coming week.

This week I'd like to do some clean-up with Chintan and Kendall and work on getting our individual parts working as well as each of us had them working on our own. We never were quite able to get my maps class working with most of Kendall's code and had some trouble getting Chintan's timer class to work on any machine other than his. This probably could have been avoided if we had refactored codetogether and uploaded team builds more frequently, but I don't mind going over what we have.

Mike's Weekly Metric Reports

Week 1http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.1.pdf

Week 2http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.2.pdf

Week 3http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.3.pdf

Week 4http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.4.pdf

Week 5http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.5.pdf

Week 6http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.6.pdf

Week 7http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.7.pdf

Week 8http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.8.pdf

Week 9http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.9.pdf

Week 10http://cs.oswego.edu/~kmoore3/csc380/Android/Mike/metric.weekly.report.10.pdf

Mike's Individual ReflectionMike Lenehan 12/10/2008

CSC 380 – Individual Project Reflection

I thought our group project proved to be interesting in a variety of ways. Some were more

positive or beneficial than others, but the project was able to fairly adequately prepare me for the type of

situations I might be able to expect heading into a real software development project. I learned a lot not

only about how I work with a group, but also how I work on my own in a group.

One thing I found out very early on is how difficult it is to have a meaningful meeting taking into

account each member's schedule. For the first few weeks we had a lot of trouble sitting down as a whole

group and planning our project. We started sticking to a regular weekly schedule but soon found that we

were having meetings that we didn't need to have. We tried to have online meetings using a

service called Campfire but ultimately found that it was difficult to be as productive as we would be

meeting in person.

The other thing I learned is that it's very difficult to divide and manage different parts of a project.

It felt like some of us were stuck doing major parts of the project alone because no one else had

experience in that particular area. The main problem we ran into was refactoring code. Each of us would

download a build and make changes and then none of our variable and method names would match. This

caused a lot of trouble for us when we were trying to integrate certain features.

If I could go back and make changes, I would first change the frequency of build uploads. If we

posted one daily build rather than one (usually) weekly build we'd have cut down on a lot of time wasted

refactoring code the night before and morning of our build demos. I would also look into finding

something to keep us a bit more organized. We tried Google Code but that required too much

maintenance. Something a little bit more simple might have been preferred.

Overall, I'd say this project really did prepare me for a real-world software development project.

I'm excited to get to be a part of my first one!

Gerrit's Individual Weekly Reports

Week 1

Week 2

Week 3

Week 4

Week 5

Week 6

Week 7

Week 8

Week 9

Week 10

Week 11

Week 12

Week 13

Week 14

Gerrit's Weekly Metric Reports

Week 1http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week1.metric.report.pdf

Week 2http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week2.metric.report.pdf

Week 3http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week3.metric.report.pdf

Week 4http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week4.metric.report.pdf

Week 5http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week5.metric.report.pdf

Week 6http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week6.metric.report.pdf

Week 7http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week7.metric.report.pdf

Week 8http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week8.metric.report.pdf

Week 9http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week9.metric.report.pdf

Week 10http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week10.metric.report.pdf

Week 11http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week11.metric.report.pdf

Week 12http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week12.metric.report.pdf

Week 13http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week13.metric.report.pdf

Week 14http://cs.oswego.edu/~kmoore3/csc380/Android/Gerrit/Week14.metric.report.pdf

Gerrit's Personal Reflection

Reflection

I don’t really know how much I have to reflect on as far as my involvement in this process. I feel that I had little valuable input to begin with, and ended up not even fulfilling that amount in actual contributions. If there was anything that needed to be overcome this semester, it was my personal challenges. I wish I had done more and was capable of contributing more in the first place, but I hope that I can achieve better in future classes.

Technical Postmortem

Team A:

As far as technical challenges that we encountered the most severe was definitely the changing of

the Android SDK. Although we hadn't done the majority of our coding at this point, it still made life very

difficult because all of the examples that were online became outdated. Also, this meant that any old

documentation on the platform was no longer usable. This makes writing code very stressful because

there didn't seem to be sufficient help for any problems we encountered and certain things that we

anticipated being small, daily tasks turned into maybe a whole week long project. Another issue that

seemed to be ongoing for the last 3 weeks of the project was emulator issues and eclipse plug-in

problems. On some occasions, the emulator would just crash or freeze for no apparent reason and then be

fine at other times. Then, when it came time to use our timer interface, we were unable to launch services

on the emulator is we ran the project in eclipse. If the project was run from the command line all went

well but in eclipse the emulator would launch and then close again seconds after starting. This made

working more of a hassle and is something that should be fixed for future use.

In the future, one thing that would be done differently for sure would be time estimation on the

project. Leaving enough time to make sure everything was finished was an issue so that would be

changed if we were to do a project like this again. Also, more teamwork is needed for any future projects.

We each had our own separate goals which helped us learn a lot about what we were doing, but not

enough about how we each worked. We need to focus more on working together, maybe in pairs, that

way integrating code would be much easier and also we would have a better understanding of everyone's

work that they had done.