SlideShare a Scribd company logo
Open Source Support
Briefing
Unicon
Quarter 1
Briefing Agenda
1. Improving Processes
2. Community
3. OSS Mechanics
4. Sustaining Engineering
5. Community Spotlight
6. Q&A
Improving Processes
Processes
Contributing Guide
Change request template
Continuous Integration
New
Improved
Improved
Contributing Guide 📝
https://github.com/Jasig/uPortal/blob/master/CONTRIBUTING.md
Change Request Template 📝
https://github.com/Jasig/uPortal/blob/master/PULL_REQUEST_TEMPLATE.md
What needs to be tested?
uPortal 4
uPortal 5
21 Sponsored Portlets
4 Incubation Projects
Continuous Integration 👷
How is it built?
Linux
Windows
Java 7 (uP4)
Java 8
Gradle (uP5)
Maven
How is it viewed?
Chrome
Edge
Firefox
Internet Explorer
Safari
Desktop
Mobile
Tablet
Additional Requirements
Community Licence
Agreement
Internationalization
Accessibility
Code Style
Security
54 builds + 15 browser combos + 5 additional checks
74 total combinations, each needs to be tested
What needs to be tested?
☑ uPortal 4
☑ uPortal 5
☑ 21 Sponsored Portlets
☑ 4 Incubation Projects
What is done? 👷
How is it built?
☑ Linux
☑ Windows
☑ Java 7 (uP4)
☑ Java 8
☑ Gradle
☑ Maven
How is it viewed?
⬜ Chrome
⬜ Edge
⬜ Firefox
⬜ Internet Explorer
⬜Safari
⬜ Desktop
⬜ Mobile
⬜ Tablet
Additional Requirements
⬜ Community Licence
Agreement
⬜ Internationalization
⬜ Accessibility
☑ Code Style
⬜ Security
☑ 55 Test suites are set up, each runs automatically for changes
⬜ 19 Test suites are being researched
Current Project Status 🚥
https://github.com/Jasig/uPortal#readme
Community
https://wiki.jasig.org/display/UPC/uPortal+5+Project+Overhaul
1. Implement a Gradle-based build
2. Process open pull requests
3. Remove @Deprecated, unreachable, and/or unused sources
Legacy DLM | Legacy PAGS | Tab Groups | Opt-in DLM fragments
Suggestions??
4. Decompose uPortal sources into tightly-scoped jars built with Gradle
5. Move everything that doesn’t go into a vanilla uPortal war file to
uPortal 5 High-Level Status Update
Done
Done
In Progress
TODO
TODO
TODO
https://www.apereo.org/conferences/open-apereo-2017
Open Apereo 2017 | Philadelphia
June 4 (Sunday) - 8 (Thursday)
SUNDAY: Pre-conference Workshops (MyUW, uPortal 5, & Soffits); Welcome Reception
MONDAY: Regular Sessions; Showcase Reception
TUESDAY: Regular Sessions; Social Events
WEDNESDAY: Regular Sessions (morning); uPortal Collaboration
THURSDAY: uPortal Collaboration
Large number of uPortal sessions on the program
State of the uPortal
uPortal Collaboration Days
Immediately following the conference (afternoon Wed. and all day Thurs.)
Share
Work together
Discuss plans
Articulate a road map
Contribute ideas here: https://goo.gl/HYVe88
OSS Mechanics
Influencing Sustaining Engineering Direction
Closing ZenDesk Tickets
Status Description
New The case has been newly created and will be reviewed, assigned, and responded to according to the service level.
Open An engineer is assigned to the case, communicating with the contact, and actively pursuing a resolution.
Pending The engineer is waiting for input from the contact to make further progress on the case.
Solved* One of the following has occurred:
The contact agrees that the engineer has provided a satisfactory resolution.
The contact understands there is no solution to the problem at hand and the problem is not a result of a defect.
The contact agrees the problem is due to a defect and the engineer has created a corresponding development issue in
the project. The engineer has also provided a satisfactory work-around or no work-around is available.
The engineer has made multiple attempts to reach the contact who opened the case and the contact has not
responded.
The contact can reopen the case within a few days of it being marked as solved if the issue is not actually resolved.
Closed A few days after a case is solved, it is automatically closed and can no longer be reopened. However, the contact can
easily create follow-up cases for closed cases.
Closing ZenDesk Tickets - Solved
The contact agrees that the engineer has provided a satisfactory resolution.
The contact understands there is no solution to the problem at hand and the
problem is not a result of a defect.
The contact agrees the problem is due to a defect and the engineer has created a
corresponding development issue in the project. The engineer has also
provided a satisfactory work-around or no work-around is available.
The engineer has made multiple attempts to reach the contact who opened the
case and the contact has not responded.
The contact can reopen the case within a few days of it being marked as solved if
the issue is not actually resolved.
Sustaining Engineering
Security Enhancements 🔐
UP-4756: Ensure links have a valid href destination
Map Portlet: Upgrade Apache Commons Collections to v3.2.2 (Thanks Glenn
Lewis)
Process Improvements 📈
Add RemarkLint
Setup Stylelink
Add findbugs gradle plugin
Add internationalization and accessibility to PR checklist
Run continuous integration on Windows using appveyor
Documentation 📓
Accessibility Summary added to README
Add documentation on configuring with JNDI
Enhance Soffit documentation with more details
Add CI status badges to README
General README improvements
Related uPortal Project Work 👨👩👧👦
Travis CI (linux builds) and AppVeyor (windows builds) were set up for portlets
Announcements portlet got a refresh and some library updates
The UI rewrite of Email Portlet was merged (Thanks Christian Cousquer)
Feedback portlet got some fixes (A lot of work by Jonathan Tran - thanks!)
Map portlet got some Documentation and a security fix (as mentioned)
Notification Portlet got a header icon refresh
The JSPC plugin got support for Tomcat 8.5 (Thanks Yudhi Karunia Surtan)
JSPC plugin And better support for the includeInProject flag (Thanks Marco
Changes to Note ☑
Quickstart Data: moved 'background-preference' from all-lo to authenicated-lo
Upgraded on some ancillary dependencies, like Font Awesome, jQuery,
Backbone
Upgraded portlets: NewsReader, Announcements
If the Gradle build fails, fail the Ant build
Removed XML file-based PAGS configuration
Removed XML file-based DLM configuration
2017 Q2 Plans 🔮
General
Process pull requests in a timely manner
Move more documentation into GitHub
Continue process improvements
Address slow group SQL query
uPortal 5
Decompose uPortal into hierarchical sub-modules
Remove deprecated code
Community Spotlight
Question & Answer
Look for the Slides on the
Unicon Blog
https://www.unicon.net/about/blogs

More Related Content

PPTX
Cultural learnings of testing for make benefit glorious nation of startup
PDF
What I learned from 5 years of sciencing the crap out of DevOps
PPTX
Product Development Process
PDF
JavaLand 2022 - Software architecture in a DevOps world
PPTX
Software as Craft
PDF
Vmware2021 why even devop nicolefv
PDF
Debugging distributed systems
PPTX
The Data Behind DevOps: What Does it Take to be a High Performer? Jenkins Wor...
Cultural learnings of testing for make benefit glorious nation of startup
What I learned from 5 years of sciencing the crap out of DevOps
Product Development Process
JavaLand 2022 - Software architecture in a DevOps world
Software as Craft
Vmware2021 why even devop nicolefv
Debugging distributed systems
The Data Behind DevOps: What Does it Take to be a High Performer? Jenkins Wor...

What's hot (20)

PDF
Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...
PDF
JavaLand 2022 - Debugging distributed systems
PDF
TDC 2021 - Better software, faster: Principles of Continuous Delivery and DevOps
PPTX
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
PDF
Software architecture in a DevOps world
PDF
Embedded Extreme Programming - Embedded Systems Conference 2002-2004
DOCX
Successful writing at work copyright 2017 cengage learn
PDF
JUG CH September 2021 - Debugging distributed systems
PDF
Devops at SlideShare: Talk at Devopsdays Bangalore 2011
PDF
Principles of Continuous Delivery and DevOps
PPTX
Tools Won't Fix Your Broken DevOps
PPTX
DevOps and All the Continuouses w/ Helen Beal
PDF
Debugging distributed systems
PDF
Debugging Production Applications in Nomad using Lightrun
PDF
Continuous integration and delivery
PPTX
TDD: Facts and Fallacies
PDF
Test Driven Development for Embedded C
PDF
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
PPTX
The Key to High Performance - What the Data Says
PDF
Drupal and Devops , the Survey Results
Skills Matter DevSecOps eXchange Forum 2022 - Software architecture in a DevO...
JavaLand 2022 - Debugging distributed systems
TDC 2021 - Better software, faster: Principles of Continuous Delivery and DevOps
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
Software architecture in a DevOps world
Embedded Extreme Programming - Embedded Systems Conference 2002-2004
Successful writing at work copyright 2017 cengage learn
JUG CH September 2021 - Debugging distributed systems
Devops at SlideShare: Talk at Devopsdays Bangalore 2011
Principles of Continuous Delivery and DevOps
Tools Won't Fix Your Broken DevOps
DevOps and All the Continuouses w/ Helen Beal
Debugging distributed systems
Debugging Production Applications in Nomad using Lightrun
Continuous integration and delivery
TDD: Facts and Fallacies
Test Driven Development for Embedded C
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
The Key to High Performance - What the Data Says
Drupal and Devops , the Survey Results
Ad

Similar to 2017 Q1 Open Source Support Briefing (20)

PDF
2016 Q1 uPortal Open source Support briefing
PPTX
2016 Q4 Open Source Support Briefing
PPTX
Jira Training
PPTX
Jira fundamentals
PPTX
Bug trackingworkflow
PDF
2015 Q1 uPortal Open Source Support briefing
PDF
Q4 2014 uPortal Open Source Support briefing
KEY
AtlasCamp US 2012 Keynote, Jean-Michel Lemieux
PDF
Finding the elusive issue: mastering quick search in JIRA
PDF
Agile & ALM tools
PPTX
Answer powerpoint template
PPTX
NDC London 2020 - Challenges of Managing CoreFx Repo -- Karel Zikmund
PDF
An Open Source Infrastructure supporting the development and Quality assessme...
 
PPTX
2017 Q4 uPortal Open Source Support Briefing
PPTX
2017 Q2 uPortal Open Source Support Briefing
PPTX
Q3 2016 uPortal Open Source Support Briefing
KEY
Open Social In The Enterprise
PDF
Continuous Delivery Overview
PDF
Equella Q3 2017 Quarterly Briefing
DOC
ChrisGarrisonFeatherweightArchitecture-DetailDesign
2016 Q1 uPortal Open source Support briefing
2016 Q4 Open Source Support Briefing
Jira Training
Jira fundamentals
Bug trackingworkflow
2015 Q1 uPortal Open Source Support briefing
Q4 2014 uPortal Open Source Support briefing
AtlasCamp US 2012 Keynote, Jean-Michel Lemieux
Finding the elusive issue: mastering quick search in JIRA
Agile & ALM tools
Answer powerpoint template
NDC London 2020 - Challenges of Managing CoreFx Repo -- Karel Zikmund
An Open Source Infrastructure supporting the development and Quality assessme...
 
2017 Q4 uPortal Open Source Support Briefing
2017 Q2 uPortal Open Source Support Briefing
Q3 2016 uPortal Open Source Support Briefing
Open Social In The Enterprise
Continuous Delivery Overview
Equella Q3 2017 Quarterly Briefing
ChrisGarrisonFeatherweightArchitecture-DetailDesign
Ad

Recently uploaded (20)

PPTX
Online Work Permit System for Fast Permit Processing
PDF
AI in Product Development-omnex systems
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPT
Introduction Database Management System for Course Database
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Understanding Forklifts - TECH EHS Solution
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Digital Strategies for Manufacturing Companies
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
top salesforce developer skills in 2025.pdf
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Online Work Permit System for Fast Permit Processing
AI in Product Development-omnex systems
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Introduction Database Management System for Course Database
Internet Downloader Manager (IDM) Crack 6.42 Build 41
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
VVF-Customer-Presentation2025-Ver1.9.pptx
Understanding Forklifts - TECH EHS Solution
PTS Company Brochure 2025 (1).pdf.......
Softaken Excel to vCard Converter Software.pdf
Digital Strategies for Manufacturing Companies
Design an Analysis of Algorithms II-SECS-1021-03
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Wondershare Filmora 15 Crack With Activation Key [2025
top salesforce developer skills in 2025.pdf
Adobe Illustrator 28.6 Crack My Vision of Vector Design
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)

2017 Q1 Open Source Support Briefing

  • 2. Briefing Agenda 1. Improving Processes 2. Community 3. OSS Mechanics 4. Sustaining Engineering 5. Community Spotlight 6. Q&A
  • 4. Processes Contributing Guide Change request template Continuous Integration New Improved Improved
  • 6. Change Request Template 📝 https://github.com/Jasig/uPortal/blob/master/PULL_REQUEST_TEMPLATE.md
  • 7. What needs to be tested? uPortal 4 uPortal 5 21 Sponsored Portlets 4 Incubation Projects Continuous Integration 👷 How is it built? Linux Windows Java 7 (uP4) Java 8 Gradle (uP5) Maven How is it viewed? Chrome Edge Firefox Internet Explorer Safari Desktop Mobile Tablet Additional Requirements Community Licence Agreement Internationalization Accessibility Code Style Security 54 builds + 15 browser combos + 5 additional checks 74 total combinations, each needs to be tested
  • 8. What needs to be tested? ☑ uPortal 4 ☑ uPortal 5 ☑ 21 Sponsored Portlets ☑ 4 Incubation Projects What is done? 👷 How is it built? ☑ Linux ☑ Windows ☑ Java 7 (uP4) ☑ Java 8 ☑ Gradle ☑ Maven How is it viewed? ⬜ Chrome ⬜ Edge ⬜ Firefox ⬜ Internet Explorer ⬜Safari ⬜ Desktop ⬜ Mobile ⬜ Tablet Additional Requirements ⬜ Community Licence Agreement ⬜ Internationalization ⬜ Accessibility ☑ Code Style ⬜ Security ☑ 55 Test suites are set up, each runs automatically for changes ⬜ 19 Test suites are being researched
  • 9. Current Project Status 🚥 https://github.com/Jasig/uPortal#readme
  • 11. https://wiki.jasig.org/display/UPC/uPortal+5+Project+Overhaul 1. Implement a Gradle-based build 2. Process open pull requests 3. Remove @Deprecated, unreachable, and/or unused sources Legacy DLM | Legacy PAGS | Tab Groups | Opt-in DLM fragments Suggestions?? 4. Decompose uPortal sources into tightly-scoped jars built with Gradle 5. Move everything that doesn’t go into a vanilla uPortal war file to uPortal 5 High-Level Status Update Done Done In Progress TODO TODO TODO
  • 13. Open Apereo 2017 | Philadelphia June 4 (Sunday) - 8 (Thursday) SUNDAY: Pre-conference Workshops (MyUW, uPortal 5, & Soffits); Welcome Reception MONDAY: Regular Sessions; Showcase Reception TUESDAY: Regular Sessions; Social Events WEDNESDAY: Regular Sessions (morning); uPortal Collaboration THURSDAY: uPortal Collaboration Large number of uPortal sessions on the program State of the uPortal
  • 14. uPortal Collaboration Days Immediately following the conference (afternoon Wed. and all day Thurs.) Share Work together Discuss plans Articulate a road map Contribute ideas here: https://goo.gl/HYVe88
  • 17. Closing ZenDesk Tickets Status Description New The case has been newly created and will be reviewed, assigned, and responded to according to the service level. Open An engineer is assigned to the case, communicating with the contact, and actively pursuing a resolution. Pending The engineer is waiting for input from the contact to make further progress on the case. Solved* One of the following has occurred: The contact agrees that the engineer has provided a satisfactory resolution. The contact understands there is no solution to the problem at hand and the problem is not a result of a defect. The contact agrees the problem is due to a defect and the engineer has created a corresponding development issue in the project. The engineer has also provided a satisfactory work-around or no work-around is available. The engineer has made multiple attempts to reach the contact who opened the case and the contact has not responded. The contact can reopen the case within a few days of it being marked as solved if the issue is not actually resolved. Closed A few days after a case is solved, it is automatically closed and can no longer be reopened. However, the contact can easily create follow-up cases for closed cases.
  • 18. Closing ZenDesk Tickets - Solved The contact agrees that the engineer has provided a satisfactory resolution. The contact understands there is no solution to the problem at hand and the problem is not a result of a defect. The contact agrees the problem is due to a defect and the engineer has created a corresponding development issue in the project. The engineer has also provided a satisfactory work-around or no work-around is available. The engineer has made multiple attempts to reach the contact who opened the case and the contact has not responded. The contact can reopen the case within a few days of it being marked as solved if the issue is not actually resolved.
  • 20. Security Enhancements 🔐 UP-4756: Ensure links have a valid href destination Map Portlet: Upgrade Apache Commons Collections to v3.2.2 (Thanks Glenn Lewis)
  • 21. Process Improvements 📈 Add RemarkLint Setup Stylelink Add findbugs gradle plugin Add internationalization and accessibility to PR checklist Run continuous integration on Windows using appveyor
  • 22. Documentation 📓 Accessibility Summary added to README Add documentation on configuring with JNDI Enhance Soffit documentation with more details Add CI status badges to README General README improvements
  • 23. Related uPortal Project Work 👨👩👧👦 Travis CI (linux builds) and AppVeyor (windows builds) were set up for portlets Announcements portlet got a refresh and some library updates The UI rewrite of Email Portlet was merged (Thanks Christian Cousquer) Feedback portlet got some fixes (A lot of work by Jonathan Tran - thanks!) Map portlet got some Documentation and a security fix (as mentioned) Notification Portlet got a header icon refresh The JSPC plugin got support for Tomcat 8.5 (Thanks Yudhi Karunia Surtan) JSPC plugin And better support for the includeInProject flag (Thanks Marco
  • 24. Changes to Note ☑ Quickstart Data: moved 'background-preference' from all-lo to authenicated-lo Upgraded on some ancillary dependencies, like Font Awesome, jQuery, Backbone Upgraded portlets: NewsReader, Announcements If the Gradle build fails, fail the Ant build Removed XML file-based PAGS configuration Removed XML file-based DLM configuration
  • 25. 2017 Q2 Plans 🔮 General Process pull requests in a timely manner Move more documentation into GitHub Continue process improvements Address slow group SQL query uPortal 5 Decompose uPortal into hierarchical sub-modules Remove deprecated code
  • 28. Look for the Slides on the Unicon Blog https://www.unicon.net/about/blogs

Editor's Notes

  • #3: 1. Improving Processes (10 minutes) o Pull requests o CI, linting o New Manual 2. Community (10 minutes) o Open Apereo o uPortal 5 3. OSS Mechanics (5 minutes) o Influencing SE Work o Closing ZenDesk Tickets 4. Sustaining Engineering (10 minutes) o Q1 o Going Forward 5. Community Spotlight (15 minutes) o Oakland ReactJS discussion & demo 6. Q&A
  • #5: Give a high level overview of processes
  • #6: Describe how this gives contributors a starting point for getting involved
  • #7: Describe how this helps guide contributors to a merge-able change request
  • #8: Communicate the volume and complexity of the uPortal automated test matrix
  • #9: Describe progress made, 2 automated tests to 55 automated tests Describe what needs to get done: Browser testing and additional change request feedback mechanisms Emphasis this will NOT replace manual testing, good design, or clean code practices
  • #10: Describe how the community can check on a project’s status
  • #17: Submitting Requests Subscribers will sometimes discover bugs they would like to have fixed in the supported software, or have ideas for minor features or other enhancements they would like to see implemented. When these arise, the subscriber contact should submit an “S5 – Request” support case and provide full details on the issue they would like to have addressed. When a subscriber contact submits a development request, the receiving engineer will first review it to ensure it is sufficiently descriptive. If further information is required, the engineer may perform some independent research or engage in further discussion with the submitter in order to fully understand and document the issue. The engineer will then provide an initial estimate for the level-of-effort required to resolve this development request. If the subscriber would like to have this issue addressed immediately, they can use Consulting Assistance time to proceed directly to getting an engineer engaged on the development work quickly. Otherwise, the team will submit the issue to the tracking system of the open source project itself (without identifying the subscriber in any way).
  • #18: Just a quick recap. New, Open and Closed are simple to understand. Let’s focus on Solved [next slide]
  • #19: Closing a Support Case Once a satisfactory resolution has been achieved, the engineer marks the support case as resolved. Resolution may include identification of a defect in the application or enhancements that are needed in the application to meet expectations. In these cases, the engineer creates a corresponding development issue in the issue tracking system of the open source project and provides the issue number to the support case contact. Afterward, the engineer considers updating community project documentation or other appropriate information sources to incorporate solutions to important issues.
  • #20: Instead of throwing UP jira IDs at you, we are going to summarize, topically
  • #21: Invalid href destinations: wound send the JavaScript context to be sent to the next page Apache Commons had an exec() vulnerability in the Java serialization parser
  • #22: Christian already covered this area. I’ve added it only for completeness.
  • #23: We are more documentation focused than ever. We find it critical to enable others to ramp up and get involved. It also shows project maturity.