開放原始碼 ch1.1 intro - oss (ver 1.0)

33
OPEN SOURCE SOFTWARE 專專專專專–專專專專專 專專專專專專 () – OSS Introduction (1) CH 1

Upload: my-own-sweet-home

Post on 17-May-2015

420 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

O P E N S O U RC E S O FT WA R E

專案管理軟體–管理與實務 (開放原始碼)

– OSS Introduction (1)

CH 1

Page 2: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

2

OBJECTIVES

• Understanding Present Business Competition• Why should we pay attention to OSS ?

• Understanding Open Source Software• Definitions and Principles• Application Categories

• Understanding how companies use IT/IS nowadays• Integration levels

Page 3: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

3

OUTLINE

• i-Business and i-Company

• OSS definition and principles

• OSS application Categories

• Back to Business• Organizational IT/IS Adoption and Application

• Cases• Eclipse, Netbeans, Monodevelop

• Applications

Page 4: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

4

I-BUSINESS AND I-COMPANY1

• Resource Based View (資源基礎觀點)• 稀少、不可取代、難以模仿、價值創造

• Firm-specific capability• Business process, IT/IS, ERP agility

• IT/IS: critical resource != 競爭優勢• Routine operation• Business process• Marketing promotion• Customer relationship maintenance• Business strategy planning

Page 5: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

5

I-BUSINESS AND I-COMPANY2

• 取得 IT/IS• In-house development (昂貴、長開發時間)• Commercial proprietary software/systems (昂貴、無法任意修改)• Open Source Software

• Open Source Software• 使用者可以自由、獨立與沒有分別地使用軟體與其原始碼• 軟體授權下允許的再使用:使用者取得並自由修改原始碼與功能的特

將有助於企業的 IT 部門或專員,針對商業需求進行軟體功能的調整或新增,大幅縮短內部重新自行發展軟體的時程與投資。

風險呢? 授權條款、 IT 維運能力

Page 6: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

6

INTRODUCTION TO OSS

Page 7: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

7

OSS DEFINITION AND PRINCIPLES1

• 開放原始碼軟體之使用與修改受到該軟體所依附之授權條款( open source license )而有所不同與限制• GPL• Apache, BSD

• Open Source Initiative (1998)• http://www.opensource.org/• Open Source Definitions (OSD)• http://www.opensource.org/osd.html

• Open source licenses• http://www.opensource.org/licenses/index.html

Page 8: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

8

OSS DEFINITION AND PRINCIPLES2

• 自由再散佈 Free Redistribution (of the software)

• 根據 OSS 的授權條款,可讓使用者免費取得、自由使用並重新再散佈(以其他程式 package 的形式),不需知會原始所有者。此外,該軟體所有人亦不得要求費用(可要求必要成本,如:光碟壓制、運送)。此原則為 OSS 之關鍵基礎,唯有此項原則成立, OSS 的自由使用才有法律效力。

Page 9: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

9

OSS DEFINITION AND PRINCIPLES3

• 原始碼 (Access to) Source Code

• 屬於 OSS 的程式都需公開其原始碼,不得是任何編譯後的中介檔,或僅提供最終二進位碼。原始碼可以選擇是否隨最終程式散佈,但皆必須提供便於取得之方式。此原可確保開放原始碼軟體具有可取得之特性(內容可讀性)

• 值得注意的是,根據授權條款此原則僅套用於 OSS 本身,並不影響僅使用 OSS (無修改其原始碼)的後續軟體應用。

Page 10: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

10

OSS DEFINITION AND PRINCIPLES4

• 衍生著作 (Allow modifications and) derived Works

• 此項原則指出 OSS 之授權條款必須允許使用者可修改其原始碼,此外,經修改後的 OSS 必須遵循原有授權方式進行再散佈。

• 許多授權條款在此原則上差異甚大,例如: GPL v1 的授權要求修改後程式,依循原始 GPL v1 ,必須進行完整公開(不論使用或修改的比例多寡); Apache 授權則允許受修改之 OSS ,依循原始 Apache 授權,修改者(例如:企業的 IT 人員)可保留是否公開原始碼的權力。

• 此項原則成為使用者使用或修改 OSS 必須特別仔細注意該軟體之授權,當心違反了條款內容,也成為該 OSS 是否具有商用潛力的關鍵,例如:EPL 則十分適合商業用途。

• 第二、三項原則確保了 OSS 的軟體可讀性與可修改的性質,可加速軟體本身的進步與發展( evolution )。

Page 11: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

11

OSS DEFINITION AND PRINCIPLES5

• 原創作者程式原始碼的完整性 Integrity of The Author's Source Code

• 此原則指出, OSS 之授權可要求原始者程式碼的完整性,但必須允許其他使用者以修正檔( patch files )的方式對該 OSS 進行修改並加入散佈的程式包裹( package )。依循此原則, OSS之授權條款亦可要求受到修改後的 OSS 成果( i.e., derived works )冠以不同名稱或版本而與原始版本做區別。此原則可確保並區分各程式開發者之責任與評價。

Page 12: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

12

OSS DEFINITION AND PRINCIPLES6

• 不得對任何人或團體有差別待遇 No Discrimination Against Persons or Groups

• 歸屬 OSS 的軟體其授權條款不得限制使用者或使用團體。然而,某些國家(如:美國)當地法律有軟體輸出限制,授權條款可提醒使用者有此限制存在,但條款本身不得具有該種限制。

Page 13: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

13

OSS DEFINITION AND PRINCIPLES7

• 對程式在任何領域內的利用不得有差別待遇 No Discrimination Against Fields of Endeavor

• 歸屬 OSS 的軟體其授權條款不得限制使用該軟體的領域,例如:限制商用或用於基因研究。值得注意的是, OSS 的授權條款本身並不排斥商業用途,但某些授權使用規定(如: GPL v1 要求開放所有原始碼),則可能降低或限制了最終產品之可商用潛力。

Page 14: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

14

OSS DEFINITION AND PRINCIPLES8

• 散佈授權條款 Distribution of license

• OSS 之軟體授權協議隨著 OSS 散佈適用至收到程式的所有使用者,無論僅使用或修改後使用,都不得變更該 OSS 之原始授權協議。

• 一旦使用了某個 OSS 則等同於接受了該 OSS 所採用的授權條款。這項協議確保了使用者對於 OSS 的使用或修改皆無法變動原始授權,然而也由於授權無法變更,使用者必須接受授權協議所明定的條文,因此可能影響最終的商用潛力,例如:採用 GPL v1 之OSS規定衍生程式皆需公開且不得營利。

Page 15: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

15

OSS DEFINITION AND PRINCIPLES9

• 授權條款不得專屬於特定產品 License Must Not Be Specific to a Product

• 意指個別 OSS 的授權協議並非限定於整體產品之授權條款。即使從一個程式套裝包裹( program package )中抽取或散佈部分OSS 程式碼片段、函式庫等,採用者(即:程式接收者)皆需遵守該 OSS 所採用之授權條款(並獲得特定權力)。

Page 16: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

16

OSS DEFINITION AND PRINCIPLES10

• 授權條款不得限制其他軟體 License Must Not Restrict Other Software

• OSS 本身的授權條款僅適用於該 OSS ,不得影響與限制其他一同散佈軟體之授權條款。

Page 17: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

17

OSS DEFINITION AND PRINCIPLES11

• 授權條款必須技術中立 License Must Be Technology-Neutral

• OSS 之授權條款必須技術中立,不得限制或偏好特定方式以取得OSS 原始碼,必須提供便利的取得方式(例如:不能限制僅能以透過圖型化介面的方式來取得軟體),此項原則確保了 OSS 的散佈特性。

Page 18: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

18

OSS DEFINITION AND PRINCIPLES12

• 僅使用 OSS 進行衍生程式開發,較不會產生使用爭議,依循授權協議使用者可以自由使用、散佈、整合其他程式而進行販售,但須注意是否檢附 OSS 原始碼。

• 若涉及修改任何 OSS 原始碼,則衍生產品皆需遵守原始授權協議,而注意是否需釋放修改的程式碼,進而影響商業用途,例如: BSD 授權適合商用、 GPL 則不合適商用(需公開程式碼、不得獲利)、 LGPL 則是修改後的 GPL適合商用。

Page 19: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

19

OSS DEFINITION AND PRINCIPLES13

• 課後閱讀

• 開放源碼定義與開放源碼促進會http://www.openfoundry.org/tw/basic-concepts/1447-2010-07-13-09-57-12

•GPL (GNU General Public License)• GPL  條款對於衍生程式的判定標準與其授權拘束性的擴散範圍(上)

http://www.openfoundry.org/tw/legal-column-list/8446-the-license-inheritance-bounds-of-gnu-gpl-01

• GPL  條款對於衍生程式的判定標準與其授權拘束性的擴散範圍(下)• http://www.openfoundry.org/tw/legal-column-list/8447-the-license

-inheritance-bounds-of-gnu-gpl-02

Page 20: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

20

OSS APPLICATION CATEGORIES

( 1 ) OSS 應用確實廣泛遍及於各產業及領域,並具有不同 IT/IS層級的應用可能性;( 2 )相同的 OSS 應用對應不同企業之產業特性,可能產生不同程度的採用與使用。

( Aksulu & Wade, 2010 )

Page 21: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

21

ORGANIZATIONAL IT/IS

ADOPTION AND APPLICATION

Page 22: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

22

ORGANIZATIONAL IT/IS ADOPTION AND APPLICATION1

因素

科技( Technology )

組織( Organization )

Environment (環境)

可能觀察特徵

• 相對優勢• 相容性• 複雜性• 可試用性• 可觀察性

• 溝通管理機制• 資源(含:非 IT 之互補性資源,財務與人資)

• 組織創新性(高階主管思維)

• 外部支援可取得性( OSS 之第三方顧問)

• 產業特性(變動速度)

• 上下游關係(供應商、客戶)

• 產業生命階段(草創、發產、成熟、衰退)DePietro, Wiarda and Fleidcher, 1990

Page 23: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

23

ORGANIZATIONAL IT/IS ADOPTION AND APPLICATION2

• 策略管理層級• 高階主管支援系統 (executive

supporting systems, ESS)

• 管理控制層級• 管理資訊系統 (management

information systems, MIS)• 決策支援系統 (decision support

systems, DSS)

• 資訊工作層級• 知識工作系統 (knowledge work

systems, KWS)• 辦公室系統 (office systems, OS)

• 作業處理層級• 交易處理系統 (transaction process

systems, TPS)

經由此種階層式的架構,可進一步檢視企業所採用之 OSS 應用,屬於何種深度的 IT/IS採用與使用

Page 24: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

24

ORGANIZATIONAL IT/IS ADOPTION AND APPLICATION2

• 組織規模• 1. 大型企業相較於中小企業:更制度化與完善之溝桶管理機制、更充足之財務或 IT 專業人力;大型企業追求穩定性的考量下,採用OSS 應用似乎也更須考量額外之風險• 自行開發?• 買入現有?• 選用 OSS ?

• 2. IT 專責人員缺乏的中小企業, OSS幾乎免費,較商業軟體,取得容易;但 IT 人員不足無法進行原始碼修改,可能難以獲得 OSS 應用之科技相對優勢與相容性• 自行開發?• 買入現有?• 選用 OSS ?

Page 25: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

25

CASES

Page 26: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

26

CASES1

• IDEs (software development)• Eclipse• Netbeans• MonDvelop

Page 27: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

27

ECLIPSE

Page 28: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

28

ECLIPSE

• Eclipse RCP• Rich Client Platform

• Eclipse Based Product• MyEclipse• iReport• Aptana Studio• BIRT• JBuilder

• 基於 RCP 延伸開發加值系統• 減少基礎開發成本• 豐富的開發支援與穩定平台

Page 29: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

29

NETBEANS

Page 30: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

30

NETBEANS

• Rich Client Platform• iReport• Export to PDF, XHTML, OpenOffice, MS Word, MS Excel, XML,

Text, and many more.

http://jasperforge.org/website/ireportwebsite/IR%20Website/ir_features.html?header=project&target=ireport

Page 31: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

31

MONODEVELOP

Page 32: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

32

MONODEVELOP

• designed for C# and other .NET languages

• http://monodevelop.com/Screenshots

Page 33: 開放原始碼 Ch1.1   intro - oss (ver 1.0)

33

APPLICATIONS

• App-Stick• http://www.app-stick.com/• Portable App

• Portableapps• http://portableapps.com/

• TTCS OSSWIN CD• http://www.ttcsweb.org/osswin-cd/• The TTCS OSSWIN CD is a collection of over 100 Free and

Open Source Software for home and business (i.e. any) users using the Microsoft Windows 7/Vista/XP/2000 operating systems.