Title: o sculo de software''' ou o sculo dos problemas de software
1o século de software... ou o século dos
problemas de software?
- silvio lemos meira
- c.e.s.a.r cin/ufpe
- www.meira.com
- silvio_at_cesar.org.br
2robert cringely"triumph of the nerds"
- Caso o automóvel tivesse se desen-volvido como os
computadores, um Rolls-Royce custaria US100,
faria um e meio milhão de quilômetros por litro...
- ...e explodiria uma vez por ano, matando TODOS os
ocupantes!
3o mundo vira software...
- quando o trabalho vira software, precisa de muito
mais software... que precisa de muito mais
gente... que precisa de muito mais software...
4e o software vira serviço... o fim da "indústria
do sw"?
- apesar de ser um "serviço", software está sendo
tratado pela "indústria" como um... "produto"...
5 quatrilhões de linhas de código...
Lines of Code in Service U.S. Dept. of Defense
6 produtividadelinguagens deprogramação
Trends in Software Expansion (Bernstein, 1997)
7bilhões pelo ralo... 20 de US2.7T um Brail
por ano em sw no lixo!
PIB do Brasil
8mas do jeito que vai... podemos acabar no...
- ...the "planet of the Help Desks", in which the
human race will be largely engaged in maintaining
very large software systems... not an entirely
unappealing prospect, since it would keep
humanity gainfully employed...
9e o estado da "arte"... cem kaner
- The Canadian government recently completed a
study of the claims made on the packaging of
consumer software - Incorrect (and potentially false or misleading)
claims were made by 65 of all the software
titles tested. - http//strategis.ic.gc.ca/SSG/cp01109e.html
10e quando software falha...
- 1996 200 million calls to tech support.
- The industry spends about 25 per call.
- Software companies spend about 3 per minute
providing support for PC-based products, and 5
per minute (or more) for UNIX and mainframe
products. - Customer complaints have skyrocketed. Over 7
years, ratio of support to total employees in
computer-related companies went from 1 in 12 to
1 in 6.
11mais...
- In those 200 million calls for support, software
customers spent over 3 billion minutes on hold. - At peak times, 85 of calls into tech support get
busy signals. - 58 of support staff get less than 1 week of
training before independently handling phone
calls. - Complaints involving software / hardware from
more than one vendor take 3 to 18 times as long
to resolve.
12e então...
- Business cost of ownership of a PC is often
estimated at 8000 to 11,000 per year.
13custo de qualidade?...
14a maior parte dos bugs
- ainda não mata ninguém...
- mas isto não vai ficar assim!...
- millenium bridge, london...
15próximas transparências...WindowsA Software
Engineering Odyssey
- Mark Lucovsky
- Distinguished Engineer
- Microsoft Corporation
16NT Timeline first 10 years
- 2/89 Coding Begins
- 7/93 NT 3.1 Ships
- 9/94 NT 3.5 Ships
- 5/95 NT 3.51 Ships
- 7/96 NT 4.0 Ships
- 12/99 NT 5.0 a.k.a. Windows 2000 ships
- srlm
- estamos falando do MESMO sistema!
- ele só está evoluindo...
17Unix Timeline first 20 years
- 69 Coding Begins
- 71 First Edition PDP 11/20
- 73 Fourth Edition Rewritten in C
- 75 Fifth Edition Leaves Bell, basis for BSD
1.x - 79 Seventh Edition One of the best
- 82 System III
- 84 4.2 BSD
- 89 SVR4 Unification of Xenix, BSD, System V
- NT development begins
18Team Size dev vs. test
19Defect Rates Data
- With serialized development
- Good, small teams operate efficiently
- Even the absolute best large teams are always
broken, and always serialized
20a gente até poderia falar mal da microsoft...
mas... nas teles...
21engenharia de software...
- é engenharia?...
- sim?
- onde estão seus Newtons (1727) e Einsteins
(1955)? - ainda não temos in totum
- mas estamos começando a enxergar... alguns.
- haverá um bom número de princípios, leis e regras
em 50 anos?... - só depende de nós?...
22frederick brooks NO SILVER BULLET "principle"
- There is no single development, in either
technology or manage-ment technique, which by
itself promises even one order of magnitude
improvement within a decade in productivity, in
reliability, in simplicity. - Fred Brooks, 1986
23frederick brooks Mythical Man-Month LAW
- Adding manpower to a late software project makes
it later. - Fred Brooks, 1986
- Suitable late entrants are sometimes useful.
- P Burkinshaw, 1969
24frederick brooks Regras do Polegar ESFORÇO
- 1/3 Planning (Design)
- 1/6 Coding
- 1/4 Component (Unit) Test
- 1/4 System (Integration) Test
- A "waterfall" process is assumed, how would this
apply to an iterative development model? - Managers frequently fail to allow sufficient
time for testing (and debug).
25processo de softwarem m lehman
26software uncertainty principle lehman, 1989
- However carefully validated, however often
successfully executed, validity of E-type
program execution behaviour - results - cannot be
absolutely predicted
princípio de heisenbug
27STANDISH GROUP...
receitas...
- 18. Executive Support
- 16. User Involvement
- 14. Experienced Project Manager
- 12. Clear Business Objectives
- 10. Minimized Scope
- 08. Standard Software Infrastructure
- 06. Firm Basic Requirements
- 06. Formal Methodology
- 05. Reliable Estimates
- 05. Other
70
28BT Technology Timeline 2002
no futuro...
- 2002 Software Lego (bricks contain SW objects)
- 2005 Computers that write most of their own SW
- 2006 Software trained rather than written?
- 2011 Most software written by machine
- 2013 Computer agents start being thought of as
colleagues instead of tools - 2015 Leisure activities for intelligent software
entities released - 2017 Human knowledge exceeded by machine
knowledge!...
29por enquanto...
- software AINDA é gente, gente CULTA
- é mindware imagine se não fosse, teríamos...
- RUP Rational Unified PROGRAMMER
- gente culta é coisa complicada
- cultura é processo, educação
- 500 IES informática 50 de qualidade nacional
- formando 50-100 por ano 5000/ano
- mercado BR US4B/ano, US100K per capita (!)
- cada US1B adicional 10.000 novos engenheiros...
- vindos de onde?...
30problema...
- a maioria das instituições NÃO é um ambiente de
aprendizado dos princípios, teorias, métodos
práticas, ferramentas e ambientes essenciais em
engenharia de SW... - por várias razões!...
- para se criar uma indústria de software temos que
resolver isto, como estão fazendo... - Índia (engenharia é filtro...)
- China (0.70/hh)
- ...
31soluções...
- criar, apreender, ensinar, evoluir, implantar
- métodos, técnicas, práticas, ferramentas,
ambientes - MAS NÃO SÓ
- temos que desenvolver um mercado de qualidade
- interno (nas empresas, no país)
- externo(às empresas, ao país)
- criar MARCA e REPUTAÇÃO é fundamental
- pra isso...
- conceitos, capacidade e conexões - INICIATIVAS E
EMPRESAS DE CLASSE MUNDIAL, são ABSOLUTAMENTE
ESSENCIAIS...
32o que implica em...
- conhecimento
- processos
- padrões
- gente educação
- standard sw infra
- quali, certificação
- SPINs
- PMI
- SWE, PM, IBOK
- SIMPROS!...
- Residência em Software
- CEQS
- GERAR novas empresas de software e financiar as
existentes - que já devem nascer com CLASSE MUNDIAL...
- CAPITAL DE RISCO!
- política de verdade e...
- ... governo
33o século de software... ou o século dos
problemas de software?
- silvio lemos meira
- c.e.s.a.r cin/ufpe
- www.meira.com
- silvio_at_cesar.org.br