Skip to content, Skip to search

Changes

Governance

1,467 bytes added, 15:20, 10 December 2018
SciJava project summary: Update Fiji maintenance status
{{About}}{{Notice | This page describes the ''social'' structure of [[SciJava]] projects.
* For information on the ''technical'' structure, see [[Architecture]].
* For information on the ''legal'' structure, see [[Licensing]].}}
 {{AboutMenu}}The [[ImageJ]] project, and related projects in the [[SciJava]] software ecosystem, are governed as [[open source]] software projects. Everybody is welcome to [[contribute]] with [[plugins]], patches, [[Bugs|bug reports]], [[tutorials]], [[documentation]], and artwork.
That said, every project needs leaders: the ones who participate in ''governance'' of the project, [[wikipedia:Software maintenance|maintaining]] the software and making key decisions.
== Project roles ==
Because [[open source]] software (OSS) is highly collaborative, it is extremely important to understand the difference between various roles on the project, to avoid misconceptions about '''authority''' (who makes decisions) and '''responsibility''' (who must is pledged to do the work) concerning each project.
The most common roles in OSS are:
* '''Founders''' are the people who originally launched the project.
* '''Leads''' are responsible for making final decisions. In the [[open source]] world these people are often referred to as [http://catb.org/~esr/writings/homesteading/homesteading/ar01s16.html benevolent dictators]. Changes with a serious impact on the community are typically [[Mailing ListsCommunity|discussed on open channels]] first.
* '''Maintainers''' keep the project functional, fix bugs and make releases. They often make day to day decisions, and are typically involved in discussion with the project lead(s) regarding major decisions, although the lead has final decision-making authority.
* '''Developers''' are people who work on the project significantly or often. Typically they have direct push access to the source code. In some cases they make day to day decisions, depending on their experience and comfort level with the project.
* '''Contributors''' are people who help with the project either currently or in the past. They may participate occasionally or sporadically, and are typically not involved in project decision making.
=== Levels of maintenance and development SciJava team roles ===
Each project Projects in the ecosystem has a distinct development path, with varying levels [[Architecture|SciJava component collection]] define each component's '''team''' as the group of maturity and activity. These paths are ultimately determined by the people who participate in developing the projecttake ''responsibility'' for it. The following table conveys roles formalize the types of commitment ways people are pledged by people with various project rolesto help:
{| class="wikitable nicetable"
! Role! Commitment|-! Founder| rowspan=2 Created the project. Does not imply any current participation or responsibility.| '''Role'''-! Lead| colspan=5 style="textHas decision-alignmaking authority: center" | '''Commitment'''timing of [[releases]], inclusion of features, etc.
|-
| '''Reviews and<br>merges [[Contributing|patches]]'''| '''Responds to<br>[[Contact|community questions]]'''| '''Actively fixes<br>reported [[bugs]]'''! Developer| '''Actively adds<br>Adds new [[issues|features]]'''| '''[[Funding|Paid]] or enhancements. Can be assigned to add<br>new features'''address feature requests.
|-
| Maintainer (passive)| {{yes}}| {{unknown}}| -! Debugger| -Fixes [[Issues| -bugs]]. Can be assigned open [[issues]] to solve.
|-
| Maintainer (active)| {{yes}}| {{yes}}| {{yes}}! Reviewer| -Reviews [[Contributing| -patch submissions]].
|-
| Developer (community)! Support| -Responds to [[Community| {{unknown}}| {{unknown}}| {{unknown}}community questions]] and [[Issues| -issue reports]]. Keeps the issue tracker organized.
|-
! Maintainer| Developer (supported)Merges [[Contributing| -patch submissions]]. Cuts releases.| -| {{yes}}| {{yes}}! Contributor| {{yes}}Contributed code to the project. Does not imply any current participation or responsibility.
|}
Individuals often fill more than one role. == Component status == This web site documents lots of software [[components]]—and in particular, many ImageJ [[plugins]]. Components in the ecosystem each have a distinct development path, with varying levels of maturity and activity, which is ultimately determined by the people who participate in developing it. Each component's page features an informational sidebar with a status report derived from the component's declared ''team''. This sidebar is intended to help users understand what level to expect when seeking help, reporting issues, and submitting feature requests. === Development status === '''Development status''' conveys what to expect regarding a component's future.{| class="wikitable"! Status! Meaning|-! Unstable| Project is under heavy development, with unstable API undergoing iterations of refinement. Typically, these components are either unreleased, or [[versioning|versioned at 0.x]].|-! Active| New features are being actively developed. API breakages are kept as limited as possible.|-! Stable| No new features are under development. API is stable.|-! Obsolete| The project is discontinued.|} === Support status ==='''Support status''' indicates the level to which the team responds to questions and [[bugs|issue reports]].{| class="wikitable"! Status! Meaning|-! Active| Someone will respond to questions on community channels, and addresses issue reports in the project's issue tracker. A best effort is made to fix reported bugs within a reasonable time frame.|-! Partial| Someone will respond to questions on community channels, as well as to issue reports in the project's issue tracker. But reported bugs may not be addressed in a timely manner.|-! Minimal| There is at least one person pledged to the project in some capacity, but not all roles are filled. Response time to questions and issue reports may be protracted.|-! None| No one is pledged to support the project. Questions and issue reports may be ignored.|} == SciJava projects project summary ==
Here is a summary of roles for projects in the [[SciJava]] ecosystem.
| '''Contributors'''
|-
| [[File:scijava-icon.png{{Logo |48px]]SciJava}}
| '''[[SciJava]]'''
| {{Person|Moore}}<br>{{Person|Rueden}}
| {{Person|Rueden}}
| {{Person|Rueden}}<br>{{Person|Hinerm}}
| [https://github.com/orgs/scijava/people List on GitHub]
| See [[Contributors]]
|-
| [[File:imglib2-icon.png{{Logo |48px]]ImgLib2}}
| '''[[ImgLib2]]'''
| {{Person|Saalfeld}}<br>{{Person|StephanP}}
| {{Person|Pietzsch}}<sup>1</sup><br>{{Person|StephanP}}<br>{{Person|Saalfeld}}
| {{Person|Pietzsch}}<br>{{Person|Rueden}}<br>{{Person|Hinerm}}<br>{{Person|StephanP}}<br>{{Person|Saalfeld}}
| [https://github.com/orgs/imglib/people List on GitHub]
| See [[Contributors]]
|-
| [[File:imagej1-icon.png{{Logo |48px]]ImageJ1}}
| '''[[ImageJ1]]'''
| Wayne {{Person|Rasband}}| Wayne {{Person|Rasband}}| Wayne {{Person|Rasband}}<br>{{Person|Rueden}}| Wayne {{Person|Rasband}}
| See [http://imagej.net/notes.html release notes]
|-
| [[File:imagej2-icon.png{{Logo |48px]]ImageJ2}}
| '''[[ImageJ2]]'''
| {{Person|Rueden}}<br>{{Person|Eliceiri}}
| {{Person|Rueden}}
| {{Person|Rueden}}<br>{{Person|Hinerm}}
| [https://github.com/orgs/imagej/people List on GitHub]
| See [[Contributors]]
|-
| [[File:scifio-icon.png{{Logo |48px]]SCIFIO}}
| '''[[SCIFIO]]'''
| {{Person|Rueden}}<br>{{Person|Eliceiri}}| {{Person|Hinerm}}<br>{{Person|RuedenHinerm}}| {{Person|HinermRueden}}<br>| {{Person|Rueden}}
| [https://github.com/orgs/scijava/people List on GitHub]
| See [[Contributors]]
|-
| rowspan=3 style="vertical-align: middle" | [[File:fiji-icon.png{{Logo |48px]]Fiji}}
| '''[[Fiji]]'''
| {{Person|Schindelin}}<br>{{Person|Albertcardona}}| {{Person|Rueden}}<br>{{Person|SchindelinTomancak}}<sup>2</sup>| {{Person|Rueden}}<br>| {{Person|HinermRueden}}<br>{{Person|Schindelin}}<sup>2</sup>Gabriella Turek
| [https://github.com/orgs/fiji/people List on GitHub]
| See [[Contributors]]
| [https://github.com/trakem2/TrakEM2/graphs/contributors Info on GitHub]
|-
| [[File:slim-curve-icon.png{{Logo |48px]]SLIM Curve}}
| '''[[SLIM Curve]]'''
| Paul Barber<br>{{Person|Rueden}}
| Paul Barber<sup>32</sup><br>{{Person|Rueden}}<sup>32</sup>
| {{Person|Msagar}}<br>{{Person|Rueden}}
| [https://github.com/orgs/slim-curve/people List on GitHub]
| [https://github.com/slim-curve/slim-plugin/graphs/contributors Info on GitHub]
|-
| [[File:bio{{Logo | Bio-formats-icon.png|48px]]Formats}}
| '''[[Bio-Formats]]'''
| {{Person|Rueden}}<br>{{Person|Eliceiri}}
| {{Person|Linkert}}
| {{Person|Linkert}}<br>{{Person|RuedenSbesson}}<sup>4</sup>
| [https://github.com/openmicroscopy/bioformats/graphs/contributors List on GitHub]
| See [http://www.openmicroscopy.org/site/about/ome-contributors OME Contributors]
|-
| [[File:knime-icon.png{{Logo |48px]]KNIME}}| style="white-space: normal" | '''[[KNIME|KNIME Image Processing]]'''<sup>5</sup>| {{Person|DietzDietzc}}<br>Martin Horn| {{Person|DietzDietzc}}| {{Person|DietzDietzc}}<br>Martin Horn
| [https://github.com/orgs/knime-ip/people List on GitHub]
| See [[Contributors]]
|-
| [[File:cellprofiler-icon.png{{Logo |48px]]CellProfiler}}
| '''[[CellProfiler]]'''
| {{Person|Leek}}<br>Anne Carpenter
| {{Person|Leek0x00B1}}| {{Person|Leek0x00B1}}
| [https://github.com/orgs/CellProfiler/people List on GitHub]
| See [[Contributors]]
|-
| [[File:Omero-icon.png{{Logo |48px]]OMERO}}
| '''[[OMERO]]'''
| {{Person|Moore}}<br>Jean-Marie Burel<br>Chris Allan<br>Jason Swedlow
| [https://github.com/openmicroscopy/openmicroscopy/graphs/contributors Info on GitHub]
|-
| [[File:{{Logo | Icy-icon.png|48px]]}}
| '''[[Icy]]'''
| Stephane Dallongeville<br>Fabrice de Chaumont{{Person|Fab14}}<br>Jean-Christophe Olivo-Marin| Stephane Dallongeville<br>Fabrice de Chaumont{{Person|Fab14}}| Stephane Dallongeville<br>Fabrice de Chaumont{{Person|Fab14}}
| [https://github.com/orgs/Icy-imaging/people List on GitHub]
| [https://github.com/Icy-imaging/Icy-Kernel/graphs/contributors Info on GitHub]
|-
| [[File:{{Logo | Alida-logo.jpg|48px]]}}
| '''[[Alida]]'''
| Stefan Posch<br>Birgit Möller
| [https://github.com/alida-hub/alida/graphs/contributors Info on GitHub]
|-
| [[File:{{Logo | MiToBo-logo.png|48px]]}}
| '''[[MiToBo]]'''
| Stefan Posch<br>Birgit Möller
|}
<sup>1</sup> Pietzsch leads on day to day issues. Pietzsch, Preibisch and Saalfeld vote on primary decisions, with Pietzsch's vote breaking ties.
<br><sup>2</sup> Schindelin is currently on sabbatical from Fiji; see [https://groups.google.com/d/msg/fiji-devel/coIgXLws0eI/TZlwjXLyks0J this thread on fiji-devel].<br><sup>3</sup> Barber leads development of the {{GitHub | org=slim-curve | repo=slim-curve | label=SLIM Curve C library}}; Rueden leads development of the {{GitHub | org=slim-curve | repo=slim-plugin | label=SLIM Curve plugin for ImageJ}}.<br><sup>4</sup> Rueden maintains the Bio-Formats [[update site]] for ImageJ, but is not otherwise a Bio-Formats maintainer.<br><sup>5</sup> For the purposes of this table, "KNIME" means the [[KNIME|KNIME Image Processing]] extensions, not the KNIME project as a whole.
== Further reading ==
Bureaucrat, emailconfirmed, incoming, administrator, uploaders
11,725
edits