Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "ECE2011/Starting an Eclipse Project: The first 90 days… and the year that follows/Content"

(Management?)
Line 13: Line 13:
  
 
==What is Open Source?==
 
==What is Open Source?==
 +
 +
==BREDEX - Who we are...==
 +
* I am a software developer & test consultant @ BREDEX
 +
* since 2010 Eclipse committer & open-sourcer
 +
**technology.jubula + technology.packaging
 +
* BREDEX GmbH medium sized company located in Braunschweig, Germany - founded in 1987
 +
* Eclipse Strategic Developer Member & ASQF e.V.
 +
* Host of various (Eclipse) events
 +
** Braunschweiger Eclipse get-together since 2007
 +
** Eclipse Demo Camps 2009 / 2010 / 2011
 +
** Eclipse Testing Day 2010 / 2011
 +
** ...
 +
 +
==BREDEX - What we do...==
 +
* since 1995 software development focus on Java
 +
* ever since end-user projects in various industries
 +
* UI oriented software development
 +
* lack of tooling for UI test automation - requirements:
 +
** no coding
 +
** application independent
 +
** support for modularity, abstractness and reusability
 +
* since 2004 commercial tool for automated GUI-testing
 +
** GUIdancer - Eclipse community award Winner 2010
 +
 +
==Why open source GUIdancer?==
 +
*
 +
 +
==Why Eclipse?==
 +
*
 +
 +
==The beginning==
 +
* 14th October 10 - Initial public "Jubula" project proposal
 +
** http://www.eclipse.org/proposals/jubula
 +
* internal renaming process
 +
** com.bredexsw.guidancer.* >> org.eclipse.jubula.*
  
 
=Intellectual Property Management=
 
=Intellectual Property Management=
Line 48: Line 83:
 
==Third-Party Libraries==
 
==Third-Party Libraries==
 
Pre-req, Exempt Pre-req, Works with
 
Pre-req, Exempt Pre-req, Works with
 +
 +
==Welcome to the real world... 350k LoC==
 +
* Oct. / Nov. / Dec. 2010 - analyze API / 3rd party code usage
 +
* Identified > 30 non-critical libraries / licenses
 +
** Apache license 1.1 and 2.0: POI, Commons Lang, Commons CLI, Commons codec, Commons IO, Commons Logging, ORO, BeanUtils, XMLBeans, Collections...
 +
** MIT license: SLF4J + New BSD license: Xstream
 +
** Custom / derived license e.g. based on Apache 1.1: dom4j
 +
** Eclipse Public Licenses: h2 Database
 +
>> piggyback CQ in IPZilla + reuse / adjust API usage (versions) from Orbit
 +
>> low risk & cost: known API only different version
 +
 +
==Welcome to the mean world...==
 +
* Identified critical (non-EPL conform) libraries / licenses
 +
* GNU Lesser General Public License (LGPL):
 +
** Hibernate
 +
*** Jubula main data storage: backend database
 +
*** replace ORM-Framework
 +
*** move to JPA and EclipseLink as persistence provider
 +
*** high risks & costs: three man weeks for API change
 +
** JTopas - java string tokenizer and parser
 +
*** replace parsing library + subtle syntax changes
 +
*** use of SableCC (also LGPL) artifacts which are non-LGPL
 +
 +
==Open your source==
 +
* three months of preparation since project proposal
 +
* initial source code contribution - CQ4707 - 2010-12-17
 +
** first feedback 2010-12-23:

Revision as of 10:52, 24 October 2011

{Copyright:Copyright © 2011 Eclipse Foundation, Inc. and BREDEX GmbH, Made available under the Eclipse Public License v 1.0}

Starting an Eclipse Project: The first 90 days…

Wayne Beaton Markus Tiede

Agenda

  • What is Open Source?
  • Intellectual Property Management
  • Configuration Management and Build
  • Community
  • Process
  • Results

What is Open Source?

BREDEX - Who we are...

  • I am a software developer & test consultant @ BREDEX
  • since 2010 Eclipse committer & open-sourcer
    • technology.jubula + technology.packaging
  • BREDEX GmbH medium sized company located in Braunschweig, Germany - founded in 1987
  • Eclipse Strategic Developer Member & ASQF e.V.
  • Host of various (Eclipse) events
    • Braunschweiger Eclipse get-together since 2007
    • Eclipse Demo Camps 2009 / 2010 / 2011
    • Eclipse Testing Day 2010 / 2011
    • ...

BREDEX - What we do...

  • since 1995 software development focus on Java
  • ever since end-user projects in various industries
  • UI oriented software development
  • lack of tooling for UI test automation - requirements:
    • no coding
    • application independent
    • support for modularity, abstractness and reusability
  • since 2004 commercial tool for automated GUI-testing
    • GUIdancer - Eclipse community award Winner 2010

Why open source GUIdancer?

Why Eclipse?

The beginning

Intellectual Property Management

The Basics

  • I am not a lawyer
    • Ask your lawyer for legal advice
  • Intellectual Property
    • Intellectual property (IP) is a term referring to a number of distinct types of creations of the mind for which a set of exclusive rights are recognized—and the corresponding fields of law.

Assumption

Open Source Project wants to be successful

Assertion

Intellectual Property Management is important in every open source project

Clarification

Intellectual Property Management is important in source project that cares about adoption

Management?

  • Who owns the copyright?
  • Is the owner really the owner?
  • What license does the owner grant?
  • Does the license allow what we need to do?
  • Is the license valid?
  • If I use this code, will I be sued?

Contributions

IplogFlag.png

Question

Do you care about adopters?

Third-Party Libraries

Pre-req, Exempt Pre-req, Works with

Welcome to the real world... 350k LoC

  • Oct. / Nov. / Dec. 2010 - analyze API / 3rd party code usage
  • Identified > 30 non-critical libraries / licenses
    • Apache license 1.1 and 2.0: POI, Commons Lang, Commons CLI, Commons codec, Commons IO, Commons Logging, ORO, BeanUtils, XMLBeans, Collections...
    • MIT license: SLF4J + New BSD license: Xstream
    • Custom / derived license e.g. based on Apache 1.1: dom4j
    • Eclipse Public Licenses: h2 Database

>> piggyback CQ in IPZilla + reuse / adjust API usage (versions) from Orbit >> low risk & cost: known API only different version

Welcome to the mean world...

  • Identified critical (non-EPL conform) libraries / licenses
  • GNU Lesser General Public License (LGPL):
    • Hibernate
      • Jubula main data storage: backend database
      • replace ORM-Framework
      • move to JPA and EclipseLink as persistence provider
      • high risks & costs: three man weeks for API change
    • JTopas - java string tokenizer and parser
      • replace parsing library + subtle syntax changes
      • use of SableCC (also LGPL) artifacts which are non-LGPL

Open your source

  • three months of preparation since project proposal
  • initial source code contribution - CQ4707 - 2010-12-17
    • first feedback 2010-12-23:

Back to the top