fur seal data entry
DESCRIPTION
Fur Seal Data Entry. A Project by Samuel Beecher. Fur Seal Data Entry. Client Dr. Ward Testa Research Wildlife Biologist Works with National Marine Mammal Laboratories Project Data Entry App Motorola Defy (Android 2.0 Update 1). In the beginning was…. HISTORY. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/1.jpg)
Fur Seal Data EntryA Project by Samuel Beecher
![Page 2: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/2.jpg)
Fur Seal Data EntryClient
◦Dr. Ward Testa◦Research Wildlife Biologist◦Works with National Marine Mammal
Laboratories
Project◦Data Entry App ◦Motorola Defy (Android 2.0 Update 1)
![Page 3: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/3.jpg)
HISTORYIn the beginning was…
![Page 4: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/4.jpg)
History: Where it BeganDesignated as depleted in 1988
◦National Marine Fisheries Service
More specific monitoring after 2000◦National Marine Mammal Laboratory
![Page 5: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/5.jpg)
History: Where it Began (cont)Done on Pribilof Islands
Archipelago ◦St. Paul and St. George◦70% of total Fur Seal Population
globally
![Page 6: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/6.jpg)
History: What it Looked LikeTrack population composition:
◦Size◦Age◦Sex◦Natural Mortality
Performed Observations◦Summer months◦Process needs to be accurate
Used for statistics
![Page 7: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/7.jpg)
History: What it Looked Like (cont)
![Page 8: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/8.jpg)
History: What it Looked Like (cont)Codes are important
◦Visibility ( 1 - 3◦Pup (0 – 5)◦Age (P, J, A)◦Loss (0 – 6)
Used for easy reference and writing◦Cheat sheet on back of printed form
Used in Excel Sheet◦Statistics and entry
![Page 9: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/9.jpg)
History: What it Looked Like (cont)Entered into an Excel
Spreadsheet◦Used to create statistical data
![Page 10: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/10.jpg)
History: What it Looked Like (cont)Also done by performing
“Counts”◦Summer months
Pad and Paper
Entered into Excel Spreadsheet
![Page 11: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/11.jpg)
PROJECT GROWTHFrom birth to adulthood…
![Page 12: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/12.jpg)
The Growth of a ProjectBirth
◦Initial SpecificationsToddler
◦DesignPre-Teen
◦Finalizing DesignTeenager
◦Problems and RefactoringAdult
◦Final Touches
![Page 13: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/13.jpg)
BIRTHInitial Specifications…
![Page 14: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/14.jpg)
Birth: Initial SpecificationsClient Specifications: Observations
◦Check IDLookup table for consistency Tag Side, color, type, and number
◦Insert new record, or Edit previous record
◦Check plausibility of Tag Type / Color combo
◦Check plausibility of Island / Rookery / Section combo
![Page 15: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/15.jpg)
Birth: Initial Specifications (cont)Additional Specifications:
Observations◦Lookup table of all observations for
that day◦Dynamic Island, Rookery, Section,
Tag Types, Tag Colors, and all codes I.e. they can’t be hardcoded There must be a centralized place to
manage and transfer data to phone◦Transfer IDLookup spreadsheet to
Phone
![Page 16: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/16.jpg)
Birth: Initial Specifications (cont)Client Specifications: Counts
◦Counters for Females, pups, harem bulls, territorial bulls, and lone bulls
◦Harem Bulls must have femalesAdditional Specifications: Counts
◦Counters for dead adults, bulls, females and pups
◦Lookup table of all previous counts for that day
◦Ability to enter “negative” counts
![Page 17: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/17.jpg)
Birth: Initial Specifications (cont)Client Specifications: General
◦Export counts, observations to CSV◦Move CSV from phone to computer
Additional Specifications: General◦Export count totals in a separate CSV
![Page 18: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/18.jpg)
Birth: Initial Specifications (cont)Design Environment
◦Started with MotoDev for Eclipse◦Switched to NBAndroid for Netbeans
Schedule◦Planned for 8 hours a week◦Spent much more
![Page 19: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/19.jpg)
TODDLERInitial Design…
![Page 20: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/20.jpg)
Toddler: DesignPrototyping
◦Convenient for working on Android◦First large scale project
First Design Ideas◦Based on initial specifications◦Changed drastically by the end
![Page 21: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/21.jpg)
Toddler: Design (cont)
ObservationForm
datetimeobser verrooker yvisib i l ityC odef i rstTagother Fl ipper SeensecondTagSea lpupC odephotosTakencommentsSubmi t() SEAL
I DL ef tTagRightTagSexA ge
TAG
sea l IDnumbersidetypecolorlossCode
C ountForm
I Dbul lharemBul lf emalepupSubmit()
C ontrollermainFormcountFor mobsFor mdataC ontr ol l er
DataC ontroller
saveC ount()saveObs()
MainForm
selectC ount()selectO bs()dow nloadCSV()
U M L Diagram
star tM ain()star tCount()star tObs()
![Page 22: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/22.jpg)
Toddler: Design (cont)
OBSERVAT IONi d(pk )dateti meobserverrook ery (fk )vi s i bi l i tyCod e (fk)fi rstTag (fk)otherFl i p perSeensecond Tag (fk )pup Cod e (fk )photosTakencomments
SEALid (pk)lef tTag (fk)rightTag (f k)sex age
TAGnu mber (p k )s i d etypecol orl ossCod e
SEAL_TAGtagN um ( fk )seal I d (fk )
TYPEtyp eID (p k )typ eN ame
T YPE_COLORtyp eI D (p k , fk )Col or (p k )
PUPcodeI D (p k )codeD esc
VISIBILITYcod eI d (p k )cod eDesc
LOSScod eI D(p k)cod eDesc
ROOKERYR ookery ID (p k )n amel atl on
![Page 23: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/23.jpg)
PRE-TEENFinalizing Design…
![Page 24: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/24.jpg)
Pre-Teen: Finalizing DesignLots of refactoring
◦Project size grew quickly,◦Needed easier way to add new
elements without repeated code i.e. a more Object Oriented design
patternProduced
◦New design pattern◦New database setup
![Page 25: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/25.jpg)
Pre-Teen: Finalizing Design (cont)
![Page 26: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/26.jpg)
Pre-Teen: Finalizing Design (cont)
![Page 27: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/27.jpg)
Pre-Teen: Finalizing Design (cont)Not the end
◦Design changed one last time◦Found classes were getting too large
to be manageable◦Wanted to separate functionality ◦Needed addition of classes to
handle: Database access Xml Parsing Export of CSV
![Page 28: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/28.jpg)
Pre-Teen: Finalizing Design (cont)
![Page 29: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/29.jpg)
Pre-Teen: Finalizing Design (cont)Each Activity activates its controller
◦Android Activity Management workaround◦Slave wakes up the master….
Controller handles data validation, insertion, etc…
Activity handles all visualsModel-View-Controller Pattern
◦A parallel class hierarchyAlso used Singleton and Adapter patterns
◦dataController◦databaseController
![Page 30: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/30.jpg)
Final UML
![Page 31: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/31.jpg)
Final UML
![Page 32: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/32.jpg)
Pre-Teen: Finalizing Design (cont)More to do
◦Still needed to transfer files to phone
Transfer of Data to Phone◦Mini program ran on computer◦Needed to be compatible with Mac or
Windows platform◦Parsed Excel Document, put into XML
format, transferred to phone SD card
![Page 33: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/33.jpg)
Pre-Teen: Finalizing Design (cont)Done with design
◦Easier to add components ◦More to figure out
Algorithms for parsing Excel, Xml and insertion to database
Now just needed to implement!◦Lots of custom widgets for special
functionality
![Page 34: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/34.jpg)
TEENAGERProblems and Refactoring…
![Page 35: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/35.jpg)
Teenager: Problems / RefactoringLearning Curve
◦First large scale project◦Fairly new to Android◦Never used SQLite◦Debugging proved really difficult
Not always clear on error
![Page 36: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/36.jpg)
Teenager: Problems / RefactoringMisunderstandings
◦Several, all on my side of the street Tag Creation and Management
Required a change to the database design Seal Code Management
Additional Excel Parsing and insertionRegular meetings helped, A LOT!
![Page 37: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/37.jpg)
ADULTReview…
![Page 38: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/38.jpg)
Adult: ReviewPlanned 8 hours per week
◦Actual roughly 20 - 22 per week
Still working on bugs◦Dr. Testa is working with phone
![Page 39: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/39.jpg)
Adult: Review (cont)
Design8%
Re-quirements3% Writ
eup4%Pre-sen-tatio
n5%
Implmentation60%
Testing20% Design
RequirementsWriteupPresentationImplmentationTesting
![Page 40: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/40.jpg)
CONCLUSIONTo Conclude…
![Page 41: Fur Seal Data Entry](https://reader036.vdocuments.us/reader036/viewer/2022062222/568164e7550346895dd751db/html5/thumbnails/41.jpg)
ConclusionLearned Much
◦First Project with a Client◦First Large Scale project◦New to Android
App contained all major features needed
Took longer than expectedHopefully will be used in the fieldWork was hard but well worth it