Nyílt forráskódú és szabad szoftverek

A tantárgy angol neve: Open Source and Free Software

Adatlap utolsó módosítása: 2011. február 15.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Mérnök informatikus szak
Villamosmérnöki szak
Szabadon választható tárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VITMAV66   2/0/0/f 2  
3. A tantárgyfelelős személy és tanszék Dr. Rétvári Gábor Ferenc,
A tantárgy tanszéki weboldala http://qosip.tmit.bme.hu/twiki/FLOSS
4. A tantárgy előadója
Név:Beosztás:Tanszék, Int.:
Dr. Rétvári Gábor Ferenctud. munkatársTMIT
Németh Feliciántud. s. munkatársTMIT
5. A tantárgy az alábbi témakörök ismeretére épít

-

6. Előtanulmányi rend
Ajánlott:
nincs
7. A tantárgy célkitűzése

A tárgy célja megismertetni a hallgatókkal a nyílt forráskódú és szabad szoftverek fejlesztésekor használt speciális programfejlesztési szemléletmódot és az itt használt eszközrendszereket, továbbá betekintést adni a szoftverterjesztés egyedi jogi szabályozási háttérébe és rámutatni a háttérben meghúzódó gazdasági motivációkra.

 

8. A tantárgy részletes tematikája

1. A kódmegosztás hagyományai a Unix és BSD történetén keresztül: az ősközösségtől a vadkapitalizmuson át napjainkig. Meghatározó emberek és szervezetek a szabad szoftver világában.

2. A katedrális és a bazár szoftvermenedzsment módszerek. Linus-törvénye. Változások a tanulmány publikálása óta. A Netscape nyílt forráskódúvá alakítja a Communicatort; a kezdetei siker elmaradásának okai.

3. Jogi és filozófiai háttér: Public Domain, General Public License, LGPL, Affero GPL, BSD típusú, alkotói, egyéb licenszek. Free Software movement és az Open Source. GPLv3 újdonságai, Tivoisation. Bírósági esetek.

4. Best practice a nyílt fejlesztésnél: a projekt előkészítésénél, elindításánál, reklámozásánál leggyakrabban használt, leginkább bevált módszerek. Kód-újrahasznosítás lehetőségei. Közösséginorma-építés.

5. Közösséget összetartó tényezők. Meritocracy, kettészakadás fenyegetése. Teendők fork esetén. Vezetési modellek: jóságos zsarnok, konszenzus alapú demokrácia, kreatív anarchia. Problémás, destruktív emberek kezelése.

6. Kollaboratív tudás, szabad közösségi tudásbázisok fejlesztése és karbantartása, a Wiki-mozgalom, a Wikipedia és társai, hozzászólások moderálása, dedikált moderálás, önmoderálás, példák. Egyéb a közösségi önszerveződését szabályozó módszerek

7. ZH. Központosított verzió kontroll, a kollaboratív fejlesztés módszerei, alapfogalmak, a többszörös hozzáférés módjai, primitív verzió kontroll, zárolás, konfliktusok fogalma, központosított verzió kontroll, architektúra és modell, a konfliktusok kezelése, tagging, branching/merging, a Subversion

9. Elosztott verzió kontroll, az elosztott verzió kontroll alapfogalmai és modellje, eltérések a központosított verzió kontrolltól, a push és a pull modell, a Git. Egyéb az erősen párhuzamosított fejlesztést támogató eszközök.

10. Üzleti modellek ingyenes szoftverekhez és szolgáltatásokhoz. Kommodifikiáció (kommodizáció) és annak elkerülése termékdifferenciálással és lekötéssel. Kettős licenszelés. Szabadszoftver-fejlesztés támogatásának módjai.

11. Biztonsági kérdések a nyílt forráskodú programokkal kapcsolatban, teendők biztonsági rés felfedezésekor. CAN/CVE számok. Biztonságosabb-e a zárt kódú fejlesztés?

12. Szabványok a szabad szoftver világában, a szabványok szerepe, hordozhatóság, együttműködés és kommodizáció, API- és ABI-szintű együttműködés, a POSIX alapjai, részei és formátuma, Linux Standards Base, freedesktop.org, hálózati együttműködés, nyílt protokollok és az Internet Engineering Task Force, irodai formátumok és az OOXML-ODF formátumháború

13. ZH. Nyílt közösség a szoftverfejlesztésen túl: Creative Commons, FLOSS a jogban (Groklow), nyílt forráskódú hardver, nyílt forráskódú biológia. Nyílt projektek elemzése a szoftverfejlesztés nyilvános adataiból.

 

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás

10. Követelmények
  • A szorgalmi időszakban: két zárthelyi dolgozat minimum elégséges szintű teljesítése. A félévközi jegy a két zárthelyi dolgozat érdemjegyeinek átlaga adja.
11. Pótlási lehetőségek Pótzárthelyi dolgozatok megírására a pótlási időszakban van lehetőség a TVSZ szerint.
12. Konzultációs lehetőségek

Igény szerint, az oktatóval egyeztetve.

 

13. Jegyzet, tankönyv, felhasználható irodalom
  1. Karl Fogel: Producing Open Source Software, O'Reilly Media, Inc., 2005.
  2. Chris DiBona et al: Open Sources: Voices from the Open Source Revolution, O'Reilly Media, Inc.; 1999.
  3. Chris DiBona, et al: Open Sources 2.0 The Continuing Evolution, O'Reilly Media, Inc., 2005.
14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra28
Félévközi készülés órákra14
Felkészülés zárthelyire18
Házi feladat elkészítése -
Kijelölt írásos tananyag elsajátítása -
Vizsgafelkészülés -
Összesen60
15. A tantárgy tematikáját kidolgozta
Név:Beosztás:Tanszék, Int.:
Németh Feliciántud. s. munkatárs TMIT

Dr. Rétvári Gábor

tud. munkatárs

TMIT