Register
Submit a solution
The challenge is finished.

Challenge Overview

BASIC REQUIREMENTS FOR THIS CHALLENGE:
  • Identify if upgrade to latest Polymer framework (version 3.0) will fix the issues with the SUCCESS CRITERIAS mentioned below for the Thor Power Xpert application

PROJECT BACKGROUND
  • The Power Xpert Dashboard provides a graphical user interface to monitor, control, and diagnose Eaton switchgear from a safe location. It provides features required to maintain a switchgear assembly such as:
  • Rich interface to monitor parameters of all devices and study the trends of those parameters
  • Ability to configure and monitor alarms for devices
  • Remotely open/close and enable/disable Arc flash Reduction Maintenance Systems (ARMs) on circuit breakers through control mode
  • Configure, monitor, and control for various Main and Tie Breaker source arrangements
  • Main navigation on the application are:
    • One-line view
    • Elevation view
    • Timeline view
    • Documents Elevation view
  • Before you started, click around across the application to get familiar with the functionality.
  • Let’s discuss any questions you have on challenge forum.
CURRENT TECHNOLOGY STACK
JavaScript Framework
  • AngularJS 1.5.5
  • Polymer 1.7.0

Miscellaneous
  • PDF.js 1.8.188

JavaScript Graphics
  • Highcharts 4.2.1

JavaScript Libraries
  • Hammer.js 2.0.7
  • Moment.js 2.18.1
  • Snap.svg 0.5.1
  • jQuery 2.2.4
  • jQuery UI 1.12.1
Code access
  • Check Ragnar link on challenge forum
  • Install application from our repo, let us know if you face some problems.
  • Follow description below to setup the application
Setup the App
  • Download app as zip from our repo, then extract the zip and navigate to the folder
  • Remove existing /node_modules/ folder
  • Remove ""install": "bower update && bower install"," line from package.json
  • Remove "px-blue-resolver": "git+http://esgit.tcc.etn.com:7990/scm/pxblue/px-blue-resolver.git", line from package.json
  • npm install
  • npm run serve

Add Certificate IP Setting
  • Access https://localhost:9003 to see the app.
  • Change IP address to: https://192.31.41.238
  • You can login with these credentials:
  • Username: admin
  • Password: Eatonit2018$

REPRODUCE CURRENT MEMORY LEAK APP PROBLEM:
Access the Memory tab open in Chrome Developer tools:
  1. Navigate to any page on Dashboard (settings/network for example)
  2. Click "Take a heap snapshot" in the upper left corner of the Chrome Developer tools window
  3. Navigate to a different page on the Dashboard (settings/safety for example)
  4. Click "Take a heap snapshot" again
  5. Return to the page you navigated to in step 1
  6. Click "Take a heap snapshot" again
  7. Repeat steps 3 through 6 as many times as you want
  • Check "Profiles section" in the Chrome Developer tools, you'll see all of the heap snapshots.
  • Every time you took a snapshot, it garbage collected and saved a snapshot of what was in memory.
  • Normally all the memory on the previous page should be freed after page navigation and garbage collection.
  • So each time you return to a page, the memory use should be about the same as the last time you visited.
  • In our case though, the heap snapshots just keep getting bigger each time we navigate which indicates that memory isn't being freed and is "leaking".

SUCCESS CRITERIAS
  • We plan to upgrade current Polymer framework to the latest version 3.0 : https://polymer-library.polymer-project.org/3.0/docs/install-3-0
  • We need to identify if upgrade to latest polymer version 3.0 will fix the issues with these client expected SUCCESS CRITERIAS:
    • Memory leak: Upto 5-10% of un-avoidable memory leak  by the framework is tolerated
    • Load all screens within 3 seconds.
  • Your submission on this challenge will be a guidebook on the next challenge to upgrade the Thor Power Xpert application.
  • List any libraries that possible or not to upgrade
  • Is it possible to maintain current look and feel after upgrade to the latest Polymer framework?
  • Is it possible to maintain current code configuration after upgrade to the latest Polymer framework?
  • Describe any advantages OR obstacles by upgrade to the latest Polymer framework
  • Create document contains to-do list as clear as possible for the future developers to follow when upgrade the existing application

BROWSER REQUIREMENTS:
  • Latest Google Chrome,
  • Firefox,
  • Safari and
  • Internet Explorer (Edge) on Windows/macOS.
  • IE11 and below versions are out of scope.
  • Safari on Windows is out of scope.

JUDGING CRITERIA
  • This challenge will be using subjective decision, we will score against the following:
  • Accuracy of written brief describing Power Xpert Memory Leak root cause
  • Documentation proving root cause (screenshots, logs, other resources)
  • Action plan which suggests ways to mitigate the issue (doesn't need to be code solutions or fixes, just suggestions like if caused by a specific framework interaction, these framework interactions can be changed as suggested in this resource: <example resource>)
  • You may submit in PDF, Word, or any standard document type
  • Submit and listed any issues you think are the Memory Leak root cause.


Final Submission Guidelines

WHAT TO SUBMIT?
  • Document describing your solution to upgrade Power Xpert Memory Leak to use the latest Polymer v3.0
  • Possible to achieve the expected Success Criterias?
  • Verification document contains steps to verify your solution.
  • Follow BASIC REQUIREMENTS FOR THIS CHALLENGE as explained above
  • Video/Image screenshot for Validation Purposes

ELIGIBLE EVENTS:

Topcoder Open 2019

Review style

Final Review

Community Review Board

Approval

User Sign-Off

ID: 30095011