GullFOSS
OpenOffice.org Engineering at Sun
 
 
 
 
More Flickr photos tagged with openoffice

Today's Page Hits: 1914

Locations of visitors to this page
Main | Next page »
Tuesday, 30 Jun 2009
New: OOo-DEV 3.1.1 Developer Snapshot (build OOO310_m14) available
Marcus Lange

Developer Snapshot build OOo-Dev OOO310_m14 which installs as OOo-DEV 3.1.1 has been uploaded to the mirror network.

If you find severe issues within this build please file them to OpenOffice.org's bug tracking system IssueTracker.

Please use the following link
http://download.openoffice.org/next

Packages are also available from extended mirror sites ( listed with an [E] ) from the ".../extended/developer/OOO310_m14" directory:
http://distribution.openoffice.org/mirrors/#extmirrors

MD5 checksums:
http://download.openoffice.org/next/md5sums/index.html

tags:

Posted by Marcus Lange on 30 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[0]

Monday, 29 Jun 2009
The framework project, OpenOffice.org 3.2 and Windows 7
Carsten Driesner

Currently the framework team works on OpenOffice.org 3.2 and compatibility with the Windows 7 file picker. If you use OpenOffice.org 3.1 or download the latest developement snapshot you will find out that the system file picker doesn't look like the default Windows 7 file dialog. This is just one issue you can stumble on while using the system file picker on Windows 7 RC1. The framework team created a CWS called filepicker01 (see http://eis.services.openoffice.org/EIS2/cws.ShowCWS?Path=DEV300%2Ffilepicker01) which includes all known issues regarding the system file picker. Fortunately we also have support from a community member to help on the QA part during the development. I want to thank Henner Drewes for his great support, his patches and feedback. This is a good example how people can support us to make OpenOffice.org better. Thanks to his help we could solve some issues in the CWS, especially stability is one of the major areas we are working on. Even new issues have been found and can now be fixed.

To give you an impression on the current state of the CWS you can see a screen shot of OpenOffice.org on Windows 7 RC1:


CWS filepicker01 based on DEV300m50 on Windows 7 RC1

Please keep in mind that this is work in progress and even the latest development snapshot doesn't include the fixes. Hopefully the first batch of fixes can be integrated into the master in the next weeks.

To get more feedback and find problems for Windows 7 early I would like to ask you for help. If you have access to Windows 7 RC1 or later versions and want to help, please join us. You can contact me via e-mail or subscribe to the framework development mailing list. Everybody is welcome. The framework team will help you to have an easy start.

tags:

Posted by Carsten Driesner on 29 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[0]

Does OpenOffice.org 3.x have a general quality issue?
Thorsten Ziehm

Some days ago there started a discussion about this topic in a German mailing list on OOo. It wasn't really this question in the thread. But I want to pick up this discussion in this blog and want to take this provocative question to highlight some quality metrics and actions which are in progress.

Back to the question - Does OpenOffice.org 3.x have a general quality issue? From my perspective a clear NO! Why?

Problem statements

  1. OpenOffice.org is software and software isn't error-free. It's the same for OOo. If you search in IssueTracker (the bug tracking system for OOo) you can find the open issues. There are a mass, but are they all relevent for the general quality of the product? Nearly the have of the issues are wishes for new features and enhancements.
    But what do could tell us a numeber here about the general quality of OOo?
    In the thread mentioned above I have to read, that some experienced community members have the feeling, that some areas in OOo are broken – one feature which was named is the Mail Merge Wizard. Others wrote about some bugs in other special areas. But does this mean, that OOo is broken in general. I don't think so. The download numbers of OOo 3.x are amazing. Nearly 60 million for OOo 3.0 (in the past 8-9 months) and near to 13 million for OOo 3.1 (in the past 7-8 weeks). Do these people have so much trouble with the office suite? We will not get their feedback. So I can talk about my experience only. Sometimes I run into trouble with the office suite and I am angry about each of the bugs. But I can work in general with the office on a high quality level. I know (because I got on each of my blogs comments like – my bug xxxx isn't fixed until now, this hinder me in using the office → please fix it soon) that some of the issues hinder somebody to work with our product. But in general?
    I would say, these numbers do not show a general bad quality of our product. But it shows, that we shouldn't forget the older functionality. We have to work still on stabilizing the existing functionality instead of concentrating on newer functionality only.

  2. In the releases mailing list a lot of stopper issues were reported in the past month. The numbers are higher than in the past releases and we got such reports near after the release. When I got this information I have to say YES - OOo has a problem with the quality.


    But the handling of stopper issues was changed in the past releases. So lets take a look at the very next release of OOo 3.1.1. Some days ago there were 35 bugs registered at the stopper issue. The first request for a stopper came in the time-frame when we were releasing OOo 3.1. Since then we got continuously issues reported. But this is what the release managers wanted. They want to hear which are the most annoying and important bugs for the next bug fix release. In the past the teams worked silently and created child work spaces with a number of issues, without telling why these issues are important for a release. The release team wants more stopper issues to have a better priority by the users and they got them.
    So these numbers doesn't tell us if the quality is worse than in the past. => So a clear No! This number does not show that OOo has a quality issue!

  3. What's with the numbers of reported issues in general? Will this number tell us, if the product is broken? Let's have a look.

    The graph shows that the numbers go down. Currently less than 900 issues reports came in per month. In 2005 the number was nearly the twice (~1700). But does this number means that the product is healthy or which number of incoming reports will show this?
    I do not want to say that the product is healthy with such numbers. Each bug report is an error in usability or functionality and someone has a problem to use the product. So the number has to be reduced more and more. But I am realistic. Zero issues per month cannot and shouldn't be the goal. Software is error-prone and it cannot be error-free. If OOo gets less than 100 issues per month, the project is nearly dead instead of healthy, I think! So this numbers show only that we get less reports, but on a high level.

  4. Another number can be interested. Do we get more and more regressions in the last product releases? Sometimes it looks like. Because most of the stopper issues are regressions and especially short before the release of OOo 3.1 there were a lot of such reports. But let's take a look on the general numbers. 

    These numbers show that we get nearly the same number of regressions over the past years. If you calculate the numbers per month, there were ~80 issues per month which are marked as a regression. In my opinion this is a high number, but does it tell us that OOo is broken? Because most of the issues are fixed before the release of the final version.
    The most critical point here is, that each regression is a regression in general functionality or usability which works in an older version. A usage-scenario breaks inside the developer milestones. But this isn't new, as we can see by the numbers. And the QA teams found the issues mostly in time.
    But perhaps a closer look at the end of the release of OOo 3.1 could help to understand what could goes on.
    Short before the release we got a lot of regressions. An analysis by the development team shows that in a short time frame when this regression were integrated into the code line more than 150 CWS with nearly 1000 issues were integrated. But most of the problems came in with 5 CWS. One of it break the references and other functionality in Spreadsheet nearly completely. Why these CWSs were integrated with such problems!? One reason was wrong/missing communication because of missing knowledge about all the dependencies in such CWS. The result was that the QA responsible checked the wrong area for regressions. Another CWS were well tested, but introduced a mass of conflicts at the integration into the master code line (more than 150!). Some of the conflicts were solved incorrectly. As I heard from Release Engineering team we had such CWS never before.
    This analysis shows that we are working well in general - most of the 150 CWS do not integrated regressions -, but in some cases we have to increase the carefulness.

What else can be an indicator for a general quality issue? User feedback or user satisfaction. But how to get this information in an open source product? Feedback on mailing lists are always negative, because the users want to tell about their problems. The users which are satisfied with the product will not write it in the lists. We got positive feedback in the OOo Surves and  in press, but other press articles doesn't vote our product so good. So positive feedback isn't so easy to collect.

Resolution

So let's take a look, what is, will or can be addressed in the near future.

Perhaps you read the blog about Tests in EIS by Bernd Eilers. It's a start to get more and easier full automated testing on a CWS. Some tooling needs more testing and enhancements. Some tools aren't available for external CWSs (outside Sun). But to have such tests in one tool is a step forward to get the focus more on finding the regressions. Perhaps we have to reconsider some test scenarios and should bring more effort in code quality, code testing and more test scripts for automated GUI testing etc. In parts we started this, but it could be increased. In my opinion we should take more time for testing (in all parts of the development cycle) instead of bringing a mass of new features. We did in OOo 3.1, but it should be increased.

To address regressions too – in another direction – there are discussions about changing integration modules for CWS and Master builds. Perhaps you read the blogs about continuous integration by Mathias Bauer or Martin Hollmichel. When parts of these ideas could be realized it can be a step forward for a better code quality in general.

What about the Renaissance project for a new UI of OOo, can it help? I haven't seen the data of the usage tracking tool which were integrated in OOo 3.1 until now. But I heard that we get tons of reports with information about the usage of the Office. Perhaps a look into these data can help to get a prioritization of working areas in the Office. If we know bugs in the high prioritized area we should fix them first (when they are valid enough). Effort in bug-fixing in non/less-used areas could be reduced.

Another good point which I took from the discussion in the German mailing list is to get a general prioritization of features and bug fixing areas for each release. I saw some steps forward for this in the past weeks inside Sun. Perhaps we can get prioritization lists for the whole office for the next releases.

Conclusion

In my opinion OpenOffice.org does not have a quality issue in general. There are a mass of defects in the product and most of them will never be addressed. We got a lot of stopper issues in the past and for the next releases but nearly all these issues were and will be fixed until the products are final. Only the regressions which cannot be addressed in time is the critical mass. We have to concentrate on minimizing these bugs earlier. Also we have to prioritize the work on old bug fixing areas. Only fixing a lot of issues will costs time, but will not help in general to make the product better for all users. The quality management of OOo should be overworked to address missing processes or other things, which can help to improve the quality of OOo.

If you want to discuss topics like this, you are invited to discuss it on the QA mailing listdev@qa.openoffice.org.

tags:

Posted by Thorsten Ziehm on 29 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[3]

Sunday, 28 Jun 2009
What’s On Vogue in Prototyping
Andreas Bartel

It's been two weeks of prototyping now and we have already achieved great progress regarding the fidelity level of the prototypes and have gained many insights that we would have missed otherwise if we would solely rely on static low-fidelity prototypes.

Currently we are trying to figure out what might be a promising metaphor for organizing functionality and making it available to the users. There are a couple of basic constraints that limit our possibilities at hand. We still move around on a 2D surface, for instance. So, we only have two dimensions to organize tons of icons and buttons that give access to the features we have in Impress. In addition, the 2D screen real estate is also limited. The consequences of these constraints can be nicely demonstrated if you switch on all available toolbars and panes in any of the applications we have in OpenOffice.org.

What to do? We need to pretend that we have either more dimensions or more space. One way to simulate a multidimensional environment is to use tabbed navigation. Tabs give us the ability to implicitly squeeze a few dimensions onto a 2D surface by revealing one 2D tab at a time. This concept or metaphor was and still is frequently used in the web. Another way would be to implicitly increase the screen real estate, along the horizontal dimension for instance, and visually focus on those regions that offer functionality that is currently required.

However, since we decided to keep some sort of a menu in the new UI, it is quite a challenge to integrate both into one coherent concept. There is actually an inherent problem that comes along. Having a menu and having additional hierarchical global navigation elements increases the number of choice and adds to visual clutter (See my previous blog about MSO 2008 for Mac). Any user would have to decide where to look for functionality, is it is the menu or is it somewhere else. To solve that issue we need a design strategy that combines the best things of both worlds e.g. if a user wants to explore the abilities of OOo or needs to use advanced features, she will find any of these in the menu. However, the menu should never be the default way of using basic functionality. Therefore, we need to design an efficient way for accomplishing all basic, less advanced tasks without the menu. In addition, this should be as obvious as possible to the users in order to foster learning and to quickly increase familiarity.

These considerations lead us to the prototypes you can currently try out here. A few of those were already deprecated since they did lead to confusion at different screen resolutions. We are still working on basic navigation concepts, so most of the details are not fixed now. This is actually what comes next. The questions we will need to answer soon are 1. How do we label? And 2. How do we group?

So, stay tuned, check out the progress of the prototypes and give feedback.

Best,
Andreas

tags:

Posted by Andreas Bartel on 28 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[3]

Monday, 22 Jun 2009
Updated User Feedback Data for OOo 3.1
Frank Loehmann

The user feedback program is still running and provides tons of data about what features are being used by our users in real live. This usage data will be used within Project Renaissance.

The spreadsheet with a summary of this data has been updated this week and now covers Writer, Calc, Impress, Draw and a summary over all applications.

Best regards

Frank

tags:

Posted by Frank Loehmann on 22 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[1]

Thursday, 18 Jun 2009
Prototyping Towards a New OOo User Interface
Frank Loehmann

Project Renaissance has entered the prototyping phase this week.

The phase will take six weeks. Andre Fischer and Bernd Eilers have joined the Renaissance team for this time to develop the prototypes. We have started to build a Java based prototyping framework this week.

The prototypes will be made available through the prototyping home page as soon as they become available. So stay tuned!

Best regards

Frank

tags:

Posted by Frank Loehmann on 18 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[2]

Tuesday, 16 Jun 2009
Annual OpenOffice.org QA weekend 2009
Joost Andrae

Last weekend the German QA team, people from Switzerland and a volunteer from Austria met at the conference hotel "Linux Hotel" in Essen, Germany to talk about quality assurance within OpenOffice.org and to work and inform each other.

Topics discussed:

Automation
Responsibilities
Communication
Tooling for QA (Testtool, Quaste, Buildbots, Testbots)

Friday
In the evening, most of the attendees arrived and held a barbecue, starting to talk intensively about OpenOffice.org QA and it's processes.

Saturday
Jaqueline Rahemipour opened the event, providing organizational information and talked about technical items regarding the location.

Rafael Bircher talked about child workspaces, master workspaces, working with IssueTracker, EIS and with build bots.

Mechtilde Stehmann informed about the OpenOffice.org release process and talked about the organizational background.

Stefan Baltzer talked about "breeding and fostering of quality" (Editor's note: I'm not sure if there is such a colloquial available within the English language...). Based on the presentation that Thorsten Ziehm held at the OOo Conference in Beijing in November 2008, he gave an overview about quality assurance in general. Then he moved to the current QA work within the OOo project, reflecting the perception of quality from different points of view. As intended, a contructive dialog about responsibilities, commitment and competency within the project arose.
This dialog blended over to the so-called "issue/bug hunting party". For more than 8 hours, a huge amount of unconfirmed issues were processed. All people involved had a lot of fun and enhanced knowledge about issue processing.

Sunday
André Schnabel presented the latest OTE Translation tool as well as news in Pootle.

Helge Delfs presented the current state and features of the QUASTE application. People were impressed about the intuitive and helpful information QUASTE can refine from test results uploaded to its database.

Last but not least I would like to thank Jacqueline Rahemipour for successfully organizing this event.

tags:

Posted by Joost Andrae on 16 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[0]

Friday, 12 Jun 2009
New: OOo-DEV 3.1.1 Developer Snapshot (build OOO310_m13) available
Marcus Lange

Developer Snapshot build OOo-Dev OOO310_m13 which installs as OOo-DEV 3.1.1 has been uploaded to the mirror network.

If you find severe issues within this build please file them to OpenOffice.org's bug tracking system IssueTracker.

Please use the following link
http://download.openoffice.org/next

Packages are also available from extended mirror sites ( listed with an [E] ) from the ".../extended/developer/OOO310_m13" directory:
http://distribution.openoffice.org/mirrors/#extmirrors

MD5 checksums:
http://download.openoffice.org/next/md5sums/index.html

tags:

Posted by Marcus Lange on 12 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[2]

Thursday, 11 Jun 2009
New: OOo-DEV 3.x Developer Snapshot (build DEV300_m50) available
Marcus Lange

Developer Snapshot build OOo-Dev DEV300_m50 which installs as OOo-DEV 3.x has been uploaded to the mirror network.

If you find severe issues within this build please file them to OpenOffice.org's bug tracking system IssueTracker.

Please use the following link
http://download.openoffice.org/next

Packages are also available from extended mirror sites ( listed with an [E] ) from the ".../extended/developer/DEV300_m50" directory:
http://distribution.openoffice.org/mirrors/#extmirrors

MD5 checksums:
http://download.openoffice.org/next/md5sums/index.html

tags:

Posted by Marcus Lange on 11 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[0]

Tuesday, 09 Jun 2009
The JRuby "Hello World" example
Steffen Grund

Ruby is a programming language that is available since the mid-ninetees. It is powerful, object-oriented and allows to write short code. And, of course, there is the Java implementation JRuby where it is possible to call Java code directly. I have been to JavaOne (http://java.sun.com/javaone/) last week and had the chance to attend a technical session held by the JRuby guys, Charles Nutter and Thomas Enebo. As a result, I found it possible to get JRuby to work with OpenOffice.org without too much trouble.

After a little time spent on the Ruby language, I came up with a first „Hello World“ program in NetBeans that uses JRuby for scripting OpenOffice.org.

To let the script run successfully, you just have to do this:

  • Create a new Ruby project in NetBeans (this works with NetBeans 6.5 and later - not sure about earlier versions)
    Click on „File“ → „New Project...“, then select category „ Ruby“ and choose „Ruby Application“. I gave the new project the name „HelloRubyWorld“. Click „Finish“ next.

  • Add some OpenOffice.org jars to the project
    Click right on the project name and select the project's properties. Click on the „Java“ category and add the following jars: juh.jar, jurt.jar, ridl.jar and unoil.jar. For the exact location, search in your OpenOffice.org installation.

  • Start OpenOffice.org in a shell with the following parameter (including the quotes):
    "-accept=pipe,name=jrubypipe;urp;"
    (See this article about connecting OpenOffice.org: http://wiki.services.openoffice.org/wiki/UNO_registery_and_Bootstrapping#The_Bootstrap)

  • Copy the following script into the main.rb file and let it run.

require 'java'

# some uno type definitions for UnoRuntime.queryInterface(java class, object)
resolvertype = com.sun.star.bridge.XUnoUrlResolver
loadertype = com.sun.star.frame.XComponentLoader
documenttype = com.sun.star.text.XTextDocument
contexttype = com.sun.star.uno.XComponentContext
propertytype = com.sun.star.beans.XPropertySet

# service names - the following are Ruby strings, actually. They are transformed
# automatically into a Java strings when used in that context
urlresolver = "com.sun.star.bridge.UnoUrlResolver"
desktop = "com.sun.star.frame.Desktop"

# helper class with "static" declaration
class Uno
  class << self
    def query(type, object)
      # notice the JRuby method to get the java class from "type";
      # the result of the last line is always the return type and JRuby
      # duck-types, so there is no need for a cast to the Java type;
      # I used the Ruby syntax to access the UnoRuntime class,
      Java::com::sun::star::uno::UnoRuntime.query_interface(type.java_class, object)
      # but the following would also work:
      #com.sun.star.uno.UnoRuntime.queryInterface(type.java_class, object)
      # even a mixture of both is possible
    end
  end
end

# use the Ruby feature to extend classes on the fly, here I extend the service
# manager with a new method called "info". This is a bit evil, because the
# ServiceManager implementation is not part of the API of OpenOffice.org and
# mere an implementation detail.
class Java::com::sun::star::comp::servicemanager::ServiceManager
  def info
    # get the service names
    names = getAvailableServiceNames()
    # print each name
    names.each {|n| puts "Service #{n}"}
  end
end

# create local component context, nil means null in Java
component_context = com::sun::star::comp::helper::Bootstrap.createInitialComponentContext(nil)
# get the service manager
msf = component_context.getServiceManager()
# use the added method above to print all service names
msf.info
# create a UnoUrlResolver - and query for the type
url_resolver = Uno.query(resolvertype, msf.createInstanceWithContext(urlresolver, component_context))
# resolve the remote connection
remote_connection = url_resolver.resolve("uno:pipe,name=jrubypipe;urp;StarOffice.ServiceManager")

# get the property set from the remote OpenOffice.org instance
property_set = Uno.query(propertytype, remote_connection)
# get the default context property and query for the type
remote_context = Uno.query(contexttype, property_set.getPropertyValue("DefaultContext"))
# get the remote service manager - now we're all set!
remote_msf = remote_context.getServiceManager()

# now that the connection is established, do something with the Office
# create a desktop instance and query the component loader type
loader = Uno.query(loadertype, remote_msf.createInstanceWithContext(desktop, remote_context))
# load an empty writer document - notice the creation of an empty Java type array at the end
component = loader.loadComponentFromURL("private:factory/swriter", "_blank", 0,
  Java::com.sun.star.beans.PropertyValue[0].new)
# query the text document type
document = Uno.query(documenttype, component)

# insert the Hello Ruby World text
document.getText().createTextCursor().setString("Hello Ruby World")

puts "Finished."

What's the benefit of this? Besides getting a new language to use with OpenOffice.org, I am really interested in using the interactive console of JRuby, called jirb (http://wiki.jruby.org/wiki/Getting_Started#jirb:_Ruby_Interactive_Console). The console lets you type commands and executes them immediately. You could play around with the OpenOffice.org API without the need of re-starting your script from the beginning when you did something wrong. Instead, you would just correct the wrong command and type it again.

Some additional remarks:

  • This is just a first shot. If someone with more Ruby knowledge has suggestions for improvements, please let me know.

  • I have not tried to run this outside of NetBeans – my guess is that it will not work. There are some „ require“ statements missing and I think NetBeans helps out here to make them not necessary. If you have trouble to get this to work inside NetBeans, let me know.

  •  Finally, a link to the JRuby project: http://kenai.com/projects/jruby


tags:

Posted by Steffen Grund on 09 Jun 2009  |  PermaLink |  Bookmark to Delicious To Delicious |  Digg this Digg this  |  Comments[2]

Main | Next page » GullFOSS