Evolutional Analysis of Licenses in FOSS

30
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka Univ Evolutional Analysis of Licenses in FOSS Yuki Manabe Yasuhiro Hayase‡ Katsuro Inoue † †Osaka University, Japan ‡Toyo University, Japan 2010/9/21 - IWPSE2010 1

description

Evolutional Analysis of Licenses in FOSS. Yuki Manabe † Yasuhiro Hayase ‡ Katsuro Inoue † †Osaka University, Japan ‡Toyo University, Japan. Overview. Statistical study on the evolution of licenses on Free Open Source Software(FOSS) - PowerPoint PPT Presentation

Transcript of Evolutional Analysis of Licenses in FOSS

Page 1: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Evolutional Analysis of Licenses in FOSS 

Yuki Manabe†Yasuhiro Hayase‡ Katsuro Inoue †

†Osaka University, Japan‡Toyo University, Japan

2010/9/21 - IWPSE2010 1

Page 2: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Overview• Statistical study on the evolution of

licenses on Free Open Source Software(FOSS)– Analyzing the licenses in FreeBSD,

OpenBSD, Eclipse and ArgoUML during the course of their evolution

• Licenses can sometimes drastically change between releases

• Kernel also have Great License Shifts

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 2

Page 3: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Software license• The permissions of use, and describes the

requirements and conditions to get such permission.

• 66 licenses approved by Open Source Initiative1 as Open Source License– Satisfying the open source definition

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 3

1 http://www.opensource.org/

Page 4: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 4

Ninka[6] Automatically license identification tool – Reporting license name (112 licenses)• BSD3(BSD 3-clause license)• GPLv2+(GNU Public License version2 or

later)– Precision: 96.6%

2010/9/21 - IWPSE2010

Source File

License name

Knowledge baseRule matching

[6]D. M. German et.al. A sentence-matching method for automatic license identification of source code files. In Proc. ASE 2010, 2010. (To appear).

Page 5: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Evolution of licenses• Software licenses are adapted to

environment• Software licenses evolves because of ... [2]– author's requirement– user's demand– external pressure

• [2] only analyzed first and last versions in target versions with respect to license changes. And no detail of the evolution characteristics was analyzed

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 5

[2] M. Di Penta, D. M. German, Y.-G. Gueheneuc, and G. Antoniol. "An exploratory study of the evolution of software licensing" , ICSE2010.

Page 6: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Research theme• Goal– Finding characteristics of change of

licenses in the evolution of FOSS

• Approach– Analyzing the licenses of several

releases of large-scale FOSS with Ninka

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 6

Page 7: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Analysis targets

2010/9/21 - IWPSE2010 7Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

FreeBSD(all)

FreeBSD(kernel)

OpenBSD(all)

OpenBSD(kernel)

Eclipse ArgoUML

Type OS kernel,applications

OS kernel OS kernel, applications

OS kernel SDE platform

UML Design Tools

Release Version

2.2-8.0 2.0-4.7 2.0-3.5.2

0.8.1-0.31.1

Release Date

1994/11-2009/11

1996/10-2010/5

2002/6-2009/9

2000/10-2010/6

# release 28 45 25 79#Files(oldest-latest)

4412-21266

627-3490

6245-14181

987-3314

11419-35880

686-2208

Version Control System

CVS CVS CVS Subversion

Page 8: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Experiments1. Examine the number of files under each

license at each release version in FreeBSD (all), OpenBSD (all), Eclipse and ArgoUML

2. Analyze the difference of licensed file number across different versions in FreeBSD(all) and OpenBSD(all)

3. Examine the difference in evolution patterns of OS all and OS kernel

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 8

Page 9: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Experiment 1License ratio

1. Examine the number of files under each license at each release version in FreeBSD (all), OpenBSD (all), Eclipse and ArgoUML

2. Analyze the difference of licensed file number across different versions in FreeBSD(all) and OpenBSD(all)

3. Examine the difference in evolution patterns of OS all and OS kernel

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 9

Page 10: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.2.02.2.2

2.2.62.2.8

3.1.03.3.0

3.5.04.1.0

4.2.04.4.0

4.6.04.6.2

4.8.04.10.0

5.0.05.2.0

5.3.05.5.0

6.1.06.3.0

7.0.07.2.0

8.0.00

2000

4000

6000

8000

10000

12000

14000

16000

BSD4 BSD3 BSD2 GPLv2+LibraryGPLv2+ Others NONE UNKNOWN

Release Version

#file

s

FreeBSD (all)

10

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4 Increased BSD2 and BSD3

Page 11: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.70

5000

10000

15000

20000

25000

BSD4 BSD3 BSD2 GPLv2+MITold1 Others NONE UNKNOWN

Release Version

#file

s

OpenBSD (all)

11

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4Increased BSD2 and BSD3

Page 12: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.02.0.1 2.1

2.1.12.1.2

2.1.3 3.03.0.1

3.0.2 3.13.1.1

3.1.2 3.23.2.1

3.2.23.3.1

3.3.1.13.3.2 3.3 3.4

3.4.13.4.2 3.5

3.5.13.5.2

0

5000

10000

15000

20000

25000

30000

35000

40000

45000

EPLv1 CPLv0.5 CPLv1 MPLv1_1BSD3 Others NONE UNKNOWN

Release Version

#file

s

Eclipse

12

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

CPLv0.5→CPLv1.0 CPLv1.0→EPLv1.0

Page 13: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

0.8.10.9.2

0.9.60.9.9

0.11.10.11.4

0.13.20.13.5

0.14.10.15.3

0.15.60.17.1

0.17.40.18.1

0.19.40.19.7

0.21.10.22

0.23.30.24

0.25.30.25.6

0.26.20.27.3

0.29.10.29.4

0.31.10

500

1000

1500

2000

2500

EPLv1 Apachev2 BSD2 LesserGPLv2.1LesserGPLv2.1+ Others UNKNOWN NONE

Release Version

#file

s

ArgoUML

13

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

UNKNOWN(BSD-like license)→EPLv1.0

Page 14: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Findings of Experiment 1• Licenses of the BSD systems are rather

diverse and loosely controlled, compared to Eclipse and ArgoUML

• A few-license cover almost all files in Eclipse and ArgoUML

• Sometimes those licenses are drastically changed to others by the strong management to the overall systems

• Those changes relax or tighten the conditions of the license

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 14

Page 15: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Experiment 2License File Increase/Decrease

1. Examine the number of files under each license at each release version in FreeBSD (all), OpenBSD (all), Eclipse and ArgoUML

2. Analyze the difference of licensed file number across different versions in FreeBSD(all) and OpenBSD(all)

3. Examine the difference in evolution patterns of OS all and OS kernel

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 15

Page 16: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.2.12.2.5

2.2.73.0.0

3.2.03.4.0

4.0.04.1.1

4.3.04.5.0

4.6.14.7.0

4.9.04.11.0

5.1.05.2.1

5.4.06.0.0

6.2.06.4.0

7.1.07.3.0

-800

-600

-400

-200

0

200

400

600

800

BSD4 BSD3 BSD2GPLv2+ LibraryGPLv2+

Release Version

#file

s

FreeBSD (all)

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 16

v5.2.1 - v5.3531 files under BSD4 were moved to other license BSD2 or BSD3.

Page 17: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.7

-2500

-2000

-1500

-1000

-500

0

500

1000

1500

BSD4 BSD3 BSD2 GPLv2+ MITold1

Release Version

#file

s

OpenBSD (all)

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 17

v3.3 - v3.42255 files under BSD4 were moved to other license BSD2 or BSD3.

Page 18: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.70

5000

10000

15000

20000

25000

BSD4 BSD3 BSD2 GPLv2+MITold1 Others NONE UNKNOWN

Release Version

#file

s

OpenBSD (all)

18

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

There are large shifts of licenses along with system evolution

Page 19: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Experiment 3Difference of all and kernel

1. Examine the number of files under each license at each release version in FreeBSD (all), OpenBSD (all), Eclipse and ArgoUML

2. Analyze the difference of licensed file number across different versions in FreeBSD(all) and OpenBSD(all)

3. Examine the difference in evolution patterns of OS all and OS kernel

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 19

Page 20: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.2.02.2.2

2.2.62.2.8

3.1.03.3.0

3.5.04.1.0

4.2.04.4.0

4.6.04.6.2

4.8.04.10.0

5.0.05.2.0

5.3.05.5.0

6.1.06.3.0

7.0.07.2.0

8.0.00

2000

4000

6000

8000

10000

12000

14000

16000

BSD4 BSD3 BSD2 GPLv2+LibraryGPLv2+ Others NONE UNKNOWN

Release Version

#file

s

FreeBSD (all)

20

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4Increased BSD2 and BSD3

Page 21: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.2.02.2.2

2.2.62.2.8

3.1.03.3.0

3.5.04.1.0

4.2.04.4.0

4.6.04.6.2

4.8.04.10.0

5.0.05.2.0

5.3.05.5.0

6.1.06.3.0

7.0.07.2.0

8.0.00

500

1000

1500

2000

2500

3000

3500

4000

BSD4 BSD3 BSD2 InterACPILicCDDLic Others NONE UNKNOWN

Release Version

#file

FreeBSD (kernel)

21

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4Increased BSD2 and BSD3

Page 22: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.70

5000

10000

15000

20000

25000

BSD4 BSD3 BSD2 GPLv2+MITold1 Others NONE UNKNOWN

Release Version

#file

s

OpenBSD (all)

22

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4Increased BSD2 and BSD3

Page 23: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 4.0 4.1 4.2 4.3 4.4 4.5 4.6 4.70

500

1000

1500

2000

2500

3000

3500

BSD4 BSD3 BSD2 MITold1MITold2 Others NONE UNKNOWN

Release Version

#file

s

OpenBSD (kernel)

232010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Decreased BSD4Increased BSD2 and BSD3

We had expected to see the different evolution pattern between kernels and alls

but they are almost similar

Page 24: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Summary of findings• There are large shifts of license in FreeBSD (all)

and OpenBSD (all)• ArgoUML and Eclipse also have similar large

shifts– Sometimes those licenses are more

drastically changed to others than FreeBSD (all) and OpenBSD (all)

– A few licenses cover almost all files in those systems

• The kernel of FreeBSD and OpenBSD also have large shifts

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 24

Page 25: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

Conclusions & Future work• Statistical study on the evolution of licenses on FOSS– Analyzing the licenses in FreeBSD, OpenBSD,

Eclipse and ArgoUML during the course of their evolution

– Finding large shifts of licenses in evolution of FOSS• Future Work– More fine-grained analysis– Analysis of the relation between drastic license

change and other log data such as mailing list archive

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 25

Page 26: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue 26

Page 27: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University27

• Supplemental Slides

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Page 28: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University28

Advertisement clause of BSD43. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the <organization>.

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Page 29: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University29

Endorsement clause of BSD3

• Neither the name of the <organization> nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue

Page 30: Evolutional Analysis of Licenses in FOSS

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University30

Patent clause of CPLv1.0In Section 7• "If Recipient institutes patent litigation

against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed."

2010/9/21 - IWPSE2010 Yuki Manabe, Yasuhiro Hayase and Katsuro Inoue