Java程序辅导

C C++ Java Python Processing编程在线培训 程序编写 软件开发 视频讲解

客服在线QQ:2653320439 微信:ittutor Email:itutor@qq.com
wx: cjtutor
QQ: 2653320439
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. 
.