Introdução a Informática Software

Slides:



Advertisements
Apresentações semelhantes
INTRODUÇÃO À COMPUTAÇÃO
Advertisements

Sistemas Distribuídos
Curso Superior de Engenharia Elétrica
Introdução a Algoritmos
Material elaborado pela professora Alzennyr Cléa da UFRPE / DFM
INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Prof. Diogo Souza.
Noções de Sistemas Operacionais
Engenharia de Software
Infra-Estrutura de TI: Hardware e Software
Noções de Informática Prof. Eduardo
Informática Aplicada Prof.: Bruno Rafael de Oliveira Rodrigues.
ELEMENTOS DA INFORMÁTICA
Sistemas Operacionais de Rede Professor: João Paulo de Brito Gonçalves
Profa. M.Sc. Yáskara Menescal
FACULDADE DOS GUARARAPES
Conceitos Básicos de Computação O ABC da Computação.
Introdução à Informática
Introdução a Informática
Sistemas Operacionais
Informática Industrial
Introdução à Programação
TEMA 3 SISTEMAS OPERACIONAIS
Introdução à Informática
Linguagens de Programação
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Engenharia de Software
Lógica de Programação UNIDADE 1 – Introdução a) Computador
Revisão de Conceitos Básicos Hardware (Parte 1)
Introdução a Informática Software Eduardo Figueiredo 12 de Março de 2010 GEM03: Algoritmos e Programação de Computadores Aula 03.
Computadores Tipos e estrutura interna
PROGRAMAÇÃO I UNIDADE 1.
Introdução POO e Java Eduardo Figueiredo POO Aula 02
Revisão de Conceitos Básicos Software Eduardo Figueiredo 25 de Março de 2010 INF62: Informática no Ensino de Física 2 Aula 04.
IFSul – Campus Venâncio Aires
PCI- Introdução à Computação
Introdução a Informática Software
Ana Duarte e Ana Marques 8ºB Nº1 e Nº2
Bem vindos as aulas de informática
Noções de Software Escola Almirante Soares Dutra
Prof. Luciano R. Coutinho © 2001,02,07
Banco de Dados 4P/SI – 2010/02 Prof. Carlos Alberto Seixas.
Introdução à Informática
Definição A rigor, tudo o que pode ser armazenado eletronicamente pode ser chamado de software. Consideraremos aqui, como software, apenas os conjuntos.
INTRODUÇÃO A INFORMÁTICA Professor: Augusto Baía.
Introdução à Engenharia de Software
Sistemas Operacionais
© 2004 by Pearson Education Computadores: Ferramentas para a Era da Informação Tema 0 PARTE A.
Introdução a Banco de Dados Aula 04
Zeque - Grad. CC1 Sistemas Operacionais Curso de Ciência da Computação da UFPE Prof. José Queiroz - ZEQUE.
Conceitos Básicos de Informática
Introdução O que se espera de um sistema de computação?
Requisitos de Software
INTRODUÇÃO AOS SISTEMAS OPERACIONAIS
Algoritmos e Programação I
Introdução à Computação - Jorge Macêdo1 ICC – Software Jorge Macêdo.
Algoritmos e Programação MC102
Linguagens de Programação
SISTEMAS de INFORMAÇÃO segunda-feira, 1 de fevereiro de 2010
INTRODUÇÃO À COMPUTAÇÃO
Introdução aos Sistemas Operacionais
Elementos de Informática
Sistemas Operacionais
Ciência da Computação I
Escola de Engenharia de Piracicaba Administração Sistema de Comunicação de Dados Aula 1 – Introdução Alberto Martins Júnior Flávio I. Callegari.
Técnico em Informática
TÉCNICAS DE ESTIMATIVAS
Softwares Faculdade de Ciências Aplicadas e Sociais de Petrolina - FACAPE Ciência da Computação Professora: Cynara Carvalho
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
Sistemas de Informações Fundamentos da Computação 3. Software Márcio Aurélio Ribeiro Moreira
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Introdução a Informática Software INF30: Informática para Administração Aula 03 Introdução a Informática Software Eduardo Figueiredo 12 de Março de 2010 1

Sistema Computacional Pessoas

Sistema Computacional Pessoas 3

Sistema Computacional: Software Componente lógico de um sistema computacional Ponte entre os usuários e a máquina Séries de instruções Indicam passo a passo o que o computador deve fazer Importância Realizam tarefas rotineiras e/ou periódicas Aumentam a produtividade Reduzem os custos de uma organização

O que é software? Programa de computador + Documentação Classificação fundamental Produtos genéricos (ex. Microsoft Office) Produtos encomendados (ex. Locadora do Zé)

Crise do Software (1968) Custos de hardware caindo Custos do software subindo Avanços em hardware Permitem desenvolvimento de sistemas cada vez mais complexos Resultado (software) Custos altos, projetos atrasados, sistemas não confiáveis, desempenho insatisfatório, etc...

Software está em todo lugar

Sistemas Críticos Equipamentos médicos Caixas eletrônicos Extremamente críticos Lidam com vidas Caixas eletrônicos Prejuízos financeiros

Confiabilidade de Software Exemplo: Vôo Air France Rio - Paris Dados conflitantes (falha nos sensores) Sistema assume o controle (piloto automático) Piloto tenta reiniciar o sistema (boot) Em 4 minutos o avião mergulha no oceano The Last Four Minutes of Air France Flight 447. http://www.spiegel.de/international/world/0,1518,679980,00.html 

Preço e Desempenho Celular Pouco espaço na memória Grande variação em características de aparelhos Celular

Classificação de Software Quanto a Função Infra-estrutura Básica do Sistema Sistema Operacional Utilitários de controle (BIOS, firmwares, drivers...) Aplicativos Software Comercial Software Científico ou de Engenharia Software de Tempo Real Software de Inteligência Artificial, etc.

Aplicações Específicas Negócios e Comércio Comércio eletrônico, bolsa de valores, planejamento de gastos, etc. Medicina Análise de imagens médicas como ultra-som Acompanhamento de atletas e pacientes Detecção de anomalias genéticas

Aplicações Específicas Exército Simula estratégias de ataque/defesa Treinamento de soldados Calcula trajetórias de projéteis E muito mais... Usinas nucleares e hidrelétricas Portos e aeroportos Previsões meteorológicas Atividades geológicas

Tipos de Software 14

Tipos de Licenças Software Proprietário (comercial) Freeware Domínio Público Software de Fonte Aberta Shareware

Freeware O autor fornece-o gratuitamente para ser usado por todos O autor detém o copyright Ele pode impor restrições ao uso O software não pode ser alterado ou redistribuído sem permissão

Domínio Público Software que não tem copyright Pode ser usado e até mesmo alterado sem permissão Tipicamente, é desenvolvido por universidades e/ou instituições de pesquisa usando subvenções do governo

Software de Fonte Aberta Uma variação de freeware O código-fonte é disponibilizado Código-fonte: legível por seres humanos Pertence a empresa que desenvolveu Outros programadores podem modificar e redistribuir os programas livremente Ajuda a identificar erros (bugs) e a criar melhorias mais facilmente

Shareware Software garantido por copyright, distribuído gratuitamente para um período experimental Se você gostar dele, deve registrá-lo, pagando uma taxa A maioria das empresas acrescenta documentação, ampliações, suporte e atualizações gratuitas para estimular as pessoas a fazer o registro

Como é o desenvolvimento de Software? 20

Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta idéia Especificação de Requisitos Projeto Implementação Testes Manutenção

Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta ideia Especificação de Requisitos Projeto Implementação Testes Manutenção

Especificação de Requisitos Um sistema de programação deve satisfazer as necessidades de seus usuários Tais necessidades são expressas na forma de requisitos Requisito = ação que deve ser executada pelo sistema Ex: registrar as notas dos alunos, calcular a média final, etc.

Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta ideia Especificação de Requisitos Projeto Implementação Testes Manutenção

Da Análise ao Projeto A partir do documento de análise de requisitos, projeta-se o sistema 1ª Fase: Resolução do Problema PROBLEMA Encontrar Solução Programa de Computador 2ª Fase: Implementação (codificação)

Projeto do Sistema Dividido em duas etapas Projeto Preliminar define a estrutura modular do software, as interfaces e as estruturas de dados utilizadas Saída: Diagramas Projeto Detalhado descreve detalhadamente cada módulo definido no projeto preliminar Saída: algoritmos

Projeto de uma Casa

Projeto Preliminar de Software

Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta idéia Especificação de Requisitos Projeto Implementação Testes Manutenção

Implementação do Sistema A implementação segue as definições do projeto preliminar Transcreve as instruções do algoritmo para uma linguagem de programação Exemplos: Linguagem C, Java, Pascal...

Fases do Desenvolvimento Modelo Cascata Define atividades seqüenciais Outras abordagens são baseadas nesta idéia Especificação de Requisitos Projeto Implementação Testes Manutenção

Teste e Validação Tem por objetivo garantir que o sistema satisfaça os requisitos Consiste da realização de alguns tipos de testes para encontrar erros A inexistência de erros não representa a adequação operacional do sistema Deve ser feita a validação com o cliente

História das Linguagens de Programação 33

Evolução das Linguagens Linguagens de Máquina +1300042774 (traduzido depois para 0 e 1) Linguagens Assembly load basepay / add overpay / store grosspay Linguagens de Alto Nível grosspay = basepay + overpay

Linguagens de Máquina Definem instruções a serem executadas pelo computador São especificas para o hardware Código de máquina: uma seqüência de números significa uma instrução a ser executada “+1300042774” significa “load basepay” Atualmente, programar em linguagens de máquina é pouco comum São usadas linguagens de alto nível como C

Linguagens de Alto Nível Programadores geralmente utilizam linguagens de alto nível Mais próximo da compreensão humana Programas de alto nível são traduzidos para a linguagem da máquina por compiladores Arquivo .EXE é gerado O programa compilado pode então ser executado pelo computador

Exemplo: Evolução de Linguagens BCLP (1967) por Martin Richards Linguagem C (1972) por Dennis Ritchie C++ (1980) por Bjarne Stroustrup, Bell Java (1995) pela Sun

Veremos nesta Disciplina 38

O que veremos? Sistema Operacional Internet / Navegadores Editor de texto Planilhas eletrônicas e Gráficos Apresentações Eletrônicas Banco de Dados

Sistema Operacional Software Básico de um computador Não existiam nos computadores antigos Exemplo: computadores construídos com válvulas e painéis Os programadores deviam considerar as características do hardware Atualmente, estão presentes em todos os computadores pessoais E também em muitos computadores pertencentes a outras categorias

Sistema Operacional Cria um ambiente no qual os usuários podem construir e executar programas Executam programas internos de controle do computador de forma transparente Sem que o usuário saiba ou precise se preocupar em saber Exemplos de Sistemas Operacionais Windows, Linux, Solaris, Mac OS

Tarefas do Sistema Operacional Gerenciamento da memória do computador Administração dos dados Acionamento dos dispositivos de entrada e saída Teclado, mouse, disquetes, CDs, DVDs, etc. Execução de programas utilitários ou construídos pelo usuário

Internet e Navegadores Navegadores permitem acessar outros endereços Tanto local Como na Internet Permite a comunicação com outros computadores Requer algum dispositivo de rede linha telefônica Cabo de rede

Editores de Texto Processamento de Texto Editoração Eletrônica O software de computador pessoal mais amplamente usado Cria memorandos, relatórios, artigos, etc. Incorpora gráficos em documentos Editoração Eletrônica Necessidades de editoração de alto nível Boletins (newsletters) Brochuras, materiais promocionais

Planilhas Eletrônicas e Gráficos Compostas de linhas e colunas de números Realizam análise “E se...?” Alterar uma célula faz com que a planilha seja recalculada Apresentam dados graficamente Exemplo: Exibe as despesas como gráficos de pizza.

Apresentações Eletrônicas A apresentação gráfica cria apresentações de slides: Combine gráficos, áudio e vídeo de alta qualidade Permite que se discuta em grupo mais facilmente Prova visual mais efetiva

Banco de Dados Encarrega-se do gerenciamento de uma coleção de fatos inter-relacionados O software pode armazenar, recuperar, atualizar e manipular dados. Também pode apresentar relatório de dados de muitas maneiras e imprimi-los. Transforma grandes quantidades de dados em informação.

Referência H.L. Capron e J.A. Johnson. Introdução à Informática: Capítulo 2 Softwares Aplicativos. Pearson Education, 2004.