Running head: Lab 1 – TPOT Product Description 1 Lab 1 – TPOT Product Description Team Black Jose Brandariz CS411W Janet Brunelle and Hill Price 03/17/2014 Version 2 Lab 1 – TPOT Product Description 2 Table of Contents 1 INTRODUCTION ....................................................................................................................... 3 2 PRODUCT DESCRIPTION .......................................................................................................... 4 2.1 Key Product Features and Capabilities............................................................................. 4 2.2 Major Components (Hardware/Software) ....................................................................... 5 3 IDENTIFICATION OF CASE STUDY............................................................................................. 7 4 PRODUCT PROTOTYPE DESCRIPTION .................................................................................... 12 4.1 Prototype Architecture (Hardware/Software) ............................................................... 13 4.2 Prototype Features and Capabilities .............................................................................. 15 4.3 Prototype Developmental Challenges ........................................................................... 16 Glossary ......................................................................................................................................... 18 Bibliography .................................................................................................................................. 21 List of Figures Figure 1. TPOT major functional components. ............................................................................... 6 Figure 2. Current Process Flow: Assessment .................................................................................. 8 Figure 3. Improved Process Flow: Deliverable Assessment Feedback ........................................... 9 Figure 4. Current Process Flow: Status Determination. ............................................................... 10 Figure 5. Improved Process Flow: Status Determination. ............................................................ 11 List of Tables Table 1. Feature comparison between real world product and prototype.................................. 15 Lab 1 – TPOT Product Description 3 Lab 1 – TPOT Product Description 1 INTRODUCTION Managing courses with multiple teams simultaneously is becoming a common task “more than 6.7 million, or roughly a third, of all students enrolled in postsecondary education took an online course for credit” (Allen and Seaman). On the work environment, it is estimated that more than half of employees work in at least partially virtual teams. Existing project management software contains solutions to some problems encountered by instructors in these types of courses, but the products are not designed for the academic field and they consider only the collaborative end and not the role of supervision. The current solution lacks automation, forcing the instructor to do all operations manually. The result is a fragmented, slow, and easily incorrect process. Because instructors do not have easy ways to communicate, storage of files with students and teams, they must check every email and file individually. The actual solution utilizes various ways to submit files and communicate with the instructor, making it very time consuming for the instructor to keep up with each student and team. The proposed solution is Team Project Organizational Tool or TPOT. TPOT is a project management tool designed to reduce or erase the stated problems. TPOT gives the opportunity for team members to access the team site through a variety of media, giving a center for file sharing and communication. The core of TPOT is the Instructor Dashboard that allows the administrator to easily look into projects and team member activities rather than tediously going through each site to complete the same simple operations. TPOT proposes to organize the data of a project in a way that it can be easily presented to instructors, making their work simpler. Lab 1 – TPOT Product Description 2 4 PRODUCT DESCRIPTION Team Project Organizational Tool, or TPOT, is the solution to the problem caused by the enormous amount of students enrolling in online, project-based courses. TPOT will be a webbased solution that will ease the problems derived from virtual teams. It will consist of a web dashboard for the instructor and Google Sites for the students to place all the required documents and files for the course that will be gathered with Google App Scripts and stored in a database. The product will reduce the time an instructor expends in the search for the files and other information of each team, so he or she may focus on providing the highest possible quality instruction and his or her other duties. It will also improve team member accountability by recording every way in which team members participate in the collaborative process. TPOT will also provide a concise summary of project status and ensure that team members are aware of their own responsibilities with its task system. The final result is an efficient and transparent collaboration between team members and the instructor. 2.1 Key Product Features and Capabilities TPOT will collect data from team Google Sites and display it in a comprehensive way for the instructor. TPOT will be able to handle a multitude of teams at any time. The instructor dashboard will include summaries of user activity and team and user tasks. The dashboard will include a notification tab which alerts the instructor to any new messages or deliverables received. The Instructor Dashboard will be comprised of different tabs. The tabs will consist of Overview, Teams, Tasks, Files, Activity, Grades, and Admin. The Overview is the main page and will present a summary of the different tabs. The Teams tab will contain all the teams the instructor is managing at this time and will contain links to each Team Sites. Lab 1 – TPOT Product Description 5 The Grading tab will allow the instructor to enter grades for each team member or enter a general grade to each team, giving that grade to all the students on that team. The tab will provide the ability to choose the assignment by course, class, and team. The instructor can also give team and individual feedback through this tab. The Files tab is a list of all files that teams have submitted through the Team Sites. The list of files will contain fields such as student name, team, date of delivery, or date of last modification. The system will mark which files need to be graded and will direct the instructor to the grade page. The list will be sorted or searched by fields such as student name, team, or date of delivery. An important feature of TPOT is the ability to track accountability of users. This ability will be displayed in the Activity tab. The system will keep track of user upload of deliverables and other site activity for each member of each team. This information shows to instructors about which team members have been active participants in the development process. With the Tasks tab the instructor will create and assign tasks to students, teams, or entire courses. The teams available to assign tasks will be collected from the teams the instructor is managing at the moment. This tab will allow assignments to be issued to students in an efficient manner. 2.2 Major Components (Hardware/Software) The TPOT Instructor Dashboard will be hosted on a third party server running on a virtual machine. The TPOT’s database server will be hosted by the ODU Computer Science Department on a virtual machine. The team sites are hosted by Google on Google Sites, after being generated with a custom template. Lab 1 – TPOT Product Description 6 The Google Site is created by the instructor at the beginning of the academic semester. It is used to generate the team sites which the students will be using throughout the semester. The template defines the look and feel and also the display of the content in individual team sites. Students are able to change the look of their site through Google Site’s built-in editor. The Google Sites are part of the actual solution, but have been managed and evaluated by the instructor personally. TPOT will work with the existing sites to automatically extract the information needed to provide feedback, grades, files and user activity to the instructor. This automation uses the querying of the database for specific information. From there, the information can be assessed appropriately. For the querying of the database, TPOT will use MySQL which will be installed on the virtual machine host. TPOT will establish communication between the Google Sites and the database through Google App Scripts generated with the template of the team sites. The Google App Scripts will access and manipulate the files, tasks, users and their attributes which are stored in the database. All the distribution of the Major Components can be seen on Figure 1. Figure 1. TPOT major functional components. Lab 1 – TPOT Product Description 3 7 IDENTIFICATION OF CASE STUDY This project was proposed by Dr. Pilar Pazos-Lago, Assistant Professor in the department of Engineering Management and Systems Engineering at Old Dominion University. She received her Ph.D. in Industrial Engineering with a focus on Engineering Management from Texas Tech University in 2005. Much of her work concerns the behavior of successful project teams. Before joining ODU, she worked in the areas of team learning and quality control. Her research interests include organizational learning, collaborative learning, group decision making and performance, virtual teams, and team dynamics. She was a Research Associate at Northwestern University with a joint position for the VaNTH Engineering Research Center (Departament of Engineering Management and Systems Engineering). Dr. Pazos became concerned by the difficulty of managing multiple team projects in online courses. Instructors of these online, project-based courses are often managing 15 or more teams. With this number of teams, it becomes difficult to track team status, offer accurate support and feedback, and quickly assess deliverables for each team. In addition, students have difficulties collaborating, mostly due to the lack of face-to-face interaction with team members. Currently, the organization of teams is left in its entirety to instructors. In addition, instructors and students do not have tools to easily aggregate team data. Most of the communications are made with little more than ad hoc solutions by using email, Blackboard or other specialized tools. As can be seen on Figure 2, the assessment of deliverables is a sprawling and tedious process. The instructor have to search through a variety of places to look for deliverables, from e-mails to team sites, and also look for who are the members’ of that team so he or she can give the feedback and grade to the proper students. Lab 1 – TPOT Product Description Figure 2. Current Process Flow: Assessment (This space intentionally left blank.) 8 Lab 1 – TPOT Product Description To solve the problem, Dr. Pazos proposed to TPOT an Instructor Dashboard that will collect data from the team sites. TPOT ease the assessment of deliverables by making the team data available in a single interface, as shown on Figure 3. Furthermore, providing feedback is added to the assessment to reduce the workload for instructors. Figure 3. Improved Process Flow: Deliverable Assessment Feedback (This space intentionally left blank.) 9 Lab 1 – TPOT Product Description As revealed on Figure 4, team status determination is full with repetitive actions. To determine the status, instructors have to navigate to multiple pages for every team, recording status as they go. Instructors must also search through their email accounts for messages from students. Figure 4. Current Process Flow: Status Determination. 10 Lab 1 – TPOT Product Description 11 Similar to the assessment of deliverables, the status determination is reduced to a visit to a single page on the Instructor Dashboard, as Figure 5 shows. Instructors will not need to visit every page of a team site in order to determine what progress a team has achieved. All this condensation of status determination and assesment of deliverables will ease the workload of the instructor. Figure 5. Improved Process Flow: Status Determination. (This space intentionally left blank.) Lab 1 – TPOT Product Description 4 12 PRODUCT PROTOTYPE DESCRIPTION The goal of the TPOT prototype is to produce a dashboard built on top of existing team sites, increasing an instructor's ability to develop students' virtual team and collaborative skills. The prototype will achieve this by organizing and monitoring team site data such that it may be included into the database. Once collected, team site data will be shown to users, providing only the information needed on each page. This will increase the instructor’s time to develop students’ virtual team skills, given that the team achieves some specific goal given by the instructor. One goal the TPOT prototype is trying to achieve is providing users with the necessary quantity of information regarding their projects. The TPOT prototype will provide the status to all members of a project. The task system will ensure that users know what assignments need to be completed, by whom, when, and if it is to be completed by more than one student, what the role of the student in that assignment. TPOT users will know the project's status through notifications designed with a system of database triggers. When a condition is reached, an email or other alert will inform each involved user that the condition has been met. The activity tracking system will give students and mentors the ability to know about actions taken that affect their projects. It will also allow them to see the activity of their team members. The goal of the TPOT prototype is to provide users with necessary information to make easier to provide appropriate feedback and better collaboration opportunities. Another goal of the prototype is to reduce the time spent by instructors in performing administration activities. These repetitive activities include assessment of deliverables, deliver Lab 1 – TPOT Product Description 13 feedback, determining the status of projects, and assigning tasks. The TPOT prototype will reduce the time spent in the determination of the project status giving instructors with a web page which shows the team's recent activity, task progress, and messages to the instructor. To assess deliverables and provide feedback, the TPOT prototype will give the instructor an easy to navigate interface that shows the submitted deliverables for grading with the correspondent forms to give feedback and post the grade obtained. The instructors will be able to create tasks and assign them to students, teams, or courses with intuitively. 4.1 Prototype Architecture (Hardware/Software) The TPOT prototype is intended to have the same structure and features as the real world product, as seen in Figure 6. The TPOT database will reside on an ODU virtual machine server. Equally, the instructor dashboard will be hosted on an ODU virtual machine server. A virtual environment will be generated in order to test TPOT, using a wide array of operating system and browser combinations. The remainder of the prototype mirrors the planned real product. Figure 6. TPOT Prototype major components. Lab 1 – TPOT Product Description 14 The TPOT database will be a virtual MySQL server. The TPOT database will provide the schema from which the data will be extracted from the team sites. Additionally, the database will contain triggers written in SQL that will alert the involved users of changes in their project. The prototype database will be generated with automatically produced data and simulated student data. The creation of data will be generated with PHP consisting on SQL updates to the database. A bigger testing program must be built to test the multiple connections to the database to ensure that the database is robust. The instructor dashboard will be written in HTML and PHP. It will consist of an interface divided into tabs that will allocate different tables easily customizable to extract the needed information. The dashboard will also contain a series of SQL queries and updates embedded in PHP to populate the tables. (This space intentionally left blank.) Lab 1 – TPOT Product Description 15 The team site page templates will be modified to provide the necessary structure of the data to record the work done by each team member. These modifications include the embedding of Google Apps Scripts to communicate with the TPOT database to upload and update the data. To create the GUI elements of the team site templates, HTML will also be used. The different aspects with respect to the real world solution can be summarized in Table 1. Table 1. Feature comparison between real world product and prototype. 4.2 Prototype Features and Capabilities The main feature of the TPOT prototype will be its novel instructor dashboard and its ability to ease instructors of virtual project course workload. With the dashboard, instructors can Lab 1 – TPOT Product Description 16 determine the status, assigned task, deliverables and feedback of teams in a quick manner. Thanks to the reduced workload on the instructors’ part, the student will benefit with a more focused instructor. This will allow students to develop their collaborative skills that will help them on their future jobs. The other principal feature is to improve the access at information of a project. One of the main obstacles with virtual teams involves the shortage of information. With the TPOT prototype a team member will be able to collect all the necessary information to obtain the project status and his or her role with that status by tracking activities, update alerts, and project status updates. To ensure TPOT prototype improves collaboration, it will have to be extensively tested. The first test will be with fake or real data, whenever possible, by students. After the success of the test, it will augment in scope, testing connectivity and stress-testing the database and software to ensure its robustness. 4.3 Prototype Developmental Challenges One challenge found in the TPOT prototype is the security issue. Because some student teams may involve grants and economic interests, the intellectual property must be secured while the project is being developed. Additionally, privacy is an important factor. All communication between students and instructors should be kept confidential, as well as the grades and feedback involving the student. These risks will be mitigated with the use of best practices while development of the prototype. Another challenge TPOT must surpass in the development of the prototype is the multiple logins problem. The Google Sites that TPOT will oversee require a Google account to access it. TPOT needs its users to be identified in the database individually. The issue then is to see if a joint login, between TPOT and Google, is possible. Lab 1 – TPOT Product Description 17 Finally, the challenge of the prototype is how to efficiently structure the userinterface. The interface can be built in a multiple number of ways, but TPOT must focus in the development of an intuitive, effective interface, and multi-platform. If the interface is not efficient, the prototype will suffer the problem TPOT is trying to solve. The interface must be also intuitive to give the user a simple view while not hindering its usability. To mitigate these factors, TPOT will test with students and instructors to develop an intuitive and well organized interface. Lab 1 – TPOT Product Description 18 Glossary Activity Tab: The tab on the TPOT website that tracks team member activity. Admin Tab: The tab on the TPOT website that provides administrative functions. API: An application programming interface that specifies how some software components should interact with each other. Asynchronous: A student-centered teaching method that uses online learning resources to facilitate information sharing outside the constraints of time and place among a network of people. Back-end: Application or program that serves indirectly in support of the front-end services, usually by being closer to the required resource or having the capability to communicate with the required resource. Beta test: A test for a computer product prior to commercial release. Blackboard: A web-based server software which features course management, customizable open architecture, and scalable design that allows integration with student information systems and authentication protocols. Cloud: A variety of computing concepts that involve a large number of computers connected through a real-time communication network such as the Internet. Collaboration Software: Software suites designed to organize the collaborative efforts of a professional team. Dangling Pointer: Pointers that do not point to a valid object of the appropriate type. These are special cases of memory safety violations. Deliverable: A tangible or intangible object produced as a result of the project that is intended to be delivered to a customer (either internal or external). File Cabinet: File cabinet pages let you store and organize files from your computer's hard drive, making it an easy way to share files with other users of your site. Anyone subscribed to the page will be notified when files are added, changed, or removed. Files Tab: The tab on the TPOT website that assembles all team deliverables. Filter: A higher-order function that processes a data structure (typically a list) in some order to produce a new data structure containing exactly those elements of the original data structure for which a given predicate returns the Boolean value true. Front-end: Application that application users interact with directly. All definitions in the Glossary are taken from Wikipedia, Google, Old Dominion University, Blackboard, WhatIs, Webopedia, or developed by Team Black specifically for use in TPOT. Lab 1 – TPOT Product Description 19 Google Apps Scripts: A cloud-based scripting language for light-weight application development in the Google Apps platform. Google Sites: A structured wiki- and web page-creation tool offered by Google as part of the Google Apps Productivity suite. Grades Tab: The tab on the TPOT website that allows for viewing and assigning of grades for individuals and teams. GUI: A type of user interface that allows users to interact with electronic devices through graphical icons and visual indicators such as secondary notation, as opposed to text-based interfaces, typed command labels, or text navigation. Industry Partner: A business or government professional working with or mentoring a school project team. Instructor Dashboard: A page at the front of the control panel for a website's content management system. Instructor-side: TPOT content located on the instructor dashboard. Manager: The person assuming the task of overall management of all teams coordinated through TPOT. Member: Any individual in any team coordinated through TPOT. Messages Tab: The tab on the TPOT website that allows a user to create, send, receive, and read messages. Method: A subroutine (or procedure or function) associated with an object, and which has access to its data. MySQL: An open-source relational database management system. ODU: Old Dominion University, a dynamic public research institution that serves its students and enriches the Commonwealth of Virginia, the nation and the world through rigorous academic programs, strategic partnerships, and active civic engagement. Overview Tab: The tab on the TPOT website that tracks recent changes to other tabs. Penetration test: An attack on a computer system with the intention of finding security weaknesses, potentially gaining access to it, its functionality and data. Platform: A hardware architecture and a software framework (including application frameworks), where the combination allows software to run. All definitions in the Glossary are taken from Wikipedia, Google, Old Dominion University, Blackboard, WhatIs, Webopedia, or developed by Team Black specifically for use in TPOT. Lab 1 – TPOT Product Description 20 Pointer: A programming language object whose value refers directly to (or "points to") another value stored elsewhere in the computer memory using its address. Project Management Software: See Collaboration Software. Scrape: A computer software technique of extracting information from websites. Student-side: TPOT content located on Google Sites. Tab: A navigational widget for switching between sets of documents. Tasks Tab: The tab on the TPOT website that allows a user to create, post, view, update, and delete tasks. Team: Any collection of like-minded students working on the same project coordinated through TPOT. Team Activity: The various ways in which Google Sites can be used. May include visiting pages, creating and editing pages, uploading files, sending messages, or creating tasks. TPOT: Team Project Organizational Tool. Software being developed in response to a team management problem posed at ODU. User: A manager, member, or industry partner. Virtual: Forms of interaction lacking physical manifestation which are mediated through electronic communication. Virtual Machine: A software-based emulation of a computer. Virtual Team: A team dispersed through time and space which collaborates primarily electronically. Web-based: Software which may be accessed through a web browser and need not be downloaded nor installed. All definitions in the Glossary are taken from Wikipedia, Google, Old Dominion University, Blackboard, WhatIs, Webopedia, or developed by Team Black specifically for use in TPOT. Lab 1 – TPOT Product Description 21 Bibliography Ale Ebrahim, N., Ahmed, S., & Taha, Z. (2009). Virtual Teams: a Literature Review. Journal of Basic Applied Sciences. Allen, I. E., & Seaman, J. (2013). Changing Course: Ten Years of Tracking Online Education in the United States. Babson Suvey Research Group and Quaog Research Group, LLC. Retrieved from http://www.onlinelearningsurvey.com/reports/changingcourse.pdf Departament of Engineering Management and Systems Engineering. (n.d.). Retrieved from Old Dominion Univeristy: http://eng.odu.edu/enma/directory/ppazos.shtml RW3 Culture Wizard. (2010). The Challenge of Working in Virtual Teams. New York: RW3 Culture Wizard. Retrieved from http://rw-3.com/VTSReportv7.pdf