G3
WelcomeG3.jpg



Projecto de Software e Comparação de Sistemas Operativos

No dia 02 e 06 de Outubro de 2009 o nosso grupo fez a apresentação do tema de software. Neste dé-mos conceitos chave de software, e fizemos a comparação entre o software do windows e do machintosh. Este trabalho juntamente com os slides prestados pelos professor teêm o intuito de dar um maior nível de esclarecimento aos alunos sobre a temática do software

O ppt que apresentámos e um video ilustrativo da teoria sobre software estão dísponivel no link abaixo:

Software G3 ppt

Em adição a estes pretendemos com este site alargar os conhecimentos dos mais interessados sobre software. Para tal vamos dar os conceitos chave com exemplos e ao longo do semestre aumentaremos o grau de profundidade nos temas ao apresentarmos diferentes partes do site exclusivamente dedicados a temas específicos. Tentaremos também passar os conhecimentos de forma não extensiva e mais lúdica. É o nosso objectivo a aprendizagem dos nossos visitantes e faremos tudo nesse aspecto.

Em termos mais pessoais somos um grupo da turma T11 que criou esta wiki para a disciplina de TI sendo esta parte integrante do nosso trabalho desenvolvido ao longo do semestre. Iremos alem das temáticas do software e dos trabalhos criados por nós tentar também ajudar os nossos visitantes em relação às matérias da disciplina.

Sem mais acrescentar….Divirtam-se


SOFTWARE

Definição:

É o processo de dizer à máquina o que esta deve fazer, numa linguagem que ela entenda ou, dito de outra maneira, é composto por um conjunto de instruções escritas numa dada linguagem de programação, que transmitem ao computador as tarefas que vai realizar.

Tipos de Software:

Software de Sistemas

Definição: software que constitui a infra-estrutura sobre a qual sobre a qual se executa o software aplicacional

SoftwaredeSistemas.jpg

Software Aplicacional

Definição: são programas desenvolvidos para realizarem tarefas e funções específicas. São encontrados tradicionalmente no mercado como:

  • Programas de aplicação geral
  • Programas de aplicação específica

Programas de Aplicação Geral

Conhecido nos locais de trabalho como software de produtividade:

SoftwaredeAplicaoGeral.jpg

Entre outros

Programas de Aplicação Específica

Algumas organizações produzem produtos sem igual ou serviços que requerem software próprio:

Existem dois tipos de aplicações específicas:

  • Aplicações Transaccionais:

ERP,CRM, Contabilidade, Gestão da
Produção, Vendas, Facturação,
etc

  • Aplicações Analíticas:

Sistemas de Suporte à Decisão,
Sistemas de Informação para Executivos

AplicaesTransaccionaisPeq.jpgAplicaesAnalticasPeq.jpg

Sistemas Operativos


Um video Lúdico ^^

Definição: Conjunto de programas que supervisiona a generalidade das funções do computador, afecta tempo do processador e memória aos programas e proporciona uma interface entre o utilizador e o hardware.

Objectivos dos Sistemas Operativos:

  • Gerir os recursos do computador
  • Estabelecer o interface com o utilizador
  • Executar e disponibilizar serviços para o software aplicacional

Funções do Sistema Operativo:

  • Multitarefa / multiprogramação – A gestão de duas ou mais tarefas ou programas em processamento concorrencial num único processador.
  • Multiprocessamento – Processamento simultâneo de mais do que um programa através da sua afectação a diferentes processadores.
  • Memória Virtual – Uma funcionalidade que simula mais memória principal (ou central) do que aquela que realmente existe no computador, estendendo a
  • memória principal à memória secundária (disco).
  • GUI – Graphical User Interface – é uma componente do Sistema Operativo que permite aos utilizadores ter controlo directo sobre os objectos visíveis
  • (normalmente ícones) e acções, que substituem a sintaxe de comandos

Exemplos de Sistemas Operativos:

  • Windows XP;
  • Windows Vista;
  • Linux;
  • Unix;
  • MS-DOS;
  • (…).
sistemas_operativos1.jpg

Linguagens de Programação

Definição:

  • Uma linguagem de programação é composta por um conjunto de comandos e símbolos especiais que têm um significado exacto e inequívoco, os quais correspondem a tarefas bem definidas que o computador tem de realizar
  • A linguagem de programação possui uma “gramática” própria (conjunto de regras de escrita, construção e articulação de comandos) que tem que ser rigorosamente respeitada para que o processador possa interpretar e executar os comandos.

Tipos de Linguagens de Programação:

  • Linguagem Máquina

É constituída pelas instruções elementares que o processador entende

  • Linguagem Assembly

É uma linguagem próxima do código máquina apenas divergindo no simbolismo

  • Linguagens de Alto Nível

Estão mais próximas da linguagem corrente do utilizador. A cada linguagem de alto nivel correspondem várias instruções em código máquina

Linguagensdeprogramao-1.jpg

Código binário

  • O código binário é a linguagem máquina mãe apartir da qual evoluiram todas as outras linguagens, e na qual assenta toda a programação hoje em dia.
  • É constituído por um código de 1s e 0s
  • Um byte é um segmento de informação representada em código binário
  • Cada byte num computador é um conjunto de 8 1s e 0s do género: 10001000; 11001100
Cdigobinrio.jpg

Em cada espaço é colocado um 1 ou um 0. Se for colocado um 1 conta-se o número representado abaixo. Se for 0 não se conta nada.
Quando estiverem apurados os números a contar faz-se a soma destes e esta dará um número no intervalo [0,255]

Cdigobinrio-Exemplo.jpg

Cada número apurado entre 0 e 255 corresponde a um comando específico, por exemplo a letra 'a' corresponde ao código 01100001

Devido a este código ser de base 2 ou seja os números que se retiram deste são sempre resultado de somas de 2^x, as dimensões/capacidades em software e hardware são de base 2. Isto é:

  • 1 KByte = 1024 Bytes
  • 1 Megabyte = 1024 KB
  • 1 Gigabyte = 1024 MB
  • 1 Terabyte = 1024 GB

Processo de Programação:

Os passos envolvidos no processo de programação são:

  1. Definir o Problema
  2. Planificar a solução
  3. Codificar o programa
  4. Testar o programa
  5. Documentar o programa

Interpretação e compilação de informação:

Interpretador:

  • Interpreta (traduz) uma instrução de cada vez
  • A tradução para código executável é feita durante o processo de execução
  • Os erros de sintaxe ocorrem durante a execução

Compilador:

  • Traduz todo o programa para código executável
  • A tradução é feita durante o processo de só vez
  • Os erros de sintaxe de sintaxe são detectados antes dea execução
  • Mais rápido na execução

Visual Programming

Definição: Permite a criação de objectos com representações gráficas no ecrã através de selecção de ícones de uma palete.

Exemplos:
Microsoft Visual Basic
Borland Delphi
Micro Focus COBOL
ASNA Visual RPG
Visual C++

Outros conceitos a captar:

Hypertexto - Uma abordagem à gestão de dados no qual os dados são armazenados numa rede de nós conectados por ligações e são acedidos através de navegação interactiva.

Hypertext Markup Language (HTML) - Uma linguagem de programação standard utilizada na Web para criar e reconhecer documentos de hipertexto.

Extensible Markup Language (XML) - Uma linguagem de programação designada para melhorar as funcionalidades de documentos web proporcionando maior flexibilidade e adaptação na identificação dos dados.

Mashup: é um website ou uma aplicação web que usa conteúdo de mais de uma fonte para criar um novo serviço completo.
– Faculta um serviço avançado ao utilizador

Groupware: sistema aplicacional que permite aos trabalhadores uma colaboração em tempo real através da Web
• Integração das tecnologias multimédia e das tecnologias Web
• Permite colaboração remota
• Elimina tempos de viagem e facilita a expressão e troca de ideias

Realidade virtual (VR de Virtual reality): é uma aplicação que simula a realidade sensorial através de software
• Simula visão, audição e tacto
• Usa equipamento como capacete, luvas, auscultadores e bases de movimentação


Curiosidades:

A origem da palavra software!

Pesquisadores de origens de palavras descobriram a mais antiga ocorrência da palavra software em 1850, mas num contexto muito diferente do que é utilizado hoje. Era usado para distinguir dois tipos de lixo: o "soft-ware" referia-se àquilo que se decomporia com o tempo e o "hard-ware" para todo o resto.

Posteriormente etimologistas descobriram que o uso do termo software para descrever programas de computador data de 1958 e apareceu pela primeira vez em um jornal de matemática.

O bibliotecário Fred R. Shapiro da Escola de Leis de Yale em New Haven, Connecticut, procurou pela palavra entre os jornais universitários eletronicamente arquivados no banco de dados JSTOR (Journal STORage) da Universidade de Michigan em Ann Arbor. Ele encontrou um artigo do professor de Estatística John W. Tukey da Universidade de Princeton em janeiro de 1958 no American Mathematical Monthly.

Entitulado "The Teaching of Concrete Mathematics", o artigo de Tukey continha a seguinte passagem:

Today the "software" comprising the carefully planned interpretive routines, compilers, and other aspects of automative programming are at least as important to the modern electronic calculator as its "hardware" of tubes, transistors, wires, tapes and the like.

Tradução Livre:
Hoje o "software", que compreende rotinas interpretativas cuidadosamente planejadas, compiladores, e outros aspectos da programação automativa, é no mínimo tão importante para a calculadora eletrônica moderna quanto seu "hardware" de tubos, transistores, fios, fitas e todo o resto.

Esta sentença aparece próximo ao começo do artigo de Tukey, o qual apresenta idéias para tornar a matemática "aplicada" ou "concreta" mais intelectualmente estimulante e atrativa para os estudantes. Entre suas recomendações está aquela de enfatizar "o estudo de processos computacionais discutindo suas propriedades gerais (a matemática da computação) em vez de simplesmente vê-la superficialmente".

Formado em Química e Matemática, Tukey teve papel fundamental no desenvolvimento da Estatística durante a metade do século 20. Trabalhou tanto na Universidade de Princeton quanto nos Laboratórios Bell. Em um artigo de 1965 com J.W. Cooley, ele introduziu o algoritmo de transformação rápida de Fourier, talvez agora o mais amplamente usado em técnicas computacionais para análise e manipulação digital ou de dados discretos. Também inventou uma grande variedade de métodos, tanto gráficos quanto numéricos, para aplicações estatísticas. John Tukey morreu em 26 de julho de 1985.

O termo software não é o único que coloca Tukey no hall da fama na Neologística. Conhecido por seu gosto por cunhar palavras e frases apropriadas, Tukey é creditado com a invenção da palavra bit (binary digit) em 1946, e foi responsável pelo primeiro uso de muitos termos na Matemática Estatística.

IMPORTANTE:

DICAS PARA O TESTE!!!20/11/2009
Tópicos:
Diagramas de classes:
Identificar as classes e estabelecer as relações
Ver slides: Modelização da Informação - Diagrama de Classes
Resolver exercicios de modelização
Os ultimos dois pontos podem ser encontrados na página da cadeira https://aquila1.iseg.utl.pt/aquila/disciplinas/ti/2009-2010/1-semestre/pagina-inicial

PERFIL DE GRUPO

O grupo 3 é formado por:

  • Arthur Jordão
  • Bernardo Cardoso
  • Fábio Marques
  • João Ferreira

Instituição de ensino: ISEG

Ano Lectivo: 2009/2010

Turma: T11

Disciplina: Tecnologias de Informação

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License