Web Science
O Que é Web Science?
A World Wide Web (de agora em diante simplesmente
chamada a Web) vem tendo um impacto cada vez maior na
pesquisa científica, no desenvolvimento tecnológico e na
sociedade como um todo. As formas pelas quais nos
comunicamos, colaboramos e aprendemos estão mudando
radicalmente graças à Web. Surpreendentemente, ela tem
sido pouco pesquisada como um objeto de estudo per se.
Isto motivou o aparecimento, em 2006, de uma nova área
de pesquisa – a chamada Web Science. Neste novo
domínio, a própria Web é o objeto a ser estudado – deixa,
assim, de ser considerada como uma mera tecnologia
baseada em computadores, e que serve de base para
comunicação e interação em nível mundial.
• “É preciso que tudo mude para que tudo se
mantenha”
– Giuseppe Tomasi di Lampedusa (1896-1957)
Eng. Software X Web Science
Engenharia de Software
Web Science
Princípios
Algoritmos, Complexidade & Modelagem
Requisitos & Qualidade
Privacidade, Segurança, Propriedade
Intelectual, Internacionalização, Resiliência,
Acessabilidade & Inclusão Digital
Projeto & Arquitetura
Redes Sociais, Web Móvel, Computação
Ubíqua, Web Services, Arquiteturas para
Governo Eletrônico, Sistemas Multi
Agentes, Sistemas Colaborativos &
Inteligência Ambiente
Processos & Gerência
Web Semântica, Deep Web, Search Engines
& Web Crawlers, Dados Multiimídia,
Integração & Interoperabilidade,
Descoberta de Conhecimento
Construção, Métodos & Ferramentas
Infraestrutura, Padrões, Linguagens,
Protocolos, Cloud
Evolução, Manutenção & Teste
Futuras Arquiteturas para a Internet
Software
• Let us consider the inherent properties of this irreducible
essence of modern software systems: complexity,
conformity, changeability, and invisibility.
--- Fred Brooks No Silver Bullet Essence and Accidents in Software Engineering
• As Brooks suggests, "The complexity of software is an
essential property, not an accidental one." We observe that
this inherent complexity derives from four elements: the
complexity of the problem domain, the difficulty of
managing the development process, the flexibility possible
through software, and the problems of characterizing the
behavior of discrete systems.
--- Grady Booch
Definition: Software Engineering
• The application of engineering to software
• Field of computer science dealing with
software systems
– large and complex
– built by teams
– exist in many versions
– last many years
– undergo changes
Fundamentals of Sofware Engineering – Ghezzi et al.
7
Definitions
• Application of a systematic, disciplined,
quantifiable approach to the development,
operation, and maintenance of software (IEEE
1990)
• Multi-person construction of multi-version
software (Parnas 1978)
Fundamentals of Sofware Engineering – Ghezzi et al.
8
Role of SE in system design
• SE part of larger projects
• Embedded
– Software requirements to be balanced against
others
• e.g., telephone switching systems
– certain requirements can only be met by hw, sw, and special
devices
Fundamentals of Sofware Engineering – Ghezzi et al.
Ch.1
9
History
• The field of software engineering was born in
1968 in response to chronic failures of large
software projects to meet schedule and
budget constraints
– Recognition of "the software crisis"
• Term became popular after NATO Conference
in Garmisch Partenkirchen (Germany), 1968
Fundamentals of Sofware Engineering – Ghezzi et al.
10
Role of the Software Engineer
• Programming skill not enough
• Software engineering involves "programming-in-the
–large"
– understand requirements and write specifications
• derive models and reason about them
– master software
– operate at various abstraction levels
– member of a team
• communication skills
• management skills
Fundamentals of Sofware Engineering – Ghezzi et al.
11
Our students are digital natives . . .
• Consumer experience drives expectations.
– Desktop  Mobile computing
– Web sites  Web experiences
– Games  Cast member/participant/group play
– Static web content  Real-time interaction & collaboration
– Telephones  Integrated mobile info, social, and recreational
devices
– Email  Instant video, voice, text messaging
• Consumer product shows may be the best indicator of future IT
trends.
Requirements
•
•
•
•
•
•
•
Information online, not “in line”
Information on-demand, free of place or time
Blended classroom and online experience
More team collaboration
More content from multiple sources
Interactive content from voice, video and data
Ability to contribute, as well as consume,
content/knowledge
Web 2.0
• Advanced Internet technology and applications including blogs,
wikis, RSS, social bookmarking, etc.
• Greater collaboration among Internet users, content providers,
and enterprises
• User input into the nature and scope of Web content, including
real-time control over it
• Ability to “mash up” information from different sources to
create the desired context for the information
• Key words: dynamic, interactive, collaborative
• Light and dark side – YouTube and blogs as weapons.
IT Infrastructure
• Networks will increase 500% in capacity in the next five
years.
• Half of all computers will be laptops.
• 60% of all colleges and universities have a campus wide
wireless plans.
• Computers are increasing in the number of processors
from 2 to 4 to 8 by 2008.
• Research networks will go from 622 megabits to 80
gigabits.
• On-demand, high-definition video will consume a large
part of network capacity.
World-Wide Emerging
Technology Trends
•
•
•
•
•
Improved speech recognition
Fuel cells and improved battery life
More GPS-enabled, location-aware services
Moore’s Law (increasing chip density)
More network bandwidth( 100 terabyte with a single fiber)
60% broadband in US
• More computing power
• More storage
World-Wide Emerging
Technology Trends
• Search engines will continue to increase access to books,
web sites, recordings, movies, learning objects, lectures, the
desk top and increased advertising revenue.
• Search is moving from search to navigation
• Google now makes more in advertising revenue than ABC,
CBS and NBC combined
• Instant Messaging will surpass email in volume of
communication in 5 years
Social Trends:
Information Environmentalism
• A movement that seeks to reduce information
overload and its effects on people’s lives.
– Privacy is a primary concern.
Evolving Science
• Thousand years ago:
science was empirical
describing natural phenomena
• Last few hundred years:
theoretical branch
using models, generalizations
• Last few decades:
a computational branch
simulating complex phenomena
• Today:
data exploration
synthesizing theory, experiment and
computation with advanced data
management and statistics
 new algorithms!
2
.
4G
c2
a
 a   3   a 2
 
Living in an Exponential World
1000
• Scientific data doubles every year
– caused by successive generations
of inexpensive sensors +
exponentially faster computing
•
•
•
•
Changes the nature of scientific computing
Cuts across disciplines (eScience)
It becomes increasingly harder to extract knowledge
20% of the world’s servers go into huge data centers
by the “Big 5”
– Google, Microsoft, Yahoo, Amazon, eBay
• So it is not only the scientific data!
100
10
1
0.1
1970
1975
1980
1985
1990
1995
2000
CCDs
Glass
Collecting Data
• Very extended distribution of data sets:
data on all scales!
• Most datasets are small, and manually
maintained (Excel spreadsheets)
• Total amount of data dominated by the other
end
(large multi-TB archive facilities)
• Most bytes today are collected via electronic
sensors
Modelagem Conceitual
• Modelo: abstração da realidade, enfatizando
características específicas.
– representar uma visão do ambiente
– representar as partes do todo
– permitir a abordagem gradual da complexidade
(do mais abstrato para o mais detalhado)
– úteis na organização das informações
Modelagem Conceitual
• Em geral, um único modelo não é
suficiente para representar todas as
características de em sistema
Exemplo Mapa - endereço
Exemplo Distâncias – Escala
Exemplo Foto
Modelagem Científica
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Business process modelling
Cartography
Climate modelling
Data modelling
Ecological modelling
Economical modelling
Environmental modelling
Futures studies
Geologic modelling
Graphical modelling
Hydrography
Hydrological modelling
Hydrogeological modelling
Mathematical modelling
Medical modelling
•
•
•
•
•
•
•
•
•
•
•
•
Modelling in Epidemiology
Molecular modelling
Morphological Modelling
Ocean modelling
Policy modelling
Simulation
Software modelling
Statistical modelling
Stochastical modelling
System dynamics
Thought experiment
Traffic and Transport modelling
Modelos Quantitativos
Servem para: Medir o Mundo
• Precisão (3m, 76mm, 3.896m3, 12V, 30 minutos)
• Estatísticos
• Permitem análise automatizada
Exemplos:
Voltagem de entrada, tamanho do fêmur do bebê,
tempo de cozimento, vida útil do componente)
Ref: Rector et al
Modelos Qualitativos
Servem para: Descrever o Mundo:
• Pouca precisão
• Ambíguos
• Análise automatizada nos primórdios
Exemplos
Quais são os legumes saudáveis?, Melhores filmes
do ano, Quais ruas tem menos trânsito?
Ref: Rector et al
Ferramentas úteis
• Abstração
• Formalismo
• Decomposição
Abstração X Formalismo
Abstração
Fonte: S. Easterbrook - UofT
• Ferramenta mais utilizada na
racionalização de software
• Porque?
– Ignorar detalhes incovenientes
– Possibilita o mesmo tratamento a entidades
diferentes
– Simplifica vários tipos de análise
Abstração
• Em programação
– Abstração é o processo de nomear objetos
compostos e lidar com eles como se fossem
entidades únicas
• Não resolve problemas
– Mas simplifica!!!
Qualidade x Formalismo
• Formalismo. Mininizar
– ambigüidade
– inconsistência
– omissão
Qualidade x Formalismo
• Interpretação única e bem definida da
especificação (tanto por parte dos
implementadores como por parte dos
clientes).
• O rigor e o formalismo na especificação são
recursos que visam maximizar essas
qualidades.
Qualidade x Formalismo
Problema:
• Formalismos são difíceis de entender !!
Qualidade x Formalismo
• Saídas possíveis:
– uso de especificação semiformal durante o
desenvolvimento (grau de formalismo definido em
função do problema).
Qualidade x Formalismo
• Saídas possíveis:
– uso de especificação formal apenas para
representar os requisitos do sistema e como guia
para escrever o projeto, implementação e testes
Dividir e Conquistar
• Tempos antigos “divide et impera”
DIJKSTRA ( http://www.cs.utexas.edu/users/UTCS/notices/dijkstra/ewdobit.html )
(programming considered a human activity)
• Especifica as partes individualmente
Dividir e Conquistar
• Satisfeito? O problema está resolvido?
• Constrói as partes individualmente
se uma das partes ainda é complexa: subdividir
Decomposição
Decompor o problema até:
– Cada subproblema esteja no mesmo nível de
detalhe
– Cada subproblema possa ser resolvido de
modo independente
– As soluções de cada subproblema possam ser
combinadas de modo a resolver o problema
original
Decomposição
• Vantagens:
– Pessoas diferentes podem trabalhar nos
subproblemas
– Paralelização pode ser possível
– Manutenção é mais fácil
Decomposição
• Desvantagens
– As soluções dos subproblemas podem não
combinar de modo a resolver o problema original
– Problemas de difícil compreensão são difíceis de
decompor
– A estrutura do mundo real NÃO é hierárquica
[Jackson]
Decomposição Funcional
função 2
conexão
conexão
Entrada
Saída
função 1
função 4
conexão
conexão
função 3
Fonte: Fernando Vanini - Unicamp
Exemplo: Taxonomia
• O termo taxonomia vem do grego “taxis”, que
significa “arrumação”, e “nomos”, que significa
“lei”.
• Definição: “vocabulário controlado e dinâmico
de descritores relacionados com semântica e
genericamente, que cobre de forma extensiva
um ramo de conhecimento”
Dicionário
Aurélio
Exemplo
Exemplo
Espécie
Ser vivo
humanos
Idade
adultos
Sexo
homens
crianças
mulheres
Taxonomia dos seres vivos
X é uma
subcategoria
de y
Exemplo de Taxonomia
Exemplo de Taxonomia
Music Instrument Classification - 1914
Erich Moritz von Hornbostel & Curt Sachs
Taxonomia “Tortas”
Artes e Entretenimento
Música, Televisão, Rádios
Economia
Informática, Compras
Saúde
Clínicas, Hospitais
Ciência e Meio Ambiente
Engenharia, Física,
Agropecuária
Mapas e Vistas
Câmeras Online
Notícias
Sociedade e Cultura
Revistas, Televisão, Rádio Religião.,
Espiritualidade,
Esportes
Transportes
Futebol, Aquáticos,
Aéreas, Rodoviárias,
Artes Marciais,
Viagens e Turismo
Minas Gerais,
Hospedagem,
Taxonomias Tortas
Mais Exemplos
• Outras taxonomias
– Yahoo! categorias
• Catálogos de compras on-line
– Submarino
– LojasAmericanas.com
– Amazon.com
• Dublin Core (Metadados)
Fonte: Julio Cesar Sampaio do Prado Leite
Construção de Taxonomias - Processo
Fonte: Julio Cesar Sampaio do Prado Leite
Taxonomia de TIC
Motivação
Modelo ϕ
Search Engine
Modelo Θ
05/11/2015
Modelo β
(c) Dept. Informática - PUC-Rio
55
Motivação
• Algumas limitações
dos Web search engines
– cobertura limitada
• capturam apenas os dados
exportados pelos Web servers
– consulta limitada
• pesquisa por palavras-chave
sobre texto
Iceberg Photo
Judith Currelly, Diane Farris Gallery
05/11/2015
(c) Dept. Informática - PUC-Rio
56
Modelagem da Web
• The science of networks is
experiencing a boom. But
despite the necessary
multidisciplinary approach
to tackle the theory of
complexity, scientists
remain largely
compartmentalized in their
separate disciplines.
Linked*
• Stanley Milgram
– any two people are connected to each other through a mere 'six
degrees’
•
•
•
•
•
spread of computer viruses via the Internet,
AIDS epidemic through sexual contacts
1997 currency-exchange crisis in Thailand
rich-get-richer phenomenon
Hubs (very well-connected nodes)
• affect properties of the network, such as susceptibility to computervirus epidemics
• Social networks – small world – Duncal Watts
* Linked - Albert-László Barabási
Referências
• John F. Sowa, Knowledge Representation:
Logical, Philosophical, and Computational
Foundations, Brooks Cole Publishing Co.,
Pacific Grove, CA, ©2000.; ISBN 0-534-949657
• http://developer.yahoo.com/searchmonkey/
Download

transparências - PUC-Rio