Return-Path: X-Original-To: apmail-incubator-ooo-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-ooo-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6E54B9824 for ; Wed, 18 Jul 2012 07:03:04 +0000 (UTC) Received: (qmail 89468 invoked by uid 500); 18 Jul 2012 07:03:03 -0000 Delivered-To: apmail-incubator-ooo-dev-archive@incubator.apache.org Received: (qmail 89310 invoked by uid 500); 18 Jul 2012 07:03:03 -0000 Mailing-List: contact ooo-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: ooo-dev@incubator.apache.org Delivered-To: mailing list ooo-dev@incubator.apache.org Received: (qmail 89291 invoked by uid 99); 18 Jul 2012 07:03:02 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Jul 2012 07:03:02 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of liushenf@gmail.com designates 74.125.82.43 as permitted sender) Received: from [74.125.82.43] (HELO mail-wg0-f43.google.com) (74.125.82.43) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 18 Jul 2012 07:02:53 +0000 Received: by wgbdr1 with SMTP id dr1so926181wgb.0 for ; Wed, 18 Jul 2012 00:02:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=bu2bd+7uyE5CGFQoH1Z7vmaNJ2dBnfhrIeNkY2Ytq8M=; b=CpTz2/9rQT5yNPDv7cekUQs8KmBkQuU2W1TIsV4G2LXZ+82KpGQrSZVQX7f/w4rPsW Yd7k3LFtpICwQfV8TCNhh7WIPqcolCfyk8WuHspeSgMMNR5BOVis31g67ENdiz+lNzkV UQWFVEebfSKzTOLXuUFvIPsr8AXx2l/YqyAZSUNM1ZECQL8BhfQIFDOitBRGTE9lMGZH 5YUveymYWgrbBG5umSpH0MmicYSTXpE5+2Eeb19Z8lCQv0xCdu8Ls7v4qaHE8/WnqiCC thQyYTdehjlR7VtlvdPPZeKUkfISzOZ3ncvEYtWyc87yWff1UgeOXAMb2cO6UDHpSuih vH2w== MIME-Version: 1.0 Received: by 10.216.137.76 with SMTP id x54mr976870wei.189.1342594953765; Wed, 18 Jul 2012 00:02:33 -0700 (PDT) Received: by 10.227.2.147 with HTTP; Wed, 18 Jul 2012 00:02:33 -0700 (PDT) Date: Wed, 18 Jul 2012 15:02:33 +0800 Message-ID: Subject: [RELEASE][3.5] Process thinking - defect&feature rules, iteration... From: Shenfeng Liu To: ooo-dev@incubator.apache.org Content-Type: multipart/alternative; boundary=0016e6d7e4b64be1ca04c5153f1d --0016e6d7e4b64be1ca04c5153f1d Content-Type: text/plain; charset=ISO-8859-1 Hi, all, I made some update on the AOO 3.5 Release Planning wiki Juergen created: https://cwiki.apache.org/confluence/display/OOOUSERS/AOO+3.5+Release+Planning. And besides proposing contents in the High Level Overview table, I think we should also think about the release process. And below are what in my mind: 1. Defect/Enhancement rule In 3.5, there will be not only defects, but also some feature enhancements that need relatively bigger development efforts. The 3.5 release circle will also be longer than 3.4.1. And more contributors will participate, I believe. So it is very important to build up a good traceability, so that we can query out the project status automatically, but not rely on people's input in wiki. To make it happen, we need to define some rules in Bugzilla for: (1) Defect/Enhancement creating. e.g. against which Version, define of the Severity/Priority, Keywords needed... (2) Defect triage. How do we decide if a fix or a feature should be in 3.5 or not? Where do we record our decision (e.g. in Target Milestone, or Flags)? It will become important when we close to GA, or deliver a milestone build. (3) Defect fix, patch, review. (4) Defect verify/close. For some rules (e.g. Severity/Priority), we may point to a place with general rules defined. For some rules specific to 3.5 (e.g. Version, Target Milestone, Flags), we should write them down in the release planning wiki. After we defined the rules, QE team can help to define some shared queries for us to get the project status and todo list. 2. Iteration and Milestone builds Since, as discussed, 3.5 release is likely to last for 6~9 months, I think it will be good for us to try the iterative development mode, and deliver milestone builds regularly. The milestone builds are dev snapshot builds, not formal release, but contains new bug fixes and enhancements implemented till the last iteration, and verified to be relatively stable in quality by QE team with a small regression test suite. And the milestone builds can be announced to external for people's try out the new enhancement works, provide feedback and report issues. And internally, it can help us to measure the quality regularly, and avoid big quality deviation. Since we are open community and many of us are volunteers working on AOO with their spare time, it is unlikely for us to apply strict agile discipline. So I think the process can be some thing like below: (1) Define the iterations of 4 weeks or 1 month (or any better suggestion?), announce the timelines in wiki. (2) 1 week before the iteration, a milestone branch will be created. QE will do 1 week regression test on it. Dev will fix critical defects found in this branch. Then all the fixes in this milestone branch will be back to 3.5 trunk. (3) As a developer, it will be welcome if you can target your work to an iteration. But if you can not finish it before the milestone branch created (e.g. you are working on an enhancement that will take 2 weeks, and you just implement 80% by that time), means you can not deliver in this iteration, then you just keep your work in your branch, and deliver it to 3.5 trunk in the next iteration. Any comments? - Simon --0016e6d7e4b64be1ca04c5153f1d--