Baixe o app para aproveitar ainda mais
Prévia do material em texto
Tipos de Softwares SOFTWARE - DEFINIÇÃO � As definições evoluem com o tempo: � Alcade(1991): “Parte Lógica que dota o equipamento físico de capacidade para realizar todo tipo de trabalho”. � Peter Norton (1997): “Ingrediente que estabelece que o 2 � Peter Norton (1997): “Ingrediente que estabelece que o computador executará uma tarefa específica”. � Pressmann (2001): “Instruções que, quando executadas, produzem a função e o desempenho desejados”. � Sommerville (2003): “Não é apenas o programa, mas também toda a documentação associada e os dados de configuração necessários para fazer com que esses programas operem corretamente”. SOFTWARE � “É A PARTE LÓGICA DO SISTEMA DE COMPUTAÇÃO QUE É ARMAZENADA ELETRÔNICAMENTE. É COMPOSTO POR UM CONJUNTO DE PROGRAMAS QUE CAPACITAM O HARDAWARE A REALIZAR 3 CAPACITAM O HARDWARE A REALIZAR TAREFAS ESPECÍFICADAS, PELOS DADOS MANIPULADOS POR ELES, PELA DOCUMENTAÇÃO DE ESPECIFICAÇÃO DOS PROGRAMAS E PELA DOCUMENTAÇÃO DE OPERAÇÃO DOS PROGRAMAS”. (MARÇULA,2005) EVOLUÇÃO DO SOFTWARE � A evolução é um processo continuo, porém podemos caracterizar quatro fases distintas, que se sobrepõem no seu início e fim. 4A. Fase 4 1950 1960 1970 1980 1990 2000 1A. Fase 2A. Fase 3A. Fase 1a. FASE (1950-1960) � Processamento continuo. Não era interrompido do até o encerramento do processamento, com as instruções agrupadas em lotes de Jobs denominados Batch. � Poucas possibilidades de escolha de software no 5 � Poucas possibilidades de escolha de software no mercado. Os softwares eram customizados ao Hardaware ( feitos especificamente para cada sistema de computação ). � CPU ociosa devido a espera das operações da I/O serem bem mais lentas, propiciando a idéia de multiprogramação (programas sendo executados ao mesmo tempo). 2a. FASE (1960-1970) � 1970 - Evolução da multiprogramação para Time Sharing (tempo compartilhado), com as trocas de jobs sendo executadas rapidamente que permitem ao usuário interagir com o sistema. � Programas passam a ser usados por várias pessoas ao mesmo tempo e o processamento em tempo real. 6 mesmo tempo e o processamento em tempo real. � Sistema específicos de controle industrial, eletrodomésticos, computação embarcada, possuem controle rígido de tempo de processamento da CPU e Fluxo dos dados. � Tratamento específico para os dados armazenados, surgem os primeiros bancos de dados. � Tem início a venda do software como um produto, separado do Hardware. � O mesmo software começa a ser utilizado por várias empresas, permitindo a redução do custo de desenvolvimento. 3a. FASE (1970-1980) � Surge o conceito de sistemas distribuídos, que apresentam processamento realizado não só no computador central, mas também em outros ligados a ele, portanto não compartilham memória ou clock. Crescem as vendas de softwares, transformando-os em 7 � Crescem as vendas de softwares, transformando-os em produtos de massa. � Redução de tamanho e custo do Hardware, tornando-o acessível a um maior número de empresas e pessoas. � O software é incorporado a equipamentos de uso diário, tornando os equipamentos mais “ inteligentes”. 4a. FASE (1980-1990) � Computadores pessoais passam a ter capacidade de processamento superior aos antigos computadores de grande porte. � Popularização da informática. � Surgem novas tecnologias de desenvolvimento do software, em especial a orientação a objetos, que procura aproximar o mundo virtual do mundo 8 a orientação a objetos, que procura aproximar o mundo virtual do mundo real. � Software passam a assumir a tomada de decisão, inclusive com Sistemas Especialistas, que permitem o uso do conhecimento humano como base da tomada de decisão. � Processamento paralelo, aumento ainda mais o poder e velocidade de processamento e quebra o paradigma seqüencial de Von Neumann. � IA Inteligência Artificial (Redes Neurais) com aplicações práticas, onde o programa aprende e corrige decisões futuras. Tendências. � Uso cada vez mais intensivo da computação distribuída (Redes de Computadores). � Aplicações de inteligência cada vez mais próximas do usuário. 9 do usuário. � Aumento da capacidade de processamento e armazenamento de dados dos computadores, permitindo softwares cada vez maiores e mais requintados. � Softwares cada vez mais amigáveis, popularizando a arte de desenvolvimento de novas aplicações pelo próprio usuário final. CATEGORIA � Com a evolução fica cada vez mais difícil a tarefa de classificação dos Softwares, porém a seguinte pode ser indicada: � Básico Aplicativo 10 � Aplicativo � Linguagem de Programação � MiddleWare: Software que faz a mediação entre um aplicativo e o sistema operacional, ou entre dois softwares aplicativos. � FirmWare: Programa impresso no próprio processador ou gravado em memórias ROM, podendo ser caracterizado como Hardware ou Software. BÁSICO � Trabalha fortemente integrado com o sistema de computação, realizando as tarefas de gerenciamento necessárias ao seu funcionamento, podendo ser dividido em: 11 podendo ser dividido em: � SISTEMA OPERACIONAL: Software responsável pelo funcionamento geral dos sistemas de computação, responsável por integrar o hardware as camadas superiores de softwares. � UTILITÁRIOS DE SISTEMA: Softwares que acompanham o sistema operacional e o auxiliam nas suas tarefas. SOFTWARES APLICATIVOS � São softwares responsáveis pela realização dos trabalhos para o usuário. � Como exemplo de aplicativos temos todas as rotinas criadas pelos softwares de automação de escritórios. Folhas de Pagamento. 12 � Folhas de Pagamento. � Sistemas de Faturamento. � Controle de Estoque. � Sistemas Integrados ERP. � Automação bancária. � Outros. LINGUAGENS DE PROGRAMAÇÃO � Softwares utilizados para desenvolvimento dos Softwares Aplicativos. 13 Aplicativos. � Existem vários tipos e categorias, merecendo um estudo posterior. Tipos de Softwares � Existem também várias propostas de classificação segundo o tipo. � FREEWARE: Software distribuído gratuitamente, mas não revela o código-fonte (instruções do programa). Possui 14 licença para redistribuição, mas normalmente tem limitação para uso comercial. � SOFTWARE LIVRE (Free Software): a distribuição pode ser gratuita ou não, mas é permitido o seu uso, modificação e distribuição, respeitada a licença. Tipos de Softwares � Open Source: Software de domínio público ou com direitos autores cuja licença permite que o código fonte seja livremente modificado, mas na redistribuição deve permanecer livre para 15 redistribuição deve permanecer livre para modificações. O nome do autor deve ser mantido, existindo pequenas restrições quanto a modificação. Como exemplo temos a GNU General Public License, Mozilla Public License. � Domínio Público: Software sem direitos autorais, podendo ser distribuído gratuitamente. Tipos de Softwares � Shareware: Software distribuído gratuitamente, mas que requer pagamento depois de um período de teste, ou mesmo para receber a versão completa, nesse caso é também 16 versão completa, nesse caso é também conhecido como Cripplewere. � Adware: Software distribuído gratuitamente, mas requer que o usuário visualize propagandas para usar o software. Formas de Distribuição � As formas mais comuns de distribuição do software são as seguintes: � Discos Flexíveis: pouco utilizados atualmente devido a pequena capacidade de armazenamento, porém em alguns casos são utilizados como validadores. 17 alguns casos são utilizados como validadores. � CD-ROM/DVD: Os meios ópticos são os mais utilizados devido a suacapacidade e custo reduzido por bytes armazenados � DOWNLOAD: Os softwares são trazidos ao sistema de computação através da rede de computadores (internet) pelos meios de comunicação disponíveis como: fios elétricos, fibra óptica, sinais de rádio, etc. SISTEMAS OPERACIONAIS � Dividido entre Kernel e Shell. � É o sistema mais complexo, sem o qual nada se faz no sistema de computação. � Funções Básicas: 19 � Funções Básicas: � Fornecer uma interface de comunicação entre o sistema de comunicação e o usuário. � Gerenciar a operação dos dispositivos de hardware do computador. � Gerenciar e manter o sistema de arquivos armazenados. � Dar suporte aos programas que são executados. Esquema USUÁRIO PROGRAMAS 20 SISTEMA OPERACIONAL HARDWARE SISTEMA DE ARQUIVOS Funções dos Sistemas Operacionais � Gerenciamento de Processos, que consistem na execução de programas. Um processo pode ser dividido em threads. � Gerenciamento da Memória Principal, realizando a alocação e liberação de endereços para armazenar dados e programas. Responsável também pelo SWAP ( troca entre 21 programas. Responsável também pelo SWAP ( troca entre discos e memória ). � Gerenciamento de Arquivos. “Arquivo é uma coleção de dados relacionados definidos pelo criador”(Silberschats,2001). Este podem estar organizados em diretórios ou pastas conhecidos como sistemas de arquivos. Estes por sua vez podem estar acondicionados em Partições, Minidiscos ou Volumes. Funções dos Sistemas Operacionais � Gerenciamento de Armazenamento secundário. Corresponde ao processo de armazenamento físico dos dados, Formação Física, que é a criação dos Clusters que são blocos lógicos de dados. 22 Clusters que são blocos lógicos de dados. � Gerenciamento do Sistema de Entrada e Saída de Dados (I/O). � Gerenciamento dos Serviços de Redes � Gerenciamento do Sistema de Proteção � Sistema Interpretador de Comandos (Shell) Serviços Oferecidos pelo SO � Serviços oferecidos aos programas e aos usuários: � Executar programas � Gerenciar operações de (I/O). � Manipular o sistema de arquivos. 23 � Comunicações � Detecção de erros � Serviços necessários para garantir a operação do SO � Alocar recursos � Manter registros de usuários � Proteção. Modelos de Sistema Operacional � Windows (Microsoft) � Windows CE - Usados em palmtops. � Windows 10 – Computadores Pessoais � Windows Server – Redes. MacOs (Apple) – computadores pessoais Macintosh e iMac. 24 � MacOs (Apple) – computadores pessoais Macintosh e iMac. � UNIX – Sistema Acadêmico, open source. � UNIX like – BSD, FreeBSD, AtheOS, Syllable, Solaris(Sun), z/OS (IBM) � LINUX - Derivado do UNIX, também é open source e utilizado em computadores de rede, além de alguns poucos pessoais. � Open VMS(HP): sistema utilizado em minicomputadores e mainframes. � PalmOS para Palm e o COS para computação embarcada.
Compartilhar