LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 1 Lab 2 – littleLEARNERS Product Specification Outline Markeil Blow Old Dominion University CS 411W Professor Janet Brunelle 28 March 2021 Version 1 LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 2 Table of Contents 1 Introduction……………………………………………………………………………………...3 1.1 Purpose .................................................................................................................................. 4 1.2 Scope ..................................................................................................................................... 5 1.3 Definitions, Acronyms, and Abbreviations .......................................................................... 5 1.4 References ............................................................................................................................. 8 1.5 Overview ............................................................................................................................. 11 2 General Description ……………………………………………………………………………..11 2.1 Prototype Architecture Description .................................................................................... 12 2.2 Prototype Functional Design ............................................................................................... 13 2.3 External Interfaces .............................................................................................................. 15 2.3.1 Hardware Interfaces ..................................................................................................... 16 2.3.2 Software Interfaces ...................................................................................................... 16 2.3.3 User Interfaces ............................................................................................................. 16 2.3.4 Communications Protocols and Interfaces ................................................................... 16 List of Figures Figure 1: littleLEARNERS Prototype Major Functional Component Diagram…………………12 List of Tables Table 1: littleLEARNERS RWP vs Prototype Table…………………………...……………….14 LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 3 1 Introduction COVID-19 first arose in the fall of 2019 with the first domestic American case officially detected in January of 2020 (Harcourt et al., 2020). By March of the same year, the virus had spread to much of the rest of the United States of America. The United States entered into a lockdown in March of 2020, with many aspects of everyday life closing to the public including stores, restaurants, and most importantly, schools to limit the spread of the disease(Black et al., 2020). This immediately shifted nearly all school divisions to an online format regardless of whether the divisions had any existing infrastructures that could handle full-scale virtual learning. Many did not and still do not. Virtual learning is designed to serve as a substitute for traditional learning, but the systems in place are unable to handle simple feats such as tracking attendance (Gould, 2020). For K-5 students, parents serve as a large source of assistance in the physical absence of a teacher. However, with many schools yet to return to in-person learning, many students suffer from the lack of an available parent. School divisions have yet to offer an efficient solution to this problem that plagues many students (Heggeness et al., 2020). When the effects of the pandemic forced school divisions to move to an online format, the benefits that students, especially younger students with low digital literacy levels, received from physically being in a classroom vanished (A day in the life of online students, 2020). The shift entailed utilizing and relying on resources such as Zoom and Microsoft Teams for most instruction. Communication between students and sources of help, such as a teacher or aide, is no longer direct, which is essentially the basis for learning. The responsibility now falls on parents with many unable to fulfill it due to their own busy lives (Black et al., 2020). With students using so many different learning platforms, navigating between them often causes confusion and a loss of learning time. Navigating online learning also comes with the common issues of being online LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 4 such as being given incorrect or broken links. Furthermore, with teachers using learning platforms, most students do not have their daily agenda or schedule in a single, central place. All of this greatly lowers a student’s performance levels from what it was in the physical learning environment (Pianta et al., 2008). With the pandemic still ongoing, and no foreseeable end to virtual learning, each of these problems needs to be addressed in order to lessen the negative effects that shifting to online learning have caused. A single comprehensive tool is needed to assist students with virtual learning so that the gap between learning in the virtual classroom and the traditional classroom narrows. A tool that provides a solution to the muddiness of online learning’s communication and navigation, especially, is vital. Otherwise, younger students will continue to suffer from the effects of unanswered questions and time lost to navigational issues. Additionally, a tool that addresses students’ low performance in the virtual classroom would prevent students from falling behind during the pandemic and any other situation that would require a move to virtual learning. Lastly, students need a tool that will provide an accurate schedule as well as help them traverse through the different learning platforms that their schedule takes them through. Else, potential learning time will be loss while students try to move around. A comprehensive tool such as littleLEARNERS would address all of these problems. 1.1 Purpose littleLEARNERS is designed to address the primary issues that the COVID-19 pandemic has brought to the education system—specifically in the K-5 area. The software is intended to handle the trickiness of navigating between numerous learning resources and tools for students. It is also intended to streamline the communication process when a student is in need of assistance. littleLEARNERS makes it easier for a student to find the details of their schedule as well as LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 5 promotes involvement for busy parents. The main objective of littleLEARNERS is to successfully meet these goals in order to increase student performance in virtual classrooms to a level similar to that in traditional classrooms. 1.2 Scope The prototype of littleLEARNERS essentially includes all of the features of the real- world product barring those that center solely around an enhanced experience. Features such as the easy buttons and schedule manipulation are present and fully functional in the prototype. Other features including those that rely on macros are present but are not fully functional as they rely upon test data, which may not cover issues that could potentially arise when using live data. However, the features of the real-world product that are included in the prototype of littleLEARNERS all address the primary issues that virtual learning presents to students and parents. 1.3 Definitions, Acronyms, and Abbreviations About screen: a GUI screen that provides information about littleLEARNERS as well as an email to contact technical support. Administrator: a member of the littleLEARNERS development team. Amazon Comprehend: a natural language processing (NLP) service used to extract the student’s schedule information from a document. AWS (Amazon Web Services): Amazon’s complete cloud computing platform that provides remote computing power and storage options. Amazon RDS (Relational Database System): Amazon’s cloud relational database system. Asynchronous activity: assignments to be completed by the student without the virtual presence LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 6 of an educator. Broken Link: an Easy Button that allows the student to report a link that is broken with a single click. The parent is immediately informed of the problem allowing for remote correction. Caregiver: an adult other than the parent who is responsible for the supervision of a student. Connector/Python: a Python extension for MySQL database connections. Data management: collection, storage, and dissemination of information. Docker: an open-source project for automating the deployment of applications as portable, self- sufficient containers that can run on the cloud or on-premises. Easy Button: a button that can be clicked to automatically carry out a set of tasks. Firebase: a cloud database system used for remote storage of application information for mobile applications. Git: a version control system used to coordinate work and track changes throughout the development of littleLEARNERS. Go To Class: an Easy Button which facilitates immediate navigation to a scheduled class which is already in session GUI (Graphical User Interface): the visual interface users interact with to input and receive information. Hallway: littleLEARNERS interface that provides access to the student’s schedule information. IDE (Integrated Development Environment): an application that provides a complete set of development tools in a single convenient environment. LMS (Learning Management System): software that is designed specifically to create, distribute, and manage the delivery of educational content either in a stand-alone product or via the internet. LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 7 littleAssistant: littleLEARNERS desktop avatar that is designed to appeal to elementary aged children whose purpose is to present navigation links and schedule reminder prompts. Java: a high-level programming language used to create stand-alone, handheld, and web applications. K-5: elementary school students from kindergarten to fifth grade. Macro: a single instruction that expands automatically into a set of instructions to perform a particular task. Message Board: a discussion board for parents to share information regarding their children’s schedule and navigation data. MySQL: a database management system that manages the creation and maintenance of information within an application. Navigation: as it pertains to the internet, destinations include Zoom meetings and asynchronous assignments. OpenTok: online video conferencing software. Parental Feedback: real-time notification and logging system to a child’s navigational history and alert the parent when navigation fails. PyAutoGUI: a third-party library that allows Python scripts to control mouse and keyboard input. It is used to automatically carry out web navigation. PyQt: a Python binding of the cross-platform GUI (graphical user interface) toolkit Qt, implemented as a Python plug-in. Python: an interpreted programming language used to create stand-alone, handheld, and web applications. Raise Hand: littleLEARNERS help system that facilitates transmission of help request and LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 8 response messages between students and parents. React Native framework: an open-source application that is used to easily develop cross- platform mobile applications. Schedule: a listing of daily virtual class times. SQLite: database management system for mobile devices to work with React Native framework. Synchronous learning: instruction and activities completed by the student with the virtual presence of an educator. Tkinter: a Python binding to the Tk GUI toolkit. It is the standard Python interface to the Tk GUI toolkit and is Python’s de facto standard GUI. Virtual Machine: a program that runs a second isolated operating system as if it were a separate computing system. Visual Studio: an integrated development environment (IDE) from Microsoft. It is used to develop computer programs as well as websites, web apps, web services, and mobile apps. WebRTC: an open framework for the web that enables real-time Communications (RTC) capabilities in the browser. 1.4 References A day in the life of a student attending online high school. (2018, August 30). Achieve Virtual Education Academy. https://achievevirtual.org/blog/online-high-school/a-day-in-the-life- of-a-student-attending-online-high-school/ A day in the life of online students. (2020). K12. https://dil.k12.com/ Amsterdam, T. (2018, October 2). Schoology vs. Google Classroom: 8 common questions answered. Schoology. https://www.schoology.com/blog/schoology-vs-google-classroom- 8-common-questions-answered LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 9 Average public-school student: teacher ratio. (n.d.). Public school review. https://www.publicschoolreview.com/average-student-teacher-ratio-stats/national-data Bernard, S. (2011, May 17). A day in the life of a virtual school student. KQED. https://www.kqed.org/mindshift/11558/a-day-in-the-life-of-a-virtual-school-student Black, E., Ferdig, R., Thompson, L. A. (2020, August 11). K-12 virtual schooling, COVID-19, and student success. JAMA Pediatr. https://jamanetwork.com/journals/jamapediatrics/fullarticle/2769434 Blow, Markeil. (2021, February 17). Lab 1 - littleLEARNERS Product Description. Retrieved March 22, 2021 from https://www.cs.odu.edu/~411orang/ Donohue, Julie., Miller, Elizabeth. (2020, July 29). COVID-19 and School Closures. JAMA Network. https://jamanetwork.com/journals/jama/fullarticle/2769033 Elementary and secondary mathematics and science education. (2018). National Science Foundation. https://nsf.gov/statistics/2018/nsb20181/assets/481/elementary-and- secondary-mathematics-and-science-education.pdf El Nokali, N., Bachman, H., & Votruba-Drzal, E. (2010). Parent involvement and children's academic and social development in elementary school. Child Development, 81(3), 988- 1005. http://www.jstor.org/stable/40599147 Gould, J. (2020, December 11). "Attendance is a symptom": educators struggle to keep track of students during pandemic. Gothamist. https://gothamist.com/news/attendance-symptom- educators-struggle-keep-track-students-during-pandemic Gruman, D., Harachi, T., Abbott, R., Catalano, R., & Fleming, C. (2008). Longitudinal effects of student mobility on three dimensions of elementary school engagement. Child Development, 79(6), 1833-1852. http://www.jstor.org/stable/27563596 LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 10 Grundy, K., Mandeville, C., Mazari, H., Stichter, J., Thill, B., & Wissink, S. (2020, August 14). Consumer insight: virtual back to school - fewer backpacks & more laptops. Jefferies. https://javatar.bluematrix.com/pdf/JD7AuWA6 Harcourt, J., Tamin, A., Lu, X., Kamili, S., Sakthivel, S. K., Murray, J....Thornburg, N. J. (2020). Severe acute respiratory syndrome coronavirus 2 from patient with coronavirus disease, United States. Emerging Infectious Diseases, 26(6), 1266-1273. https://dx.doi.org/10.3201/eid2606.200516. Heggeness, M., & Fields, J. (2020, August 18). Parents juggle work and childcare during pandemic. The United States Census Bureau. https://www.census.gov/library/stories/2020/08/parents-juggle-work-and-child-care- during-pandemic.html Hudson, H. (2020, March 31). Kids (and teachers) don’t need to spend 8 hours a day on schoolwork right now. WeAreTeachers. https://www.weareteachers.com/virtual-learning- schedule/ Kelly, H. (2020, September 4). Kids used to love screen time. Then schools made Zoom mandatory all day long. Washington Post. https://www.washingtonpost.com/technology/2020/09/04/screentime-school-distance/ Maldonado-Carreño, C., & Votruba-Drzal, E. (2011). Teacher-child relationships and the development of academic and behavioral skills during elementary school: a within-and between-child analysis. Child Development, 82(2), 601-616. http://www.jstor.org/stable/29782854 Mann, K. (2020, August 24). A day in the life of virtual learning with four kids | COVID E- Learning. Indy with Kids. https://indywithkids.com/virtual-learning/ LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 11 Map: where has COVID-19 closed schools? Where are they open? (2020, July 28). Education Week. Retrieved November 1, 2020 from https://www.edweek.org/ew/section/multimedia/map-covid-19-schools-open-closed.html McElrath, K. (2020, August 26). Schooling during the COVID-19 pandemic. United States Census Bureau. https://www.census.gov/library/stories/2020/08/schooling-during-the- covid-19-pandemic.html Pianta, R., Belsky, J., Vandergrift, N., Houts, R., & Morrison, F. (2008). Classroom effects on children's achievement trajectories in elementary school. American Educational Research Journal, 45(2), 364-397. www.jstor.org/stable/30069451 Renaissance Learning. (2020). How kids are performing: tracking the impact of COVID-19 on reading and mathematics achievement. https://renaissance.widen.net/s/wmjtlxkhbm Team Orange. (2021, February 17). Lab 1 - littleLEARNERS Product Description. Retrieved March 22, 2021 from https://www.cs.odu.edu/~411orang/ United States Census Bureau. (2020, November 23). Week 19 household pulse survey: November 11 – November 23 [Data file]. https://www.census.gov/data/tables/2020/demo/hhp/hhp19.html#techdoc 1.5 Overview This product specification details a description of the littleLEARNERS prototype in terms of its architecture, its features, and its interfaces. The remaining sections delve into how these aspects of littleLEARNERS proves to be an effective solution to the problem presented by virtual learning in the COVID-19 pandemic. LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 12 2 General Description For the littleLEARNERS prototype, several of its real-world product features are implemented: navigation, scheduling, help, feedback, and the parent message board. 2.1 Prototype Architecture Description The prototype of littleLEARNERS relies upon a virtual machine hosted by ODU, an instance of a database, and third-party tools. Figure 1 shows how the different tools and the users of littleLEARNERS interact when using the application. Figure 1 littleLEARNERS Major Functional Component Diagram A mock classroom exists to provide a simulated classroom environment for testing. A remote database as well as an instance of PyAutoGUI allow for schedule data to be input and analyzed in order to utilize macros, which are a primary part of the navigation assistant aspect of LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 13 littleLEARNERS. Those components also support the littleAssistant, which uses the data to provide prompts to students. A student uses their physical computer to use features such as Raise Your Hand! to contact their parent on their device for help. This feature in particular relies on software applications such as OpenTok, a video conferencing software. Each component of littleLEARNERS is implemented using different tools. The desktop application relies on Python in its back end and a mix of Python and Tkinter, Python’s GUI kit, for the front end. Docker is incorporated to provide an less complicated development environment through the use of its container feature. The parent message board uses a simple, web-based third-party tool. 2.2 Prototype Functional Design The prototype for littleLEARNERS has slight differences from the real-world design in that some features will be fully functional while others are partially or even completely non- functional. Table 1 lists these differences. [This space intentionally left blank] LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 14 Table 1 littleLEARNERS RWP vs Prototype Table LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 15 The features that are fully functional in the littleLEARNERS prototype do not rely on whether data is test data or live data. A feature such as the Raise Your Hand easy button does not rely on schedule data or other user data. On the other hand, the prototype is able to display a student’s schedule for the day but the feature is only partially functional as it relies on schedule data. Features such as displaying a student’s schedule for the entire week are not functional as they enhance the basic functionality of the application; but, their exclusion does not hamper its performance. Additionally, mock features such as the mock schedule and classroom are present in the prototype and not the real-world product as all testing will be finished when the real-world product is live. 2.3 External Interfaces For its external interfaces, littleLEARNERS uses an instance of MySQL inside of a Docker container as well as incorporates Google’s Calendar API. LAB 2 – LITTLELEARNERS PRODUCT SPECIFICATION OUTLINE 16 2.3.1 Hardware Interfaces Any desktop device that has a current version of Python installed is able to run the littleLEARNERS application. 2.3.2 Software Interfaces The user data that is stored in the MySQL instance runs on a virtual machine maintained by Old Dominion University. Google’s Calendar API is used to import a parent user’s existing Google Calendar to serve as a source of their student’s class schedule details. 2.3.3 User Interfaces The littleLEARNERS prototype is accessed through a GUI on the user’s device. 2.3.4 Communications Protocols and Interfaces For end users, littleLEARNERS communicates with Google’s Calendar API, which serves as the basis for the application’s scheduling features, with an HTTPS protocol. All other data is transferred between littleLEARNERS and its database through the use of Python’s MySQL connector. .