Moose habitat surveyor final presentation
Download
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