-
Notifications
You must be signed in to change notification settings - Fork 4
GSoC 2014 Dorota Filipczuk, Irish Medina, Jayesh Lahori
Dorota Filipczuk
Irish Medina
Jayesh Lahori
A student at University of Southampton in England, UK.
The project consists of setting up frameworks for automated tests for the Systers' Volunteer Management System. The main goal of the project is to make reusable and automated scripts for regression testing.
To be updated and added.
To be added.
To be added.
- I installed Virtual Box and Vagrant, did some background reading (Vagrant, Selenium, testing) and met with Shweta and Wendy to discuss the progress.
- N/A.
- N/A
- Specific software needs to be installed on the VM to start.
- Specific software needs to be installed on the VM to start.
- Create a simple "hello world" script, continue reading and start developing the test framework.
- Right on track.
- Learnt how to use Selenium.
- Used a Vagrant file from systers-autotest folder to install another X Windows for development.
- Set up Selenium to record in Python language.
- The Systers-Dev Wiki page did not recognize my username and I could not log in.
- Not resolved.
- Yes, the issue still exists - I informed Rose about it.
- Yes.
- Use Selenium to create a login test.
- Work on the test framework.
- Right on schedule.
- Created two login check test cases for the Systers Wiki login page.
- Created a repository on GitHub and pushed my code there.
- Attempted to run my code on the systers-autotest VM.
- Had my code reviewed by my mentor.
- Registered at podio.com and added tasks from my proposal to the project.
- I was unable to log in to Systers-Dev Wiki.
- I was unable to execute my scripts on the systers-autotest VM, because Python did not recognize Selenium bindings.
- The X Windows works slowly and freezes if I have two programs opened.
- Yes - this has been resolved by Oregon State University Open Source Lab.
- No.
- No.
- Yes, the second issue still exists. I talked to Wendy about it, and she e-mailed Rose. The third one is not a big issue for me, the VM is still usable - but more memory needs to be assigned to the X Windows.
- Yes.
- Create a Maven file to execute my scripts.
- Write some functions to set up the test environment considering different users.
- Learn more about the VMS project to start writing scenarios for the test cases.
- Still on the schedule.
- Created a Maven project for my scripts and attempted to run it (unsuccessfully).
- Started setting up the test environment for multiple users.
- Received VMS project documentation.
- Started writing test scenarios.
- I still cannot run Python scripts on the VM, so I also could not try running the Maven project on the VM.
- No.
- Yes - my mentor Wendy gave Rose her SSH key, so she should receive the VM access soon to fix my Python lib issue.
- Yes.
- Finish setting up the test environment.
- Start writing test cases.
- Still right on schedule.
- Did more reading and research in order to fix my pom.xml file to run my project with Maven (still unsuccessfully).
- While waiting for my Python lib issue to be fixed, created more test cases and created a document where I wrote some more test scenarios based on documentation received from Irish.
- My Python lib issue is still not fixed.
- No.
- Yes, I will receive an updates vagrant file soon (Rajesh will generate a new image).
- Yes (as mentioned above).
- Continue developing the test cases. After getting the new vagrant file try to run them on the VM and also try to run my Maven project on the VM.
- As I cannot run Python scripts on the VM, which is also the reason why I cannot run my Maven project on the VM, I decided to focus on the test cases now. I believe my project is still on track, but I do the tasks in different order.
I will be attending the University of Waterloo in Canada to pursue a master's degree in Computer Science, with a research area in machine learning.
Recently, I was awarded the Generation Google Scholarship, which is granted to select students from across Canada and the United States who exemplify leadership, a passion for computer science and technology, and have achieved a strong record of academic achievement.
In my free time, I enjoy pwning noobs, first-person shooters, collecting trophies on PlayStation Network, independent travel and exploration, and getting more involved in open source development.
You can find more information about me on my LinkedIn page. If you have time, please add me!
Profile Links
Gmail
Google+
GitHub
LinkedIn (Add Me!)
To be updated …
To be updated …
To be updated …
To be updated …
- Jayesh and I decided how to split up the work between us. Jayesh will be working on the administrator functionality while I will be working on the volunteer functionality.
- Rose (the client) was able to assign priorities to the user stories I had written which enabled me to revise my timeline accordingly.
- After corresponding with Stephen via email, we were able to determine what the first coding task would be. We decided we would be using the built in Django authentication method (and integrate SocialAuth, Single Sign On later)
- I was able to install the pc-web VM and got it to work.
- I designed a preliminary database schema for VMS.
- I did more tutorials on Django and PostgreSQL.
- None.
- N/A
- N/A
- N/A
- Get the VM set up for VMS
- Set up the VMS project (creating the project)
- Once everything is set up, I plan on working on the following user stories for the week: "Sign up for Volunteer Account" and "Edit Volunteer Account Details".
- On track so far. Hopefully the VM for VMS will be set up soon.
- Set up the Django project.
- Set up the VM and have been able to run the project on it successfully. I created a user and a database on PostgreSQL on the VM as the database backend for the project.
- Revised database schema/ER diagram so that it also includes the authentication tables automatically provided by Django.
- The ER diagram can be found here
- Came up with the Django models that correspond to the database tables in the schema/ER diagram.
- The models can be found here
- Implemented functionality that allows a user to create a new volunteer (by filling out a form and submitting the form). The form is then processed and a new volunteer is stored in the database (if the form is valid).
- Implemented the user story “View Volunteer Profile". The user is able to view Volunteer Profiles which displays information such as name, city, address, country, email address, a short biography, etc.
- Implemented the user story “Customize Volunteer Profile”. The user is able to customize/edit information for a particular Volunteer such as name, city, address, country, email address, etc.
- Jayesh wanted to implement the authentication functionality from scratch instead of using the built in authentication functionality that the Django framework provides.
- There are also dependencies in our timelines that need to be resolved as soon as possible. I made a suggestion early last week (on Podio) of a way to potentially solve the dependency issues but so far I have yet to receive any input. Lack of communication may also be an issue.
- From Jayesh’s post on Podio earlier today, it looks like he is using the authentication tables provided by Django, but we can’t really be sure unless we see the implementation.
- The dependencies in our timelines has not been resolved yet. I posted my suggestions (again) on Podio and I hope to get a reply from Jayesh soon.
- If I can get a reply soon, then no.
- Solve timeline dependencies.
- Implement two user stories. I’m not sure which ones yet because we still have to resolve timeline dependencies.
- I would say we are behind because we have not solved our timeline dependencies yet (we should have done this last week).
- Jayesh and I wrote an Integrated Timeline.
- Implemented the user story “Search for Volunteers”
- Implemented the user story “Upload Resume to Volunteer Profile”
- Implemented the user story “Delete Resume Uploaded”
- Wrote unit tests for business logic
- There was difficulty in trying to fix the dependencies in our timelines.
- It looks like the issue is almost resolved. Jayesh still has to add “Edit Jobs” and “Delete Jobs” to his timeline.
- No
- Solve timeline dependencies (we are almost there).
- Schedule a code review.
- Get a code review completed by the end of the week.
- Implement the user story “Delete Volunteer”
- Implement the user story “View a List of Volunteer Jobs to sign up for”
- Implement the user story “Sign up for a Volunteer Job”
- Progress is currently on track.
- Implemented the user story “Delete Volunteer”
- Implemented the user story “View a list of all volunteer jobs to sign up for”
- Implemented the user story “Sign up for a Volunteer Job”
- Wrote unit tests for all business logic
- We still haven’t come up with an agreement on the Django models. Integrating our code together will be difficult if we don’t come up with an agreement on the models.
- No. Still waiting for a reply from Jayesh.
- No
- Come up with an agreement on Django models
- Schedule a code review.
- Get a code review completed by the end of the week.
- Implement the user story “View Volunteer Jobs Signed up for”
- Implement the user story “Add Organizations”
- Add proper authorization to functionality implemented so far.
- Progress is currently on track.
- Fixed the application such that Jobs contain Shifts and have Volunteers sign up for shifts instead (this required me to make quite a few changes to the code I had written previously).
- Implemented user story “View Volunteer Shifts Signed up for”
- Wrote unit tests for business logic added since last week.
- Submitted a Pull Request. The mentors should now be able to review the code I have written so far.
- We still haven’t come up with an agreement on the Django models. Integrating our code together will be difficult if we don’t come up with an agreement on the models.
- I have been experiencing overheating issues with the laptop that I do most of my development on (since Friday). I hope to get the issue fixed by Tuesday once I buy some thermal compound. For now I am developing on a different machine.
- Not yet.
- No
- Come up with an agreement on Django models.
- Fix any issues the may arise from the code review.
- Implement user story “Cancel Volunteer Job Signed up for”
- Implement user story “Add Organizations”
- Implement user story “Select Organization when Creating a Volunteer”
- Progress is currently on track.
- Implemented user story “Cancel Volunteer Shift Signed Up For”
- Implemented user story “Add Organizations”
- Implemented user story “Select Organizations from Volunteer Registration page”
- Wrote unit tests for business logic added since last week.
- We still haven’t come up with an agreement on the Django models.
- Jayesh sent me a reply on Podio, I will reply beginning this week since it’s been a busy weekend for me.
- No
- Come up with an agreement on Django models.
- Fix any issues the may arise from the code review.
- Implement user story “Edit Organization in Volunteer Profile”
- Implement user story “Enter Volunteer Hours”
- Implement user story “View Volunteer Hours”
- Progress is currently on track.
- Implemented user story “Edit Organization in Volunteer Profile”
- Implemented user story “Enter Volunteer Hours”
- Implemented user story “View Volunteer Hours”
- Wrote unit tests for business logic added since last week.
- Agreement on the Django models is still in progress.
- Not yet.
- No
- Come up with an agreement on Django models.
- Fix any issues the may arise from the code review.
- Need to get feedback from Rose on how Volunteers should enter their hours (question was posted on Podio early last week). Depending on Rose’s feedback, I may have to make some changes to the work I implemented this/last week.
- Implement user story “Delete Volunteer Hours”
- Implement user story “Edit Volunteer Hours”
- Progress is currently on track.
- Implemented user story “Delete Volunteer Hours”
- Implemented user story “Edit Volunteer Hours ”
- Wrote unit tests for business logic added since last week.
- Agreement on the Django models is still in progress.
- Not yet.
- No
- Come up with an agreement on Django models.
- Fix issues that arose from code review. In particular, looking at proper error handling in Django and also renaming of directories.
- Need to get feedback from Rose on how Volunteers should enter their hours (question was posted on Podio early last week). Depending on Rose’s feedback, I may have to make some changes to the work I implemented this/last week.
- Implement user story “View Confirmation Message for Hours Entered”
- Work on the first half of the user story “View Individual Volunteer Report”
- Progress is currently on track. However, progress on coming up with an agreement on Django models has been very slow.
- Implemented user story “View Confirmation Message for Hours Entered”
- Implemented user story “View Individual Volunteer Report by Month and Year”
- Wrote unit tests for business logic added since last week.
- Progress on coming up with an agreement on the Django models/database schema has been going really well with the help of Stephen.
- Updated some user stories to reflect that Volunteers are signing up for Shifts and entering their hours for Shifts as opposed to Jobs.
- None
- N/A
- N/A
- We should be able to come up with a definite agreement on the database schema by next week the way that things are going.
- Still need to fix issues that arose from code review. In particular, looking at proper error handling in Django and also renaming of directories. I am hoping to look into this early next week.
- Implement user story “View Individual Volunteer Report by Job and Shift”.
- Implement user story “View Individual Volunteer Hours by Organization”.
- Progress is currently on track.
- Implemented user story “View Individual Volunteer Report by Job”
- Implemented user story “View Individual Volunteer Hours by Organization”
- Wrote unit tests for business logic added since last week.
- Started working on installation documentation which should be complete in a day or two.
- None
- N/A
- N/A
- Complete project installation documentation.
- Work on the suggestions that Stephen made.
- Implement user story “View Volunteer Report by Country, State and City”.
- Implement user story “View Volunteer Report by Job".
- Progress is currently on track.
- Implemented user story “View Volunteer Report by Country, State and City”
- Implemented user story “View Volunteer Report by Job”
- Wrote unit tests for business logic added since last week.
- Completed installation documentation.
- Worked on some of the suggestions provided by Stephen.
- None
- N/A
- N/A
- Continue working on the suggestions that Stephen made.
- Add proper authorization to functionality so far.
- Work on integrating my code with Jayesh’s.
- Progress is currently on track.
- Work on the suggestions that Stephen made.
- Wrote documentation on design and database schema.
- Added authorization.
- None
- N/A
- N/A
- Still need to work on integrating code with Jayesh’s
- Add any additional documentation.
- Add any additional tests.
- Progress is currently on track.
I am a Computer Science Undergraduate Student at IIIT-Hyderabad,India. I enjoy doing Algorithmic Coding & Implementing Backend's for Systems. I have also worked on Android, I use Linux as my Primary/Only OS
LinkedIn Profile Portfolio Github Facebook
I'll be working on Volunteer Management System (VMS) alongside Irish.This project aims to build a product which will be used by ABI Admin's to manage volunteers in terms of various metrics like number of hours worked, team etc.
To be added later
- I understood the requirements of the project from Rose.
- Made Database Schema
- Spent some time learning Django
- Since, this week didn't involved any coding, therefore there were not any significant roadblocks involved
- NA
- No
- No
- Continue with exploring Django
- Implement login functionality
- I believe its currently in line with the schedule which I had planned earlier
- Spent some time learning Django
- Implemented Registration,Login,Logout functionality.
- There was a confusion regarding schema and Irish's dependency on my task.
- Some of it still exist, Schema part is resolved, currently I have used auth tables for login.
- Choice of database, currently it's sqlite3
- Choice of database
- Continue with exploring Django
- Implement Add/Delete/View Volunteer Info
- Inline with my timeline.
- Implemented Create Event functionality.
- Resolved Timeline Issues & Dependencies with Irish
- Edit/Delete Events
- No
- I tried implementing Edit/Delete Events but was facing some problem in Editing.
- No
- Complete Edit/Delete Events
- A bit behind my timeline. (considering Edit/Delete Events Part)
- Implemented Delete/Edit Event functionality.
- Implemented functionality to assign jobs to volunteers
- Implemented Delete/Edit for jobs
- Edit/Delete Volunteers, because this involves a one to one relationship to users table from auth,
- No
- Implement Edit/Delete Volunteers.
- Clarify on parameters to be added to job functionality
- Need to talk with Rose, have informed her about the same
- Complete Job parameter works
- Allow volunteer to signup for job
- Code-Review
- Ahead of timeline
- Documented the code till date
- Added more error validations
- Submitted for code review
- Integration of models
- No
- Integrate models
- Unit Testing
- How to do Unit Testing?
- Complete Integration of Models
- Allow volunteer to signup for job
- On Time!
- Changed Existing Models
- Implemented Search Event Functionality
- Discussed about Job Parameters with Rose
- Took idea about Code Review from Steve.
- Let volunteers opt for job
- No
- Let volunteers opt for job, sue to model structure
- No
- Let volunteers opt for job
- Implemented next week's feature this week instead of this week
- Admin assign job re-implemented with new models
- Search volunteers by organization, auto incrementing no of volunteers on the basis of registrations.
- Search job by event, given proper UI and functionality changed to taking data from POST request
- Search job by time
- No
- Search by time : Not able to write proper mysql query on foreign keys in Django
- No, will resolve it by today or tomorrow
- Let volunteers opt for job
- Decide on final schema to be used and collaborate with Irish for code integration
- On Time mostly,as in some things from next week implemented and the ones for this week are in middle (under construction :P)
- Search job by time completed
- Volunteer given option to volunteer for tasks.
- None
- NA
- No
- No
- Work on generation of reports
- Work on model integration
- On Time.
- Implemented Reports functionality
- Learnt about Testing basics
- Added unit tests for models validation
- None
- NA
- No
- No
- Enhance Reporting & Add export to PDF
- Add regression tests for testing views
- Remove redirection in case of success or failure and improve error for multiple unique attributes in models (Shift & Job)
- On Time.
- Added Textual content to Reports
- Added tests for views
- Check for error reporting in case of multiple unique fields
- None
- NA
- No
- No
- Work on Stephen's comments on code & accordingly decide the week's agenda
- Look on integration with Irish's code
- On Time.
- Updated access control for admin/volunteer functionality.
- Email to volunteers in case of creation of new jobs
- Email to concerned volunteer if he/she is assigned job by a volunteer
- Corrected null errors for forms
- worked on few inputs from steve
- None
- NA
- No
- No
- Continue on Stephen's comments, especially for coding conventions
- Look on integration with Irish's code
- Documentation
- Add few tests for new views.
- On Time.
Documentation
GSoC Students