moose habitat surveyor final presentation
Download
Skip this Video
Download Presentation
Moose Habitat Surveyor Final Presentation

Loading in 2 Seconds...

play fullscreen
1 / 23

Moose Habitat Surveyor Final Presentation - PowerPoint PPT Presentation


  • 48 Views
  • Uploaded on

Moose Habitat Surveyor Final Presentation. University of Alaska Anchorage CS 401 : Software Engineering Cold Moose Chasers (Cold MC’s) Max Konovalov Chris Kulhanek Jim Weller. Problem Statement.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Moose Habitat Surveyor Final Presentation' - austin-blankenship


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
moose habitat surveyor final presentation

Moose Habitat SurveyorFinal Presentation

University of Alaska Anchorage

CS 401 : Software Engineering

Cold Moose Chasers (Cold MC’s)

Max Konovalov

Chris Kulhanek

Jim Weller

problem statement
Problem Statement
  • Agencies like the forest service need a way to task biologists to measure and predict the amount of Moose edible biomass in an area
  • Take random samples with a computer and project the distribution onto an area.
scenarios
Scenarios
  • Biologists get a list of GPS waypoints from an Agency like the forest service
  • Biologists go to each Waypoint and sample 9 CurrentYearGrowth (CYG) of many PlantPatches
  • Biologists export the biomass data to a file and give it to the Agency
features
Features
  • GUI Application
    • 3d Renderer
    • Model view
    • Data view of instance objects
    • Menus for
      • Collaboration: Import/Export
      • Persistence: Save/Load
  • Hardware
    • 3d Radio Pen (3drp)
    • Calipers
architecture
Architecture
  • MVC
    • Model is well defined
    • Controller manipulates model
      • Win32 Application
    • Views render model
      • 3d Panel to show plant patches
      • TreeView control to show the model hierarchy
      • DataGrid control to show instance variables of model components
design
Design
  • Façade Pattern (FieldTrip)
    • Wraps Model class hierarchy
    • Methods with integers
      • One Way

wp = ft.getWp(wp_idx);pp = wp.getPp(pp_idx);cyg = pp.getCyg(cyg_idx);cyg.setCygBase(base3d)

      • Façade Way

ft.cygSetBase( wp_idx, pp_idx, cyg_Idx, base3d )

design con t
Design (con’t)
  • Façade
    • Advantages
      • Simple and fast to implement because you can use protected variables instead of set/get
      • Less function calls to manipulate model
      • Model innards can be changed without affecting interface
    • Disadvantages
      • Not great OO design
      • Model components not very reusable
design con t1
Design (con’t)
  • Bridge
    • Data inputs should be able to use ink, keyboard, or attached hardware
    • Provides flexibility in the field
expertise
Expertise
  • Chris
    • Built 3D meshes because of architectural background
    • PlantPatch Model component
    • DataGrid GUI View Component
  • Max
    • C++ string parser research
    • Waypoint Model component
    • TreeView GUI View component
expertise con t
Expertise (con’t)
  • Jim
    • Project Lead
    • .NET C++ research
    • CurrentYearGrowth Model component
    • 3D PictureBox GUI View component
    • Secretarial slave (coffee, lunch, notes etc.)
finished product
Finished(?) Product
  • We didn’t know until 5 minutes ago what exactly we were going to show you all
  • Here it is…
    • Jim: Meshes
    • Chris: DataGrid
    • Max: TreeView from model file
lessons learned facts
Lessons Learned: Facts
  • 50 files (70 expected)
    • 5 megs of source
    • 2500 Lines of code (3500 expected)
    • 85 pages of docs (120 expected)
    • 4 APIs (3drp, DirectX, TabletPC, .NET)
  • 103 CVS commits
    • 51 CVS commits for Model.h
  • 489 Total person hours (519 expected)
    • First 6 Weeks
      • 3 hours of meeting time per week
      • 2 hours of research/design/writing time per week
    • Last 8 Weeks
      • 10 hours of group time per week
      • 4-8 hours of code time per week
lessons things we did right
Lessons: Things we did right
  • CVS is good, viewcvs makes it better, statcvs makes it even better
  • C++ or not, Visual Studio is sweet
  • Consistent meeting agendas and minutes increased traceability
  • Good division of labor
  • Long 8 hour work together meetings
  • Code walk throughs
lessons things that sucked
Lessons: Things that sucked
  • Too many new technologies (Cray quote)
  • Lack of experience in C++ and C++ .NET especially
  • No client buy in. Should have had a contract 
  • Prototype earlier, especially with new technologies
  • Specify expected application behavior better in scenarios
  • Old Libs and new libs (VC2003 vs. VC6)
  • Develop project schedule earlier and revise continually
  • Probably won’t achieve acceptance of original requirements
conclusions
Conclusions

We should have majored in

English

Just kidding…

conclusions for real
Conclusions (for real)
  • Software engineering is challenging
  • 3 members does not equal 3 times the effort of a single member
  • Good planning can save time and effort downstream
  • Discipline is more important than genius
  • Conservative is better than exciting
  • Communication is the most important
ad