• Nenhum resultado encontrado

02 Fabrica de Software SI

N/A
N/A
Protected

Academic year: 2021

Share "02 Fabrica de Software SI"

Copied!
43
0
0

Texto

(1)

Fábrica  de  

So-ware  

Centro  de  Informá-ca  -­‐  Universidade  Federal  de  Pernambuco  

Sistemas  de  Informação  

Vinicius  Cardoso  Garcia  

vcg@cin.ufpe.br  

(2)

Warm  up…  

• 

Engenharia  =  “é  a  a-vidade  em  que  os  

conhecimentos  cienIficos  são  empregados  

para  resolver  problemas  prá-cos”  

• 

Engenharia  de  SoLware  =  “é  a  a-vidade  em  

que  os  

[conhecimentos  cien9ficos]

 são  

empregados  para  resolver  problemas  prá-cos  

relacionados  à  construção  de  soLware”  

(3)

Warm  up…  

“Um  dos  obje-vos  básicos  da  

Engenharia  de  SoLware  é  transformar    

a  

criação  de  sistemas  

soLware  

realizada  de  maneira  

ar9sHca

,  

indisciplinada  

e  

pouco  entendível  

para  uma  forma  devidamente  

controlada,  quan-ficada  e  previsível.”  

(4)

A  Origem  

• 

Em  1968,  especialistas  se  reúnem  em  Garmisch,  para  discu-r  problemas  

de  desenvolvimento  de  soLware  

4  

(5)

Problemas  da  época  

• 

Produtos  de  SoLware    

– 

de  baixa  qualidade  e  

– 

sem  atender  requisitos  e  

• 

Projetos  realizados  acima    

– 

do  orçamento  e  do  

– 

tempo  previsto  e  

– 

vez  por  outra  ingerenciáveis  

(6)

A  crise  do  so-ware    

• 

A  crise  do  soLware  foi  um  termo  u-lizado  nos  

anos  70,  quando  a  engenharia  de  soLware  era  

pra-camente  inexistente.  

• 

O  termo  expressava  as  dificuldades  do  

desenvolvimento  de  soLware  frente  ao  

rápido  

crescimento  da  demanda  por  so-ware

,  da  

complexidade  dos  problemas  a  serem  resolvidos  

e  

da  inexistência  de  técnicas  

estabelecidas  para  

o  desenvolvimento  de  sistemas  que  

funcionassem  adequadamente  ou  pudessem  ser  

validados.  

(7)
(8)

Produção  de  So-ware:  histórico  

• 

60´s  Fábrica  de  SoLware    

• 

70´s  Kanbam  

• 

70´s  Just  In  Time  

• 

80´s  SIGMA  

• 

90´s  CMM  

• 

00´s  Fábrica  de  SoLware...  

de  novo!  

• 

10´s  Fábrica  de  

Componentes?  SPL?  MDD?  

• 

COMUNIDADES?  

• 

SaaS?  Cloud  Compu-ng?  

• 

Distribuída?  

(9)

Fábricas  de  So-ware  

• 

Princípios  

• 

Conceitos  

• 

Ilusões  

(10)

Fábrica  de  so-ware  na  práHca  

• 

Operação  profissional  

• 

Processo  de  desenvolvimento  transparente  

• 

Retorno  rápido  ao  cliente  

• 

Alta  produ-vidade  

– 

Ferramentas  e  processos  padronizados  

• 

Alta  qualidade  

– 

Dados  históricos,  previsibilidade  e  análise  de  risco  

• 

Reusabilidade  de  código  

10  

[1968  G&E,  R.  W.  Berner]  

[2003  IEEE  Computer  Vol.36  Num.3,  B.  Boehm]  

[2005  IEEE  SoLware  Vol.  22  Num  2,  PostModern  SW  Design]  

(11)

Fábrica  de  so-ware  na  práHca  

• 

E  o  mercado?  

– 

h[p://mshiltonj.com/soLware_wars/    

(12)
(13)
(14)
(15)

Cathedral  and  Bazaar    

e  Desenvolvimento  de  

SoLware  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  

 

15  

(16)

Outros  são  como  Bazaars  (SW  livre)  

• 

Sem  planejamento  detalhado  mas  

orientados!  

• 

Linux  Kernel  (www.linux.org):  

hierarchical

”  

– 

Linus  Torvalds,  “The  Benevolent  Dictator”  

• 

APACHE  Founda-on  (www.apache.org):    

meritocracy

”  

– 

Para  fazer  parte  você  deve  ter  colaborado  

con-nuamente  em  projetos  da  fundação  

• 

GCC  (gcc.gnu.org):  “

steering  CommiVee

”  

(17)

Conceitos  

 “The  factory  is  an  

organizaHon

 inhabited  by  

people

 

engaged

 

in  a  common  effort

,  work  is  

organized  one  way  or  the  other,  

standardizaHon

 

is  used  for  

coordinaHon  and  formalizaHon

,  and  

systema-za-on  is  important,  but  there  will  be  

several  op-ons  for  the  design  of  a  par-cular  

soLware  factory”  

 

17  

[Aaen,  Botcher,  Mathiassen,  SoLware  Factories,  1997]  

(18)

Fábricas  de  so-ware:  4  estratégias...  

• 

Japonesa    (1981,1987)  

– 

SWB  –  SoLware  Work  Bench  

• 

Européia  (1991,1992)  

– 

ISDE  –  Integrated  SoLware  Development  Environment  

• 

Norte-­‐Americana  

– 

experiência  produção  (1989,1993)  

• 

Norte-­‐Americana  

– 

níveis  de  maturidade  (1990,1993)  

(19)

Estratégia  Japonesa  

• 

Aumento  de  produ-vidade  e  qualidade  de  

desenvolvimento  e  manutenção  

• 

Estratégia  baseada  em  infra-­‐estrutura:  •sica,  

organizacional  e  ferramental  

• 

Uso  de  métricas  

• 

Metodologia  padronizada  para  todos  os  

projetos  

• 

Reuso  em  todas  as  fases  

• 

Foco  em  tecnologia  

(20)

Estratégia  Européia  

• 

Ambientes  integrados  de  desenvolvimento  

orientados  a  cliente  (IDEs)  

• 

Estratégia  orientada  a  ferramentas:  

padronização  de  componentes,  adaptação  de  

processo  

• 

Sem  métricas  

• 

Metodologia  adaptada  por  projeto  

• 

Sem  reuso  

• 

Foco  em  Tecnologia  

• 

Organizacional...  (ISO-­‐9000)  

(21)

Estratégia  Norte  Americana  1  

• 

Baseada  em  Componentes  

• 

Maior  eficácia  de  processos,  menos  re-­‐trabalho  e  

mais  reuso  

• 

Estratégia  de  melhoria  conInua  baseada  na  

experiencia  adquirida  

• 

Sem  métricas  

• 

Metodologia  adaptada  por  projeto    

• 

Reuso  

• 

Sem  foco  em  tecnologia  

• 

                                   (

...Ágeis...XP  –  Extreme  Programming

)  

(22)

Estratégia  Norte  Americana  2  

• 

Processo  eficaz,  previsível,  confiável  e  auto-­‐

melhorável  

• 

Estratégia  de  melhoria  em  etapas,  níveis  de  

maturidade  

• 

Uso  de  métricas  

• 

Metodologia  adaptada  por  projeto  

• 

Pouco  reuso  

• 

Pouco  foco  em  tecnologia  

• 

                                                                     (Processos...  RUP,  CMM...)  

(23)

…  considerações  …  

 “The  four  approaches  are  important  

contribu-ons  

towards  this  goal

.  At  the  same  

-me  the  approaches  individually  may  lead  to  

unfortunate  illusions

.  Learning  from  the  rela-ve  

strengths  

and  

weaknesses  

between  the  

approaches  may  help  us  avoid  becoming  

vicHms  

of  these  

illusions

”  

23  

[Aaen,  Botcher,  Mathiassen,  SoLware  Factories,  1997]  

(24)

...e  ilusões...  

24  

fábrica  de  soLware  

 produção  em  massa  

 

padronização,  formalização,  especialização,  

controle  

   produção  de  soLware  com  

qualidade  

 

 

o  que  fazer?  

(25)

Building  a  so-ware  factory…  

1.  to  define  a  detailed  soLware  development  process  

2.  staff  members  were  given  extensive  training  in  the  

new  process  

3.  process  specifica-on  separated  from  process  

execu-on  

4.  data  collec-on  and  analysis  

1.  interviews  

2.  soLware  process  assessments  

3.  process  a[ributes  for  each  project  

4.  configura-on  management  system  

5.  project  tracking  data  

25  

[

Making  the  soLware  factory  work...  1990-­‐1999]

 

(26)

Lições  aprendidas  

• 

separa-ng  func-on  of  process  engineer  from  

developer  

• 

job  rota-on  between  process  engineering  and  

product  development  

(27)

Building  a  so-ware  factory...  

• 

Framework:  

– 

...  process  x  team  

– 

...  requirements  x  architecture  

– 

...  metrics  x  uncertainty  

– 

...  tools  x  process  

– 

...  communi-es  

– 

...  

27  

(28)

Processo  é  complexo...  Ex.:  Ampla  

28  

El aborado: OJS - Revi são: CAB, JPML, GMR - Aprovado: CAB - Versão 0 Fábri ca de Softw are da A m pl a C onsul tori a em I nform ação Pro sp ecçã o Exe cu çã o PLT Exe cu çã o Pro pos ta Pro po sta Enc er ram en to G arant ia Exe cu çã o PP PP PC PC PP PP PROT PPF PT DR PC PC PROT DR PT PPF MER DR PPF PT PC PPF PP PT MER UC MER UC DR DR DR MER UC DR PROT DR DR PROT DR UC AR MER PROT N S N S S N OK? Revi sar Requi si t os, i nt erf aces, casos de uso e MER Gc Cri aCor Pmreorcpoi aslt a Lí der Equi pe 2 Val i dar requi si t os Cri ar Propost a Técdnei c Par eo Pj et ol ano Val i dar i nt erf aces e requi si t os Técni cos Cl Lí der Equi pe 1 Gc Gerent e de Proj et os Di Agendar vi si t as para apresent ação e/ our eel i cqui t ai si t oçãso de Di ret or I dent i f i car demandas que possam ser at enádri deaass p deel as conheci ment o Gp Proj et ar i nt erf aces Técni cos Gc Cl i ent e Requi si t os/ escopo est ão cl aros? Gp Prot ot i par i nt erf aces Proj et ar i nt erf aces? 1 Técni cos De Gerent e Comerci al Gerent e de Tecnol ogi a Gerent e de Processos e Qual i dade I ní ci o Gp Lí der Equi pe n Anál i se de Pont os de Função Gc Di Gc Gp Gc Cl Gp Gp Gp Gc Gp N S S Revi sões? Proj et o aprovado? C 1 Regi st rar suspensão do proj et o AprPesTe ent a DrR PC, Revi sar DR, PT, PPF, PC e PROT. Di Gc Gp Gp N S Renegoci ar? Revi sar cronograma Revi sCoamr Perroci apolst a Aval i ar ri scos Preparar ambi ent e de desenvol vi ment o Lp Lp Reaval i ar necessi dades de t rei nament o Lp Gp Reavhaul i amra renocsu,rsos shoaf t wrdwaraer ee Lp Gp Lp Gp Gc Di S S N S N S N N S S N Fi m PP OK? MER MER DR I mpl ement ar A Proj et adra bdaosnco de PT Apresent ar requi si t o para desenvol vedor PC DS (o) B I nt egrar? Corri gi r Preparar Pl ano de Test e Lp B Sol i ci t ação de mudanças PLT SM Sel eci onar requi si t o Cl Aval i ar sol i ci t ação DR PLT Probl emas na i mpl ement ação? Real i zUanri d Taedset e de Comuni car Lí der do Proj et o PC Rpel avi snaor d ree pqruoi sj ei t ot os, De Real i zar casos de uso De DI (o) Não conf ormi dades? PP DS (o) Agecnomda cr rel i eunt eni ão MER PT B-1 PC Aprovar mudanças? PLT DR Lp PP A DI (o) PP Revi sar requi si t os e pl ano de proj et o 3 DR Renegoci ar PT Lp PT Pode ser resol vi do i nt ernament e? A-1 B-2 Encerrar sol i ci t ação DC B-2 Especi f i car casos deu t eni dst ead dee A-2 PC RI T Lp Gp DC Gp SM I ní ci o De Gc SM Lp Gp Gc Gp Gc Lp Cl Di Gp Lp Lp De De S N S N PP B Não conf ormi dades? PP PP 3 RI T Anal i sar não conf oprl amni deaj adres e i mpl ement ação Gp RI T De Gq Anal i sar não conf oprl amni deaj adres e i mpl ement ação B Real i zSai sr Tt emest ea de Real i zar Test e de I nt egração Não conf ormi dades? N S N S S N I ni ci ar perí odo de garant i a (90 di as) Anal i sar Gq PP Pdreep t rareai nra mmaet ent ori al PO PP B DR De Agendar t rei nament o Gp B Real i zar t rei nament o DR Probl ema encont rado? PT Gp PC I nst al ar e conf i gurar sof t ware Acei t ação t ot al ou parci al ? Procede? Anal i sar DR De AR Test e de acei t ação (com cl i ent e) De De Gp Real i zdea orp pi nei ãsqoui sa C Reuni ão de encerrament o (equi pe) RM KB De Gp AR Di Gp Aval i ador p rerosj eut ol t ados Gq Lp Regi st rar encerpraromj eet ont o do Fi m PO Gp Art ef at o Art ef at o f ont e Art ef at o produzi do Fl uxo do processo Processo Pont o de deci são Responsabi l i dade Di Di ret or Cl Cl i ent e Gc Gerent e Comerci al Gt Gerent e de Tecnol ogi a Gp Gerent e de Proj et os Gq Gerent e de Processos e Qual i dade Lp Lí der do Proj et o De Desenvol vedor At ores Artefatos AR_<Cód. do Proj et o>_<aaaammdd> At a de Reuni ão DR_<Cód. do Proj et o>_V<99>. <99> Document o de Requi si t os PT_<Cód. do Proj et o>_V<99>. <99> Propost a Técni ca PC_<Cód. do Proj et o>_V<99>. <99> Propost a Comerci al PP_<Cód. do Proj et o>_V<99>. <99> Pl ano de Proj et o MER_<Cód. do Proj et o>_V<99>. <99> Model o de Ent i dades e Rel aci onament os PLT_<Cód. do Proj et o>_V<99><99> Pl ano de Test e RI T_<Cód. do Proj et o>_V<99><99> Rel at óri o de I nci dent es de Test e MU_<Cód. do Proj et o>_V<99>. <99> Manual do Usuári o PO_<Códi go do Proj et o> Pesqui sa de Opi ni ão PROT_<aaaammdd> Prot ót i po (Na past a I ) SM_<Cód. do Proj et o>_V<99>. <99> Sol i ci t ação de Mudanças UC_<Cód. do Proj et o>_V<99>. <99> Caso de Uso PPF_<Códi go do Proj et o>_V<99>. <99> Pont os por Função DC_<Códi go do Proj et o>_V<99>. <99> Di agrama de Cl asses DS_<Códi go do Proj et o>_V<99>. <99> Di agrama de Sequênci a DI _<Códi go do Proj et o>_V<99>. <99> Di agrama de I nt eração RA_<Códi go do Proj et o>_V<99>. <99> Rel at óri o de Acei t ação RM_<Códi go do Proj et o>_V<99>. <99> Rel at óri o de Mel hori as no Processo KB Knowl edge Base (o) = Opci onal Gp De Gq Gp Cl Gp Gq Gq Gq Gp De Gq PP RA

Encerramento  

MER

DR

PPF

PT

PC

PPF

PP

PT

MER

UC

MER

UC

DR

DR

DR

MER

UC

DR

Revise

Requirements

,

interfaces

,

E-R

and

Use

Cases

Gc

Build Commercial

Proposal

Build

Technical

Proposal

and

Project

Plan

Di

Gc

Gp

1

Gp

Function Point

Analysis

Gp Gc

Gp

Contrato  

Execução  

Entrega  

Prospecção  

(29)
(30)

o  PROCESSO  é  complexo!  

(31)

e  as  pessoas?...  

(32)

Trabalho  em  equipe  

32  

O trabalho em equipe é um processo baseado

em

princípios e valores

que estão

claramente definidos e entendidos. O verdadeiro

trabalho em equipe é um

processo

contínuo interativo

de um grupo de

pessoas aprendendo, crescendo e

trabalhando interdependentemente

para alcançar metas e objetivos específicos no

suporte a uma

missão comum

.

 

(33)

33  

ORGANIZAÇÕES  

TRADICIONAIS:  

ü 

Realizam  tarefas  funcionais;  

ü 

Pessoa  em  segundo  plano;  

ü 

O  controle  é  a  meta;  

ü 

Visão  a  curto  prazo;  

ü 

Informação,  formação,  e  

incen-vos,  não  são  importantes;  

ü 

Repetem  os  ciclos  de  

reestruturação  e  regressão.  

ORGANIZAÇÕES  BASEADAS  EM  

HABILIDADES:  

ü 

Realizam  bem,  as  tarefas  com  

funções  cruzadas;  

ü 

As  pessoas  são  valorizadas;  

ü 

A  meta    é  valorizar  o  que  cons-tui  

valor  para  os  clientes;  

ü 

Visão  a  longo  prazo;  

ü 

Informação,  formação  e  incen-vos,  

são  importantes;  

ü 

Criam  um  padrão  de  melhoria  

permanente.  

(34)

34  

h[p://www.springerlink.com/content/l4216085h77324q6/  

Rules  and  Tools  for  so-ware  evoluHon  

planning  and  Management  

• 

Con-nuing  change  

• 

Increasing  complexity  

• 

Con-nuing  growth  

• 

10  regras...  1  princípio..  de  incerteza!...  

the  real  world  outcome  of  any  so2ware  execu4on  is  

inherently  uncertain  with  the  precise  area  of  

(35)

E  O  FUTURO,  O  QUE  ESPERAR?  

(36)

COMUNIDADE  

 

DESENVOLVE  /  COMBINA  

[NOVOS]  

 

PRODUTOS  E  SERVIÇOS  

(37)
(38)

38  

SaaS

 

(39)

39  

(40)

40  

empresa  

como  

(41)

41  

a  serviço    

de  sua  

(42)

42  

comunidade  que  

(43)

O  Que  fazer  agora?  

• 

Montar  uma  fábrica  de  soLware!  

• 

Como?  

• 

Em  ~4  meses!?!?!?  

Referências

Documentos relacionados

Upper bound limit analysis using linear finite elements and nonlinear programming.. International Journal for

a) Para o acesso articular utilizou-se o espaço criado após a retirada do terço médio do ligamento patelar, onde foi realizada uma incisão perfurante que

momento, não foram encontrados estudos que avaliam as possíveis associações entre estas três variáveis. Portanto, o presente estudo teve como objetivo investigar a percepção

TAIS ESTRATÉGIAS, DA FORMA COMO SÃO ADOTADAS, PODEM RESULTAR EM SIGNIFICATIVAS PERDAS PATRIMONIAIS PARA SEUS COTISTAS, PODENDO INCLUSIVE ACARRETAR PERDAS SUPERIORES AO CAPITAL

Và một khi các dòng nhãn hiệu con đi đến một giới hạn về: hình ảnh, cá tính, tính năng sản phẩm khác biệt hay quan trọng nhất, nhắm đến một nhóm khách hàng hoàn

• Controle do peso em pacientes com diabetes mellitus tipo 2, com obesidade ou sobrepeso Redução de peso estatisticamente superior foi atingida nos pacientes com diabetes

Desta caixa a água escoa naturalmente através de tubulação passando de um tanque para outro, que após percorrer os 28 tanques o fluxo hídrico é direcionado

Este momento se caracteriza tanto pela busca, por parte das populações locais, de um caminho para a modernização de Campo Grande que fosse independente das estruturas