Taraxacum Magdalena Jurić Tomislav Bronić Shahid Tarar Beta Prototype
Make sharing of learning materials easy –Teachers can view, add, remove and edit shared resources E-learning environment –Students can view, browse and comment/discuss resources shared with them Project Recap
3 Today’s Agenda 1. Project Stuff project status important events experienced issues statistics 2. Integration process support tools model changes experiences 3. Testing Approach Watir framework 4. Demo 5.Next iteration plan
4 Week 48 Project Status Only backend upgrade Old bugs fixed Almost nothing new in frontend Hope creep among frontend team members
Supervisor/Customer review Not satisfied with our project status and project results Additional request for frontend (UI, search, navigation) Suggestion: Code rush until beta presentation
Challenge? Go back on track with the project
Current Project Status Big improvement in frontend implementation Implemented planned features and some of new customer requests Improvements since alpha prototype –Fixed bugs, Test cases generated –Exercises, Flashcards, Notes –My content, Learn page –Enhanced GUI and user experience –Additional features implemented
Iteration Goals Planned Implement all planned features for iteration from week 47 until 51 Implement an Automated Test Framework Current status 26/28 planned use cases done Some of customer requests implemented Testing framework implemented
Experienced Issues Negative Hope creep Lack of time Sleepless nights Lack of experience Project leader away for 3 days of last week Positive Gaining experience No cultural problems 94/28/2015
Statistics Hours – Time Line MemberW47W48W49Total Bronic Farid Jiang Juric Klarin Petrina Schoonhoven Tarar Total = 555h
Statistics
Development Process
Process support tools Redmine – project management doxygen – for code documentation Stylecop – for checking code policy
14 Integration Experiences
Integration Experiences Backend (Magdalena, Tomislav) Model extended with 9 new classes (Exercise, Flashcard and Note support) Service methods, repositories and mapping for all new entities No problems encountered Frontend (Anne Jon, Mateo, Li) Template improvement Problem – no experience with AJAX and jQuery Planned features covered Started too late
Testing (Shahid and Adil) Approach First iteration Second iteration Test cases criteria Pass Fail
Automated testing Watir framework? Why Watir?
Watir framework An example require "rubygems" require "watir-webdriver" #Global variables $testsite = " $browser = Watir::Browser.new :chrome $failed_tests = Array.new #Test settings $username = "taraxacum" $password = "taraxacum" puts "\nExecuting GEN 1 - Login" $browser.goto($testsite); puts "Taraxacum Home Open" # Test case $browser.goto($testsite); $browser.text_field(:name => "username").set $username $browser.text_field(:name => "password").set $password $browser.button(:value, "Log In").click puts "Checking Logged in" if $browser.text.include? "Welcome to Taraxacum" puts "- Test Passed. Found the test string: 'Welcome taraxacum'. Actual Results match Expected Results." else puts "- Test Failed! Could not find: 'Welcome taraxacum'." end
System Demo Browse My content page for teacher –Create new course/topic/resource –Organize course –Add flashcard set Learn page for student (flashcards, subscriptions) Exercises for student Notes for student
System Demo Link on web Video Screenshots
Next iteration planning Customer Review Implementation of –Better user experience (AJAX and jQuery for GUI) –Comments and ratings –Search –Finish with additional requirements Code refactoring and bug fixing Testing Final Documentation Final Product