<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>





  
  
  
  
  <meta content="text/html;charset=iso-8859-1" http-equiv="content-type">




  


  
  
  
  
  
  
  
  <title>OpenOffice.org Performance Project</title>
  <meta content="user experience, usability, OpenOffice, OpenOffice.org" name="keywords">
</head>


<body style="background-color: rgb(255, 255, 255);">





<div align="right"> </div>





<table style="text-align: left;" border="0" cellpadding="0" cellspacing="0">





  <tbody>





    <tr>





      <td style="height: 35px; width: 25px;"></td>





      <td rowspan="1" style="text-align: right; height: 35px; width: 1px;" colspan="2">Project Lead: <a href="mailto:liheng@redoffice.com">Li Heng</a>&nbsp;,
Co-Lead: <a href="mailto:dieter.loeschky@sun.com">Dieter
Loeschky</a><em></em> </td>





    </tr>





    <tr>





      <td colspan="1" rowspan="1" style="height: 40px; vertical-align: top; width: 25px;"></td>





      <td rowspan="1" style="height: 40px; text-align: left; vertical-align: middle;" colspan="1">
      
      
      
      
      <h1 style="margin-top: 0px; height: 70px;">Performance&nbsp;Project<br>





      </h1>





      </td>




      <td style="vertical-align: middle; text-align: right;">

      
      <h1><a href="https://wiki.openoffice.org/wiki/Performance"><img src="https://wiki.openoffice.org/w/images/f/f9/Performance_250.png" alt="Performance Logo" style="border: 0px solid ; width: 250px; height: 70px;"></a></h1>
      </td>


      



    </tr>





    <tr>





      <td></td>





      <td colspan="2" rowspan="1">
      
      
      
      
      <h2>Charter<br>





      </h2>





      
      
      
      
      <p style="margin-top: 0px; height: 39px;">We are the performance team and our main goal is
to&nbsp;improve the OpenOffice.org performance by identifying and
solving performance bottlenecks that impair&nbsp;our users'
productivity.</p>





      
      
      
      
      <p> We&nbsp;analyze the status of
OpenOffice.org performance and identify areas where the performance is
not sufficient. Members of the project will improve the performance in
these areas, and setup a system to monitor performance continuously.</p>





      
      
      
      
      <p>We&nbsp;implement tools and tests to analyze the
performance of individual OpenOffice.org master and child workspace
(CWS) builds in order to detect and prevent performance declines and
regressions.</p>





      
      
      
      
      <p> Close cooperation with other&nbsp;projects
in the
OpenOffice.org community is the basis for the success of this
cross-sectional activity.</p>






      
      
      
      
      <ul>




      
      
      
      
      </ul>





      </td>





    </tr>





    <tr>





      <td style="height: 45px; width: 25px;"></td>





      <td colspan="2" style="height: 45px;">
      
      
      
      
      <h2>Quick Links</h2>





      </td>





    </tr>





    <tr>





      <td style="width: 25px; height: 82px;"></td>





      <td colspan="1" style="vertical-align: top; height: 82px;">
      
      
      
      
      <ul>





        <li style="font-weight: bold;"><a title="User Experience" href="http://wiki.services.openoffice.org/wiki/Performance">Performance
Wiki page (status &amp; activities)</a></li>






        <li><a href="http://wiki.services.openoffice.org/wiki/Performance/ToDo%27s">ToDo
List</a></li>




        <li><a href="http://wiki.services.openoffice.org/wiki/Performance/Meetings">Meeting Minutes</a></li>





      
      
      
      
      </ul>





      </td>





      <td style="vertical-align: top; height: 82px;" colspan="1">
      
      
      
      
      <ul>






        <li style="width: 256px;"><a href="http://performance.openoffice.org/servlets/ProjectMailingListList">Mailing
lists</a></li>





        <li><a href="http://wiki.services.openoffice.org/wiki/Performance/People">Project
members</a></li>





      
      
      
      
      </ul>





      
      
      
      
      <ul>





      
      
      
      
      </ul>





      </td>





    </tr>





    <tr>





      <td style="width: 25px; height: 16px;"></td>





      <td colspan="2" rowspan="1" style="vertical-align: top; height: 16px;"><br>





      </td>





    </tr>





  
  
  
  
  </tbody>
</table>





</body>
</html>
