Engenharia%20de%20Software%20pref - PowerPoint PPT Presentation

About This Presentation
Title:

Engenharia%20de%20Software%20pref

Description:

Nascem como iniciativa isolada e particular. Usu rios s o co-desenvolvedores ... APACHE Foundation (www.apache.org): 'meritocracy' ... – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 37
Provided by: NPDE
Category:

less

Transcript and Presenter's Notes

Title: Engenharia%20de%20Software%20pref


1
Engenharia de Softwareprefácio
  • joa srlm

2
Free Software Engineering A Field to Explore
  • Gonzáles-Barahona and Robles
  • UPGRADE Vol. IV No. 4 August 2003

3
Free Software Projects
  • Nascem como iniciativa isolada e particular
  • Usuários são co-desenvolvedores
  • Divulgação boca-a-boca
  • Teste massificado pelos usuários
  • Gerência de versões é complexa e bem-definida

4
Open Source Projects
  • (Sun apr 16 001021 BRT 2006) ? 133,421
    projects!
  •  Communications (13469)
  •  Database (5388)
  •  Desktop Environment (2822)
  •  Education (3252)
  •  Formats and Protocols (1292)
  •  Games/Entertainment (12694)
  •  Internet (21951)
  •  Multimedia (11518)
  •  Office/Business (6136)
  • Other/Nonlisted Topic (2065)
  • Printing (417)
  •  Religion and Philosophy (274)
  •  Scientific/Engineering (9942)
  •  Security (2494)
  •  Sociology (355)
  •  Software Development (18587)
  •  System (17790)
  •  Text Editors (2436)

5
Causas de Descontinuidade de Projetos SW Livre
  • Falta de interesse, tempo ou motivação
  • mudança de liderança nos projetos impactam sua
    continuidade
  • Code Forking
  • cada usuário tem acesso ao código e pode
    alterá-lo e redistribuí-lo sem o conhecimento do
    líder do projeto

6
Free Software EngineeringResume
  • A Field to Explore
  • is still in its infancy (2003!)
  • How to create free software? Issues
  • Classification of free software projects
  • Creation of a methodology
  • Methods classification models Simulation
    (intelligent agents) Free SW Engineering

7
Process Implementation
  • Sarah Sheard
  • Software Productivity Consortium
  • Thursday, July 3, 2003

8
So what does it take?
  • 1. Manage as a project
  • 2. Obtain management support
  • 3. Establish policy
  • 4. Establish measurement baseline
  • 5. Train employees and managers
  • 6. Tailor processes
  • 7. Maintain process assets
  • 8. Ensure processes are being used
  • 9. Learn Lessons
  • 10. Improve Processes
  • 11. Appraise the organization

9
Process Implementation Requires Everyone!
  • Senior management sets the tone and ensures
    other managers make PI happen
  • SEPG drives the process improvement program to
    its goals
  • Projects review processes, tailor standard
    processes, use their tailored versions, and
    recommend improvements
  • QA audits independently

10
Funciona para SW Livre?
  • Adaptação de Processos de 1990?
  • 2006! Distributed Development...
  • O que fazer?
  • Ler
  • Praticar
  • Montar experimentos
  • reais e avaliar...

11
A Framework for creating hybrid-open source
software communities
  • Srinarayan Sharma
  • et. al.
  • Info Systems
  • (2002), 12.

12
Introduction
  • OSS model is a fundamentally new and
    revolutionary way to develop software
  • organizations are having difficulty building a
    business model around the open source paradigm
  • not all OSS initiatives have been successful
  • Framework for creating Hybrid-OSS communities

13
The OSS model
  • Three dimensions
  • structure, process and culture

Eletronic communication Multicultural
community Values reciprocity, gift giving,
reputation, ideology Core assumptions
Division of labour Co-ordination
mechanisms Distribution od decision-making Organiz
ational boundaries Informal structure Political
structure Legitimate basis of authority
structure
culture
process
14
OSS development process
  • Problem discovery
  • Finding volunteers
  • Solution identification
  • Code development and testing
  • Code change review
  • Code commit and documentation
  • Release management

15
Framework for creating Hybrid-OSS communities
  • Principles
  • Community building
  • Community governance
  • Shared governance
  • Membership management
  • Incentives and rewards
  • Community infrastructure

16
Discussion
  • ... ? open source communities versus Software
    Factories?
  • personal time and autonomy
  • ... ? freelancers
  • ... ? project-oriented
  • ... there are several avenues for future research
  • ... to refine the proposed framework and validate
    it empirically

17
Porto DigitalUFPE/UFRPE CESAR IN953 -
desenvolvimento distribuído de software em
indústria, comunidades acadêmicas e
científicasuma fábrica de software livre...
  • joa_at_ufrpe.br
  • silvio_at_cesar.org.br

18
linhas-mestrasIN953 Engenharia de Software
  • Process Implementation Software Factories
    (Gibeon, Ana Paula, Thayssa)
  • F/L/OSS (Alan)
  • OSS Business Model (Alan, Ana Paula, Aisa)
  • Scientific Relevant Projects (Convidados)
  • Business Humanitas (TODOS!)

19
fábricas de software princípiosconceitosilusõe
s
20
fábrica de sw na prática
  • Operação profissional
  • Processo de desenvolvimento transparente
  • Retorno rápido ao cliente
  • Alta produtividade
  • Ferramentas e processos padronizados
  • Alta qualidade
  • Dados históricos, previsibilidade e análise de
    risco
  • Reusabilidade de código
  • 1968 GE, R. W. Berner
  • 2003 IEEE Computer Vol.36 Num.3, B. Boehm
  • 2005 IEEE Software Vol. 22 Num 2, PostModern SW
    Design

21
(No Transcript)
22
Cathedral and Bazaar
  • e Desenvolvimento de Software
  • segundo Eric Raymond, 1997
  • Alguns projetos são como Cathedrals
  • altamente centralizados em poucas pessoas que
    decidem projeto e implementação
  • para fazer parte deve-se aceitar as definições

http//catb.org/esr/writings/cathedral-bazaar/cat
hedral-bazaar/
23
Outros são como Bazaars (sw livre)
  • Sem planejamento detalhado mas
  • orientados!
  • Linux Kernel (www.linux.org)
  • hierarchical
  • Linus Torvalds, The Benevolent Dictator
  • APACHE Foundation (www.apache.org)
    meritocracy
  • Para fazer parte você deve ter colaborado
    continuamente em projetos da fundação
  • GCC (gcc.gnu.org) steering Commitee

24
Conceitos
  • The factory is an organization inhabited by
    people engaged in a common effort, work is
    organized one way or the other, standardization
    is used for coordination and formalization, and
    systematization is important, but there will be
    several options for the design of a particular
    software factory
  • Aaen, Botcher, Mathiassen, Software Factories,
    1997
  • http//www.cin.ufpe.br/in953/papers/Software_Fact
    ories_17.pdf

25
...considerações...
  • The four approaches are important contributions
    towards this goal. At the same time the
    approaches individually may lead to unfortunate
    illusions. Learning from the relative strengths
    and weaknesses between the approaches may help us
    avoid becoming victims of these illusions
  • Aaen, Botcher, Mathiassen, Software Factories,
    1997
  • http//www.cin.ufpe.br/in953/papers/Software_Fact
    ories_17.pdf

26
...e ilusões...
  • fábrica de software ? produção em massa
  • padronização, formalização, especialização,
    controle ? produção de software com qualidade
  • o que fazer?

27
building a software factory...Making the
software factory work... 1990-1999http//www.cin
.ufpe.br/in953/papers/MakingTheSoftwareFactoryWor
kLessonsFromADecadeOfFactory.pdf
  1. to define a detailed software development process
  2. staff members were given extensive training in
    the new process
  3. process specification separated from process
    execution
  4. data collection and analysis
  5. interviews
  6. software process assesments
  7. process attributes for each project
  8. configuration management system
  9. project tracking data

28
o PROCESSO é complexo!
(c) MERX LLC
29
processo é complexo... Ex. Ampla
Prospecção
Contrato
Execução
Entrega
Encerramento
30
(No Transcript)
31
e as pessoas?...
(c) MERX LLC
32
What is institutionalization?
No, not that kind!
33
o que sabemos aqui?
  • TODO o pressman ou sommerville (Software
    Engineering)
  • ou seja
  • requisitos, especificações, refinamento,
    validação e verificação, métodos, técnicas,
    linguagens e ferramentas, componentes,
    reutilização, manutenção, modelagem de processos,
    qualidade, reengenharia,, verificação, validação
    e teste... além de programação JAVA!...
  • faltaria o quê?

34
o que fazer...
  • montar uma fábrica de software livre?
  • como? em 4 meses?
  • funciona?

http//200.199.23.162/in953/
35
para casa...
  • Leitura de referências desta aula 10 8 papers
  • Navegação Fábricas Passadas
  • 1ª NOTA 24.abr.06

36
Summer of Code 2006 receba US 4500,00 para
contribuir com softwares livres
  • http//code.google.com/soc/Summer of Code
  • Welcome to the Summer of Code 2006 site. As
    organizations begin to sign up for Summer of
    Code, you will see a list of organizations and
    links to their ideas for student projects. We are
    not taking student applications just yet, see the
    FAQ for more details. You can talk to us in
    either on Summer-Discuss-2006 or on IRC in
    summer-discuss on SlashNET.
Write a Comment
User Comments (0)
About PowerShow.com