Open Source Software Computer Games and other SocioTechnical

  • Slides: 43
Download presentation
Open Source Software, Computer Games, and other Socio-Technical Processes Walt Scacchi Institute for Software

Open Source Software, Computer Games, and other Socio-Technical Processes Walt Scacchi Institute for Software Research and Game Culture and Technology Laboratory University of California Irvine, CA 92697 -3425 USA http: //www. ics. uci. edu/~wscacchi 1

2

2

3

3

4

4

5

5

Game World Stats 6

Game World Stats 6

7

7

8

8

9

9

10

10

What is free/open source software development? • Free (as in “freedom”) vs. open source

What is free/open source software development? • Free (as in “freedom”) vs. open source – Freedom to access, browse/view, study, modify and redistribute the source code – Free is always open, but open is not always free • F/OSSD is not “software engineering” – Different: F/OSSD can be faster, better, and cheaper than SE in some circumstances • F/OSSD involves more software development tools, Web resources, and personal computing resources 11

OSS Development Models • • • Free Software (GPL) Open Source (BSD/MIT, Mozilla, Apache)

OSS Development Models • • • Free Software (GPL) Open Source (BSD/MIT, Mozilla, Apache) Corporate Source (Hewlett-Packard) Consortium/Alliance (OSDL, Sugar. CRM) Corporate-Sponsored (IBM-Eclipse, Sun. Netbeans, Sun-Open. Office, HP-Gelato) • Shared Source (Microsoft) • Community Source (Sakai, Westwood) 12

OSSD Project Characteristics • OSS Developers are always users of what they build, while

OSSD Project Characteristics • OSS Developers are always users of what they build, while OSS users (>1%) are also OSS developers • Requires “critical mass” of contributors and OSS components connected through socio-technical interaction networks • OSSD projects emerge/evolve via bricolage – Unanticipated architectural (de)compositions – Multi-project component integrations • OSSD teams use 10 -50 OSSD tools to support their development work 13

OSSD Project Characteristics • Operational code early and often--actively improved and continuously adapted •

OSSD Project Characteristics • Operational code early and often--actively improved and continuously adapted • Post-facto software system requirements and design – OSSD is not Software Engineering – OSSD has its own “-ilities” which differ from those for SE • Caution: the vast majority of OSSD projects fail to grow or to produce a beta release. 14

F/OSS Processes for Requirements or Design • F/OSS Requirements/Designs – not explicit – not

F/OSS Processes for Requirements or Design • F/OSS Requirements/Designs – not explicit – not formal • F/OSS Requirements/Designs are embedded within “informalisms” – Example OSS informalisms to follow (as screenshot displays) • F/OSS Requirements/Design processes are different from their SE counterparts. 15

SE vs. F/OSS processes for developing Requirements • Elicitation • Analysis • Specification and

SE vs. F/OSS processes for developing Requirements • Elicitation • Analysis • Specification and modeling • Validation • Communicating and managing • Post-hoc assertion • Reading, sense-making, accountability • Continually emerging webs of discourse • Condensing and hardening discourse • Global access to discourse 16

17

17

Evolutionary redevelopment, reinvention, and redistribution • One recurring evolutionary dynamic of F/OSSD is reinvention

Evolutionary redevelopment, reinvention, and redistribution • One recurring evolutionary dynamic of F/OSSD is reinvention – Reinvention enables continuous improvement • F/OSS evolve through continuously emerging mutations (incremental innovation/adaptation) – Expressed, recombined, redistributed via incremental releases 18

19

19

Evolutionary redevelopment, reinvention, and redistribution • F/OSS systems co-evolve with their development community –

Evolutionary redevelopment, reinvention, and redistribution • F/OSS systems co-evolve with their development community – Success of one depends on the success of the other • Closed legacy systems may be revitalized via opening and redistribution of their source – When enthusiastic user-developers want their cultural experience with such systems to be maintained. 20

Project management and career development • F/OSSD projects self-organize as a meritocractic role-hierarchy and

Project management and career development • F/OSSD projects self-organize as a meritocractic role-hierarchy and virtual project management – Meritocracies embrace incremental innovations over radical innovations – VPM requires people to act in leadership roles based on skill, availability, and belief in project community • F/OSS developers want to learn about new stuff (tools, techniques, skills, etc. ), have fun building software, exercise their technical skill, try out new kinds of systems to develop, and/or interconnect multiple F/OSSD projects (freedom of choice and expression). 21

A meritocractic role hierarchy for F/OSSD (images from A. J. Kim, Community Building on

A meritocractic role hierarchy for F/OSSD (images from A. J. Kim, Community Building on the Web, 2000) 22

23

23

Socio-technical and cultural evolution processes • New processes under study – Joining and contributing

Socio-technical and cultural evolution processes • New processes under study – Joining and contributing to a project in progress – Role-task migration: from project periphery to center – Alliance formation and community development • Independent and autonomous project communities can interlink via social networks that manipulate objects of interaction – Enables possible exponential growth of interacting and interdependent community as socio-technical interaction network 24

Game related R&D efforts • one research problem for game software development • visual

Game related R&D efforts • one research problem for game software development • visual and performing arts – Games as cultural media • science and technology education – Games for informal education in science 25

(One) software development research problem for games • What is the best way to

(One) software development research problem for games • What is the best way to rapidly create networked games, game worlds, and play experience? – “best” => • faster, better, cheaper • open source (e. g. , BSD/MIT style license) • (global) community-based development, contribution and support • Fun, enjoyable, intrinsically motivating, disruptive, etc. • Modification, Construction, or Generation? 26

Proposed solutions • Modification – Hack existing game content, levels, engine – Repurpose content/data

Proposed solutions • Modification – Hack existing game content, levels, engine – Repurpose content/data from other sources • Construction – Scripting (Unreal. Script vs. C-shell/Perl/Python/…) – Custom programming using SDK and other tools • Generation – – Parameter value instantiation Macro expansion Language-directed (game) application generation Meta-environments tailored for (game) domain 27

Proposed solutions: evaluation • • • Generation Modification Construction Automated support? Ease of use/development?

Proposed solutions: evaluation • • • Generation Modification Construction Automated support? Ease of use/development? Flexibility? 28

Approach • Investigate the development and use of meta-environments for new game domains –

Approach • Investigate the development and use of meta-environments for new game domains – Support generation, modification, and construction techniques and tools – Target (non-traditional) game domains relevant to artists, scientists, humanists, software developers, gamers, etc. 29

Games as a new medium 30

Games as a new medium 30

Informal Science Education • Science Games • (Mechanical) Systems Engineering Game • Dinosaur and

Informal Science Education • Science Games • (Mechanical) Systems Engineering Game • Dinosaur and Life Science Game – Physical game linked to online/virtual game – Venue for action research 31

32

32

CERN Quantum Game 33

CERN Quantum Game 33

34

34

35

35

36

36

37

37

T. Rex • Game story task 1 (grades 1 -2) – How does a

T. Rex • Game story task 1 (grades 1 -2) – How does a T. Rex stand run with short arms (front legs) and a long tail? – How might the tail help the dinosaur when eating? • Domain requirement: must address national/CA science education standards • Example learning task: Place and (re)size tail and neck vertebra into “see-saw” balance system 38

T. Rex SEE-SAW BALANCE PUZZLE • Demonstrates see-saw like T. Rex engineering • Kids

T. Rex SEE-SAW BALANCE PUZZLE • Demonstrates see-saw like T. Rex engineering • Kids add tail segments to achieve correct balance for raptor skeleton 39

40

40

Summary observations • We find F/OSSD is helping to drive computer game culture and

Summary observations • We find F/OSSD is helping to drive computer game culture and technology • We seek to break down barriers between art, science, technology, culture through computer games, game environments, and open source experiences • We seek to create a new generation of informal learning tools and techniques, together with a global community of developers and users, through a massively shared, participatory collaborative learning environments. 41

Further information • ISR OSS Research site: www. isr. uci. edu/research-opensource. html • UCI

Further information • ISR OSS Research site: www. isr. uci. edu/research-opensource. html • UCI Game Lab: www. ucgamelab. net • W. Scacchi, Free/Open Source Software Development Practices in the Computer Game Community, IEEE Software, 21(1), 59 -67, January/February 2004. • W. Scacchi, When Worlds Collide: Emerging Patterns of Intersection and Segmentation when Computerization Movements Interact, working paper, presented at the Social Informatics Workshop, March 2005. 42

Acknowledgements • Mark Ackerman (UMichigan), Margaret Elliott (ISR), Les Gasser (UIUC), Chris Jensen (ISR),

Acknowledgements • Mark Ackerman (UMichigan), Margaret Elliott (ISR), Les Gasser (UIUC), Chris Jensen (ISR), Robert Nideffer (UCI Game Lab), John Noll (Santa Clara U), also others at ISR and UCI Game Lab. • National Science Foundation (no endorsement implied) #0083075, #0205679, #0205724, and #0350754. • Discovery Science Center 43