210 likes | 236 Views
Taraxacum. Beta Prototype. Magdalena Juri ć Tomislav Bronić Shahid Tarar. 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.
E N D
Taraxacum Beta Prototype Magdalena Jurić Tomislav Bronić Shahid Tarar
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
Today’s Agenda • 1. Project Stuff • project status • important events • experienced issues • statistics • 2. Integration • processsupport tools • model changes • experiences • 3. Testing • Approach • Watir framework 4. Demo 5.Next iteration plan 2019-12-20
Week 48 Project Status • Only backend upgrade • Old bugs fixed • Almost nothing new in frontend • Hope creep among frontend team members 2019-12-20 4
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 2019-12-20 5
Challenge? Go back on track with the project
CurrentProject 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
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 Iteration Goals
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 Experienced Issues
Statistics Hours – Time Line
Process support tools • Redmine – project management • doxygen – for code documentation • Stylecop – for checking code policy 2019-12-20 13
Integration Experiences 2019-12-20
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 2019-12-20 16
Automated testing • Watir framework? • Why Watir? 2019-12-20 17
Watir frameworkAn example • # 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 • require "rubygems" • require "watir-webdriver" • #Global variables • $testsite = "http://localhost:53647/" • $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" 2019-12-20 18
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 2019-12-20 19
System Demo Link on web Video Screenshots 2019-12-20 20
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