Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PriorityWho can reportUsually used forTypical reaction time
(but no gurantees)
Usage GuidelinesRemarks
BlockersubscriberIssues that block everything and everybody.
Production environment is down.
Financial or reputation damage imminent.
Security issues.

Immediate (hours)This priority is reserved for issues that affect production environment. Do not abuse this priority for issues that only affect testing or development environments. This priority is not applicable for deployment projects that have not yet reached production phase. Exception to this rule are possible only in very severe cases and only for platform subscribers.

Do not abuse this priority. Developers will drop everything and work on this issue. We will be very upset if this priority is abused.
It is better to start on lower priorities and escalate as necessary.

CriticalsubscriberDangerous situation.
Production environment is affected in a non-trivial way.
Risk of financial or reputation damage.

Quick (hours, days)
Must be addressed within development milestone.

This priority is recommended for issues that affect production environment. Do not report issues with this priority that affect only testing or development environment, unless such issues are extremely serious. Use of this priority for deployment project is justified only if the issue blocks entire deployment team and the engineers are not able to proceed with any deployment tasks. Risk of project delays does not justify use of this priority. Deployment project should plan for sufficient reserves for issues discovered during the deployment.Sometimes used by the development team to mark the most important features in a release. MidPoint won't be released unless all critical issues are addressed.
May cause milestone delays. May cause release delays.

MajorsubscriberUncomfortable situation.
Development or project is affected in a non-trivial way.
Risk of financial or reputation damage if the issue is not addressed eventually.
Appropriate (weeks, months)
Usually addressed within development milestone.
This is the highest priority to use for issues that affect testing and development environments, which is also the highest priority for deployment projects (given the exceptions mentioned above).Usually addressed within development milestone, but may be postponed to a final stabilization phase (after feature freeze) if needed. Major issues may block releases. But in rare cases even major issues can be postponed to the next release, but that needs to be negotiated with the subscriber.
May cause release delays.

Minorsubscriber, communityMinor nuisance.
Makes life a bit harder, but not a big problem.
Negligible risk of financial or reputation damage.
Eventual (months, years)
Usually addressed within a release cycle. But no guarantees.
This is the highest priority that a community issues can have. Higher priorities are possible only if the issue is selcted selected by the development team or endorsed by a subscriber.Addressed during the final stabilization phase (after feature freeze). Development team will try to address as many minor issues as can fit into the development cycle. But it is almost certain that some of them will be left unsolved and moved out. Minor issue will never block a release.
Trivialsubscriber, communityCosmetic issue.
Not really important.
Just an idea.
Unpredictable.
No guarantees. No promises. No estimations.

Can be freely moved in the plan. The most likely candidate to be moved when the time runs out.

...

MidPoint deployment projects have a lifecycle of their own. There is usually some exploration/preparation phase. Then there is development and testing. Then the project is deployed to production. Then further iterations follow. Characteristics of individual deployment phases considerably vary when it comes to impact and criticality of the issues. We have tuned our support model to provide the right balance for the needs of individual deployment phases. The guidelines are summarized in the following table:

PhaseMaximum issue priorityDescription
Exploration/preparationMinor

This phase is usually not covered by any support or subscription. Therefore the maximum priority of an issue is minor, as that is the maximum priority of a community issue.

In case that this phase is indeed covered by support or subscription, then the same rules as for deployment/testing phase apply.

Deployment and testingMajor

Configuration is customized and tested, data migration is prepared and so on. But everything happens in the "lab" (development and/or testing environment). Production systems are not affected. MidPoint is not yet in the production, therefore the potential for any real harm is reduced. Therefore the maximum priority is reduced. This allows midPoint team to focus on more serious issues.

Please, be patient in this phase. Plan sufficient reserves in your project. Your issues may have lower priority now. But once you go to production you will surely appreciate that your issues will have a higher priority than the issues of new deployment projects.

ProductionBlocker

MidPoint is running with real data. The deployment is supposed to be stable. MidPoint should not misbehave at this point. If midPoint happens to misbehave and there is a potential for harm, then such issue has to be fixed as soon as possible.

This also applies to security issues regardless of project phase.

Follow-up iterationsMajorMidPoint deployment is in production - and the entry above applies to such production operation. However, there is often a new iteration started in parallel. Improved midPoint configuration is prepared in development environment, it is moved to testing after that, update of production environment is planned. Such follow-up iterations are handled in a same way as an original deployment project. While issues from the production environment can still be raised to the highest priorities, the issues that originate from development or testing environment have reduced priority.

Those guidelines reflect our philosophy that prefers production deployments. While many products and programs are designed to support deployment projects where most of the money is generated, midPoint is quite different. We believe that the most important thing is to keep real (production) midPoint deployments running. The projects that are in the process of deploying midPoint can wait a bit. But production deployments that work with real data cannot wait. They need to have absolute priority.

...

We would also like to emphasize the importance of deployment environments. MidPoint is especially designed for deployments that follow the "three environment model":

EnvironmentPurposeMaximux issue priotity
Development

Develop new configuration, configuration changes, prepare customizations, etc. MidPoint is connected to development instances of source/target systems. Some systems may be simulated.

Works with dummy data. Amount of data is usually reduced.

Major
Testing

Test configurations after the development is done. Validate the system before deployment to production. MidPoint is connected to testing instances of source/target systems.

Works with simulated data, copy of real production data or anonymized production data. Same amount of data as in production environment.

Major
Production

MidPoint running with real source and target systems.

Works with real data.

Blocker

Preparing and maintaining those three environments is strongly recommended for all deployment projects. Any significant change to the configuration should proceed from development environment to testing environment and only then it should be deployed to production.

...