DSpeichert / cloudvcl

Cloud VCL - let your students use virtual environments for class/assignments
https://dspeichert.github.io/cloudvcl/
3 stars 1 forks source link

Functionality Requirements check-up #53

Open abhishekvalanju opened 7 years ago

abhishekvalanju commented 7 years ago

*Note: Do NOT edit the issue, comment only and add to it.

Nuyb commented 7 years ago

Last Updated: 5/11/17

Master Functionalities List

Documented Functionalities Description Implemented in VCL Test Result
Single Sign-On Support Drexel CAS which uses Shibboleth Identity Provider Yes Success
Block Users Remove access to VCL from specific users Yes Success
Manage Instructors Assign instructors the privilege of being an instructor Yes Success
Add/Remove Users to User Groups (Courses) Add and remove users to user groups as necessary Yes Success
CSV Upload Load class list CSV files to VCL in order to give access to users Yes Success
Manual Entry Manually enter student data into user groups and Cloud VCL database Yes Success
Class & Assignment Listing Students can see list of assignments (start/end date) they have and user groups (classes) they're in Yes Success
Student's Environment Management Students can create, delete, and reboot VMs Yes Success
Instructor's Environment Access Instructors can access a student's environment Yes Success
Assignment Management Instructor can create/delete assignments and assign start/end dates Yes Success
Image Management System administrator can assign instructors permission to use one or multiple images available in the OpenStack environment Yes Success
VM User Tracking Track what user had what VM by UUID and IP address Yes Success
OS Support Offers operating support for different commercial operating systems and their features/versions (Windows, Ubuntu, CentOS) Yes Success
Resource Allocation Allocates number of CPU cores, RAM, network allocation, disk space, number of instances Yes Success
Console Log Contains all of the log entries related to the system's functioning and start up behavior (instructor can view their own/student's logs) Yes
VM Customization Support cloud-init features via GUI (the table found below outlines specific features) Yes
Admin Search A search functionality included in the Django admin panel that helps with filtering values for each field Yes
Quota Logs Creation of logs of VM usage No -
Missing Image Interface A view that manages all images that may appear to be missing No -
Firewall Management Allow OpenStack Security Groups to be applied by instructors No -
Health/Performance Monitor Support a health/performance monitor for images No -

VM Customization List

Find more details about VM customization in Cloud VCL here.

Functionalities Description Test Result
Powershell Script (Windows) Provide a Powershell script that will be ran by the instance once it's created
Bash Script (Linux) Provide a Bash script that will be ran by the instance once it's created
Install Packages (Linux) Installs a piece of software through the package manager into your system. Install packages by inserting one package name per line
Update Package Lists on Boot (Linux) Updates the list of available packages and their versions, but does not install or upgrade any packages
Upgrade All Packages on Boot (Linux) Upgrades to the newest versions of the packages you have
Perform Reboot if Required After Package Install/Upgrade (Linux) Performs a reboot if packages are installed and upgraded
Timezone (Linux) Sets a different system timezone for your instance
Hostname (Linux) Sets a new hostname that will replace the hostname generated by default
Default User Password (Linux) Sets the password for the default user
Default User Public Key (Linux) Sets the SSH public key for the default user
Create System Account for Student (Linux) Creates a user in the system based on student's username and a random password (will be provided to student when they enter their instance)
Student User Sudo (Linux) Sets sudo access for the student's system user. It provides administrator privileges (usually available only to the root user) to normal users
abhishekvalanju commented 7 years ago

@Nuyb this table seems a bit light. Can you do a cross-check with the SRS to make sure we aren't leaving anything out?

DSpeichert commented 7 years ago

Also, I think we should revise and publish (submit to Vokolos) new version of SRS that drops the features we decided to skip (you know which - based on the testing plan and the fact we don't have them). That's specifically for @Nuyb to do.

Nuyb commented 7 years ago

Updated both the table and SRS.

Nuyb commented 7 years ago

Update 2 (5/9/17):

  1. Updated Master Functionalities List (Console Log)
  2. Added VM Customization List
  3. Reflected changes in SRS and added new Appendix (B) for VM Customization List
  4. Added @syavatkar as an assignee to this issue so he can use these lists as a reference for all testing purposes (please update the 'Test Result' sections to reflect your testing results).
Nuyb commented 7 years ago

Update 3 (5/11/17):

  1. Added admin search functionality to Master list
  2. Edited SRS to include admin search functionality (3.4.1.2)