About the Project
Environmental Laboratory Informatics and Management System
The environmental engineering lab offers many services and hosts many types of activities throughout the year, and utilizes specialized equipment and materials that can be potentially harmful and hazardous without proper organization. Managing these activities can be a challenge for the existing request process, and requires an overhaul for the laboratory to operate efficiently and safely.
The EE labs require an organized, centralized management system that accepts request for lab usage, facilitates the reservation with backend systems, and set ups a face-to-face meeting with the lab management. Currently, there is little organization in the lab use request process and a lack of coordination between the request process and lab usage. With the many different services offered by the CENE labs, there is a distinct risk of conflicting bookings which may pose a danger to the researchers and their work.
This software will be used by laboratory management, principle investigators, students and faculty, independent researchers, and individual customers and users. While we are developing this software with the academic applications in mind, use beyond NAU must be considered during development. There is future possibility of this project having commercial usage at NAU and beyond.
Description
The CENE labs are lacking in an organized, integrated management and informatics system, which we aim to conceptualize, develop, and implement. At the end of this project, we should have a fully initialized web application that allows for lab reservations and inventory tracking and management. Ideally, we'd like to create a more robust management system for the laboratory spaces, facilitating complete management and organization of lab space, and the creation and analysis of resulting experiment data, so that researchers may share their data.
High Level Requirements
Key features of the system include:
- a laboratory use request system allowing users to create and submit project and lab use requests, as well as submit feedback, documentation, and communications
- a scheduling system to coordinate bookings and the required face-to-face meetings with lab management that must take place before use requests can be approved
- a chemical inventory system
- user profiles at different levels of access
- extensive data security
The system must be:
- easily extensible by future developers and capstone groups
- easily maintainable by Information Technology Services (ITS) at NAU
- accessible and customizeable by lab management
Our deliverables will include the software, as well as the design, implementation, and maintenance reports.
Envisioned Solution
We envision an extensible, cross-platform web application form that simplifies and integrates the existing process and, at minimum:
- allows people to request lab time
- ensures there is not overlap in lab usage
- checks what safety trainings are required
- makes the notification to both the lab management and the person/people making the request
- provides a robust inventory system that can be checked for availability
- does this in a platform independent, user-friendly UI
The system will be extensible, modularized, and easily updatable by Information Technology Services (ITS) at NAU. It will be hosted on a secure web service, either provided by NAU or a similar cloud-based service.
These are minimal goals for the project. Ideally, the system will also:
- allow for the upload and sharing of data across users in real time
- facilitate the tracking and restocking of lab inventory
- have a customizeable UI, such as modules may be "dragged and dropped" as the user prefers
- interface with a secure data storage warehouse for data input, storage, sharing, and analysis
- generate automatic and requested reports for the lab management
Technologies
We will be utilizing:
- a web app framework, such as Django or Ruby on Rails, for a robust, well-presented front end application and form; we need the framework to support the database backend, be independent of platform, and be easily to extend
- an SQL database for the backend, to store user information, create access levels, and make lab requests
- the existing BioRaft database, which tracks safety trainings
- existing elements of the request and Standards of Procedure process used by the CENE Labs
Much of this will be written in a language, such as Python, that allows for extensive web and database programming.
Because the CENE program would like to eventually use the system beyond NAU, and for potentially commercial purposes, it will be necessary to screen the technologies we use for license and use restrictions. We will likely stick to technologies licensed under GPL and Creative Commons.
The precise technologies we use will be determined by our technological feasibility study.
Schedule
This is our estimated schedule for product development:
Fall 2018
- October 9 - meeting with sponsor for lab walkthrough, and to discuss the process for requesting use of the environmental engineering laboratory; brief history of how the request process was initiated in 2006 and evolution since - COMPLETE
- Week of October 15 - meeting with ITS to analyze existing systems and determine their requirements -COMPLETE
- Week of October 15 - determine technologies and complete technological feasibility analysis - COMPLETE
- Week of October 22 - begin experimenting with the different technologies, determine requirement specifications for software - COMPLETE
- Week of October 10 - determine requirements and begin drafting requirements document - COMPLETE
- Week of November 5 - finalize technological feasibility document and turn in, begin developing prototype web form and database backend - COMPLETE
- Week of November 19 - complete requirements document draft and begin final revisions - COMPLETE
- Week of November 26 - schedule prototype demo with team mentor - COMPLETE
- Week of December 4 - finalize requirements document with client - COMPLETE
- Week of December 10 - turn in requirements document and complete demo with team mentor - COMPLETE
Spring 2019
- Winter break - Rework the prototype and determine whether we will use a single-page application or MVC model for full implementation. Create development plan
- January - Implement basic functionality, including user authentication, database backends, A.C.I.D. communication, and different levels of user access
- Janurary/February - Testing of basic funtionality
- February/March - Implementation of full functionality
- March - More testing
- April - Refactoring
- April/May - Final review, including any last minute changes
- May - Deployment/releasing the software to the client
Our development plan is roughly: Meet with the client regularly to keep fleshing our plans out, correspond with ITS to figure out their requirements and how we can work with those constraints, create basic web form and database backend for lab usage requests, begin interfacing with BioRaft, integrate with inventory system, testing, deployment.
Please note the schedule and development plan are subject to change, and will be updated as the year progresses.