ChildWorkSpace
What is a ChildWorkSpace?
A concept called ChildWorkSpaces (CWS) is used to organize changes to OpenOffice.org into smaller and independent units.
This page is intended as a first overview for end users. The wiki page "CWS" provides many more details for advanced contributors.
How does it relate to Issues?
OpenOffice.org's code base may be changed as a result of Issues, which can be classified as defect reports, enhancement requests or feature requests. Issues are managed in a tool called issuezilla.
Related issues get grouped together and are assigned to a ChildWorkSpace. The resulting code change consists of bug fixes, enhancements and feature implementations that correspond to the list of issues registered for that CWS.
ChildWorkSpaces are managed in a tool called Environment Information System (EIS): It has all the details about each CWS, e.g. the list of tasks assigned to it, its release target, the first milestone release where it has been integrated, various testing results and the list of code changes.
The Process Flow
The relationship between an issue, a CWS and a release is described in this simplified process flow:
- someone finds a problem or has an enhancement idea
- the problem or the idea shouldn't be known in issuezilla yet
- a new issue is submitted
- the issue is tested by testers and/or developers
- if the problem is confirmed then the issue status gets changed to "new"
- development accepts an issue by marking it as "started"
- development creates a ChildWorkSpace
- development assigns some issues to the CWS's task list
- development solves the issue and tests the solution
- development commits the code changes into the CWS's code base
- development marks the issue as "fixed"
- development checks that the whole CWS works as expected
- development changes the CWS status to "Ready for QA"
- development reassigns the issues to testing
- testing checks for regressions and that the issues are solved
- tested issues are marked as "verified"
- testing changes the ChildWorkSpace status to "Approved by QA"
- the CWS gets nominated either by "program management" or by testing (depending on the release status of the MWS)
- "release engineering" integrates the code changes into the a milestone release
- the CWS status is changed to "Integrated"
- the milestone containing some CWSes is released (see the respective Release Notes)
- testing checks the issues again on the released version (see the download website)
- testing marks the issues as "closed"
Frequently Asked Questions
The issue is marked as fixed, but the latest milestone still has the problem. Why?
- if the issue is just marked as FIXED but not CLOSED, then this probably means that the latest milestone doesn't contain the fix yet. Please read the process flow section to understand that
- the list of all the issues in the CWS has to be solved
- the fixes have to be verified
- the CWS must be integrated
- the milestone has to be released
- if the issue is marked as closed and fixed but the milestone mentioned in the closing comment still has the bug then
- please reopen the issue and provide exact details on how to reproduce the problem
which milestone release has the issue fixed?
- the EIS tool provides details like this for a CWS. You can find that EIS entry by entering the issue number.
- the closing comment of a fixed issue is supposed to mention the milestone
- the milestone's release notes contains an extensive list of resolved issues