1 / 26

Reiman Gardens Plant Database Dec 08-06

Reiman Gardens Plant Database Dec 08-06. Josh Weisskopf Cory Simon. Rolando Gaytan Clay Schumacher. Aaron Steil ( Reiman Gardens) – Client Dr. Tien Nguyen - Advisor. Problem. Reiman Gardens, the client, needs to keep detailed records of all plants in the botanical gardens.

Download Presentation

Reiman Gardens Plant Database Dec 08-06

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Reiman Gardens Plant Database Dec 08-06 Josh Weisskopf Cory Simon Rolando Gaytan Clay Schumacher Aaron Steil (Reiman Gardens) – Client Dr. Tien Nguyen - Advisor

  2. Problem • Reiman Gardens, the client, needs to keep detailed records of all plants in the botanical gardens. • The current plant database is not user friendly and does not interface well with other software and equipment.

  3. Market Survey BG-Base BG-Map KE EMu

  4. Approach • System will use a web-based client-server architecture • Emphasis on intuitive user interfaces • Provide access from existing AutoCAD maps • Generate files compatible with label-making software

  5. RegisteredClient Registered User Label Makers AutoCAD Map Web Browser Public User Server Web Pages HTTP Server Web Browser Queries Public Client Responses Database System Description

  6. Operating Environment • End-user environment • End-users: staff and volunteers • Access through a web browser • Likely at their desk in the offices • May also provide limited access to the general public • Host environment • Web server with PHP 4.3.2+ and MySQL 4+ • Regular backups

  7. Functional Requirements • FR-1 The product shall store records. • FR-1.1 The product shall have eleven types of records: Accession, Genus, Species, Supplier, Location, Reference, Family, Photo, Propagation, User, and Group.

  8. Functional Requirements – cont’d • FR-2 The product shall allow users to manage records. • FR-2.1 The product shall allow users to create records. • FR-2.2 The product shall allow users to edit records. • FR-2.3 The product shall allow users to view records. • FR-2.4 The product shall allow users to search records by any field in the record.

  9. Functional Requirements – cont’d • FR-3 The product shall provide user accounts. • FR-3.1 The product shall authenticate users with a username and password. • FR-3.2 The product shall have at least two user groups: Administrators and Staff • FR-3.3 The product may have a third user group for public users. • FR-3.4 The product shall provide an administrative interface for the management of its users.

  10. Functional Requirements – cont’d • FR-4 The product shall allow multiple concurrent users to access the database. • FR-5 The product shall export files to be used with the most commonly used label-maker.

  11. Input/Output Specification • Input: HTTP Page Requests • Output: HTML, CSS, JavaScript, and Labelmaker Files

  12. User InterfaceWelcome Page

  13. User InterfacePlant Record

  14. User InterfaceSearch Results

  15. Software SpecificationModel-View-Controller

  16. Software SpecificationCakePHP • CakePHP is a rapid development framework for PHP • Based on Model-View-Controller architecture pattern • Provides abstraction layers for different databases • Provides components for common tasks (ex: input sanitizing) • Good documentation and active community • Object oriented design

  17. Software SpecificationViews • Views are visual presentations of model data • Each view has a specific function • Login • Welcome / Home • Administration • Photo Upload • Help Page

  18. Software SpecificationViews • Views continued • Advanced Search • Export to File • Edit Record • Search Results • View Record • Printable Report • Add New Record

  19. Software SpecificationModels

  20. Software SpecificationControllers • Each controller will be associated with a particular model • Controllers will gather data from the models, manipulate the data, and pass it to the views. • Controllers will use components to perform common actions.

  21. Software SpecificationComponents • In CakePHP, components are similar to controllers except they are not associated with a model. • Components • Authentication: Based on obAuth component • Labelmaker File Generation: Based on Excel helper

  22. Software SpecificationLabelmaker File Format • Excel spreadsheet document with the following columns • Accession Number • Genus • Specific Epithet • Cultivar • Common Name • Family Name • Existing CakePHP helper will create Excel file

  23. Software SpecificationPermissions

  24. Hardware Specification • Server Hardware Specification • The product will require an HTTP server + 50 GB of database space. • Depending on scalability for the future, the following specifications are recommended: • Under 25 concurrent users: • 256mb RAM • 1 GHz CPU Pentium 4 • 25 – 100 concurrent users: • 512mb RAM • Dual-core 2.4 GHz Pentium Xeon or equivalent • Over 100 concurrent users: • 4 GB RAM • Dual-core 2.4 GHz Pentium Xeon or equivalent • Client Hardware Specification • The end-user will require a computer running Internet Explorer 7 or Firefox 2 • Minimum Requirements: 233 MHz processor or higher, 64mb RAM, Super VGA or higher resolution monitor, internet connection, mouse, and keyboard

  25. Test Specifications • The product’s model view controller architectural modules will be unit tested. • The product’s model view controller architectural modules will be black box tested. • Model • Each table in the database will have a PHP class representation that will have to be tested. • A basic test includes loading the database with data and ensuring that the model is able to load the data into corresponding variables. • Relationship enforcement needs to be tested. • View • Inputs: Data from the model & instructions from the controller • Outputs: On screen rendering of model, update requests to the model, and user interactions to the controller • Controller • Inputs: User interactions from the view • Outputs: View selection to the view and state changes to the model

  26. Summary • Completed • Requirements • Detailed design • Project management and source control software • Future Work • Draw up implementation milestones • Code and integrate • Release incremental test builds • Perform final tests

More Related