While we know that having an resolution ETA for defect corrections can be reassuring and helpful for planning purposes, Sauce Labs Support is unable to provide ETAs.
How Our Teams are Organized
Sauce Labs' technical teams work on groups of related functionality. For instance, we have a team working on our Web UI, another on our Emulator support, and a third on Desktop environments. Our teams are holistic in that ach team accomplishes all tasks for their functionality, such as:
- Product improvements from strategic planning
- Defects reported by customers
- Security concerns
- 3rd party updates (for example, new browser versions)
- Tasks required by other teams
How Work is Prioritized
Planning for teams is done as part of an Agile process. Tasks are ordered by Product Management and technical leadership according to a number of competing factors:
- 3rd party release schedules (for example, new Selenium versions)
- Seriousness of defect (customer reported or otherwise)
- Impact on other teams
- Legal and contractual obligations
- Security obligations
- Release goals
A defect reported by a customer is one of many tasks a product team will deal with, and is effectively "competing" for time against all the other priorities of that team (including other customer reported defects). This means a team may not be able to address a defect immediately.
Tasks are re-prioritised regularly as defects become more serious or impact more customers, as releases are announced, or external obligations arise.
How Work is Planned
Our development methodology means that the planning of tasks occurs immediately before each two week "sprint." Teams have a meeting with their leadership and product management, and select enough of the top priority tasks to fit in two weeks of work (a "sprint"). Tasks are only allocated to sprints immediately before that sprint begins. This means that tasks without a sprint have no ETA. They may be allocated to the next sprint, but they may not.
The biggest problem when it comes to providing an ETA for complex problems is that determining why a problem is occurring is often the bulk of the work. This is something that can't be estimated. The only way to know how long it takes is to do it.
When something is new, such as a new version of Windows or the iOS emulator, estimation becomes harder again. Often, Sauce Labs is among the first in the world to attempt something. This means there are no other resources to assist, and the problems that arise are completely novel.
This uncertainty is amplified when a problem is occurring in the interaction between systems Sauce Labs did not develop. For instance, determining why a version of Selenium is misbehaving with a version of Internet Explorer. We have the source code for Selenium, but not for Internet Explorer. We're also didn't construct either, so much of our work has to rely on educated guesses
We don't provide ETAs as it's usually close to impossible to provide a meaningful estimate. Even if we can provide one, we can only do so shortly before the ETA itself, and even that is subject to change.