Sistemas e Programação€¦ · Sistemas e Programação Prof. Renato Rondon. Sistemas. Sistemas...
Transcript of Sistemas e Programação€¦ · Sistemas e Programação Prof. Renato Rondon. Sistemas. Sistemas...
Sistemas e ProgramaçãoProf. Renato Rondon
Sistemas
SistemasTeoria Geral dos Sistemas: Teoria que contribui para a unidade da ciência, ao desenvolver princípios unificadores que atravessam verticalmente os universos particulares das diversas ciências envolvidas.
SistemasSistemas de Informação: Envolve a atividade de entrada, processamento, saída, armazenamento e controle de dados para que sejam convertidos em informações.
SistemasSistemas de Informação: São compostos por:
● Recursos Humanos● Recursos de Hardware● Recursos de Software● Recursos de Dados● Recursos de Rede
SistemasSistemas de Informação: Fases e etapas:
● 1. Levantamento de Requisitos● 2. Desenvolvimento● 3. Testes● 4. Implantação● 5. Treinamento● 6. Manutenção● 7. Gestão● 8. Avaliação
Levantamento de Requisitos
Levantamento de RequisitosLevantamento de Requisitos: Descrições de como o sistema de informação deve se comportar e validar suas funcionalidades, ou seja, tudo o que o sistema deve fazer para atender às necessidades para o qual foi empreendido.
● Estudos de Viabilidade● Elicitação e Análise● Especificação● Validação
Levantamento de RequisitosEspecificação de Requisitos: É o processo de escrever os requisitos de usuário e de sistemas em um documento de requisitos.
● Os requisitos podem ser especificados de diversas formas, como, por exemplo, por meio de escrita em linguagem natural ou através do preenchimento de um formulário padrão, do tipo template.
Levantamento de RequisitosRequisitos Funcionais: Abordam o que o sistema deve fazer e como deve se comportar a certas entradas e às mais variadas situações.
● Questões relacionadas principalmente ao Cliente.
Levantamento de RequisitosRequisitos Não-Funcionais: São relacionados ao uso da aplicação em termos de desempenho, usabilidade, confiabilidade, segurança, disponibilidade, manutenção e tecnologias envolvidas, ou seja, características mínimas de um software de qualidade.
● Questões relacionadas principalmente ao Analista.
Levantamento de RequisitosFURPS: Em um software, existem requisitos que podem ser categorizados segundo o modelo FURPS, onde cada letra provém de uma palavra em inglês (acrônimo).
● Funcionalidade● Usabilidade● Reliabilidade (Confiabilidade)● Performance (Desempenho)● Suportabilidade
Levantamento de Requisitos(Questão) A Revisão dos requisitos determina se todos eles satisfazem os critérios de qualidade e se as Especificações dos Requisitos do Software estão claras e bem entendidas por todas as partes interessadas;
● ( ) CERTO ( ) ERRADO
Levantamento de Requisitos(Questão) Na Especificação dos Requisitos, nem todo requisito presente é um requisito a ser construído.
● ( ) CERTO ( ) ERRADO
Levantamento de Requisitos(Questão) Um cliente contratou uma empresa para desenvolver um sistema de E-Commerce. Após os levantamentos iniciais, definiu-se, de comum acordo, entre o cliente e a empresa contratada, que esse sistema terá, obrigatoriamente, os seguintes comportamentos, dentre outros: "Logar no Sistema", "Selecionar Produtos", "Listar Produtos" e "Calcular Frete". Nesse caso, tais comportamentos obrigatórios, que o sistema de E-Commerce deverá ter, são chamados de Requisitos físicos.
● ( ) CERTO ( ) ERRADO
Levantamento de Requisitos(Questão) O modelo FURPS pode ser utilizado para categorizar os requisitos não funcionais de um software.
● ( ) CERTO ( ) ERRADO
Levantamento de Requisitos(Questão) Tempo de resposta e consumo de recursos, como memória RAM e processador, são características de requisitos de um software, relacionadas, no acrônimo FURPS, à letra "P", que significa "Performance".
● ( ) CERTO ( ) ERRADO
Desenvolvimento
DesenvolvimentoDesenvolvimento: É a construção / implementação do software em si. É o processo de codificação, ou seja, quando o projeto é traduzido numa forma legível para uma máquina.
DesenvolvimentoAnálise de Pontos de Função: Método-padrão para a medição do desenvolvimento de software, que tem por objetivo estabelecer uma medida de tamanho do software em Pontos de Função, com base na funcionalidade a ser implementada, sob o ponto de vista do usuário.
DesenvolvimentoDesenvolvimento à Medida: Construção personalizada, corresponde diretamente aos requisitos da organização, o que normalmente implica em um grande investimento.
Desenvolvimento por Pacotes: Construção através de pacotes prontos de soluções de software já desenvolvidas anteriormente, o que implica normalmente em um trabalho maior voltado à configuração e adaptação, para adequação aos requisitos da organização.
DesenvolvimentoModelo Cascata (ou Waterfall): É baseado em ambientes físicos altamente estruturados, em que depois de uma ação as mudanças são proibitivamente caras, se não impossíveis.
DesenvolvimentoModelo Prototipação: Trabalha com um protótipo que simula o software final funcionando com base nos requisitos básicos do sistema. Para isto, é necessário executar um “miniprojeto” antes do projeto.
DesenvolvimentoModelo Espiral: Inclui explicitamente a análise de riscos e a prototipação como atividades do processo de desenvolvimento.
DesenvolvimentoModelos Ágeis
● Scrum● XP (Extreme Programming)
DesenvolvimentoControle de Versão: Ferramentas (como o Subversion, Git e o Mercurial) utilizadas no desenvolvimento para resolver três problemas:
● Registrar a evolução do projeto● Possibilitar o trabalho em equipe● Criar e manter variações do projeto
Desenvolvimento(Questão): Em uma das fases do desenvolvimento de um software, o projeto deve ser traduzido numa forma legível para uma máquina, caracterizando a etapa de análise de requisitos.
● ( ) CERTO ( ) ERRADO
Desenvolvimento(Questão): A utilização da métrica de análise baseada em pontos por função permite a previsão de diversos elementos do processo de desenvolvimento de um programa, como por exemplo o custo ou esforço necessário para projetar o software.
● ( ) CERTO ( ) ERRADO
Desenvolvimento(Questão): Sobre as características de modelos de ciclo de vida, o Modelo Espiral é baseado em ambientes físicos altamente estruturados, em que depois de uma ação as mudanças são proibitivamente caras, se não impossíveis.
● ( ) CERTO ( ) ERRADO
Desenvolvimento(Questão): O conceito de sprint aplica-se ao modelo ágil do processo de engenharia de software denominado XP.
● ( ) CERTO ( ) ERRADO
Testes
TestesTestes: Possibilita a detecção de erros, criando a oportunidade para aperfeiçoamento do software.
TestesFontes de Erros: Erros podem ser causados, por exemplo, por:
● Especificação errada e/ou incompleta dos requisitos;● Requisitos impossíveis;● Implementação errada/incompleta;● Mau desenho do sistema;● Técnica de desenvolvimento inadequada;● Erros de programação;● Interface pouco clara/inadequada, etc.
TestesAtributos qualitativos: a avaliar quanto à capacidade do Sistema de:
● Funcionalidade● Confiabilidade● Usabilidade● Eficiência● Manutenibilidade● Portabilidade
TestesFases de Teste
● Teste Unitário● Teste de Módulo● Teste de Integração● Teste de Sistema● Teste de Regressão● Teste de Aceitação
TestesTeste Caixa-Branca: É baseado em um exame rigoroso do detalhe procedimental, no qual caminhos lógicos internos ao software e colaborações entre componentes são testados. Procura exercitar todas as partes do código de um sistema.
● Teste de Caminho Básico: permite ao projetista de casos de teste originar uma medida da complexidade lógica de um projeto procedimental.
● Teste de Caminhos Independentes: consiste em exercitar, a cada novo teste, partes do software ainda não cobertas em testes anteriores.
TestesTeste Caixa-Preta: Refere-se a testes que são conduzidos na interface do software. Também chamado “teste funcional”, testa o sistema do ponto de vista do usuário, isto é, não considera a estrutura interna ou a forma de implementação do sistema.
Testes(Questão): Na fase de testes, aquele responsável por verificar as interfaces entre as partes de uma arquitetura de um produto é o teste de unidade.
● ( ) CERTO ( ) ERRADO
Testes(Questão): Teste de software que procura descobrir erros por meio da reaplicação parcial dos testes a um programa modificado é chamado de teste de regressão.
● ( ) CERTO ( ) ERRADO
Testes(Questão): Para se assegurar que o sistema opere com a carga necessária, são realizados testes de desempenho em que se aumenta progressivamente a carga até que se possa definir se o desempenho do sistema está aceitável.
● ( ) CERTO ( ) ERRADO
Testes(Questão): Um cliente solicitou que fosse utilizada uma técnica de teste de software denominada caminhos independentes. A filosofia básica dessa técnica de teste é exercitar todos os valores limites dos domínios de cada variável.
● ( ) CERTO ( ) ERRADO
Testes(Questão): Ao adotar uma abordagem “top-down”, o executor de teste deve concentrar-se inicialmente no teste “caixa-branca”, que parte de uma visão externa do sistema.
● ( ) CERTO ( ) ERRADO
Implantação e Treinamento
Implantação e TreinamentoImplantação: Uma vez aprovado nos testes, o sistema deverá ser implantado, ou seja, colocado em produção (para uso efetivo).
Implantação e TreinamentoTreinamento: Consiste em apresentar aos usuários o novo sistema e auxiliá-los nos procedimentos que cada um deverá realizar.
Manutenção, Gestão e Avaliação
Manutenção, Gestão e AvaliaçãoManutenção: Processo de aplicar mudanças aos sistemas durante a sua vida útil, de acordo com as necessidades da organização e/ou dos utilizadores.
Manutenção, Gestão e AvaliaçãoManutenção: Tipos de Manutenção:
● Evolutiva● Adaptiva● Corretiva● Preventiva
Manutenção, Gestão e AvaliaçãoGestão: Acompanhar e garantir que o software está sendo utilizado de maneira correta pelos operadores.
Manutenção, Gestão e AvaliaçãoAvaliação: Busca medir/descrever os resultados obtidos.
Manutenção, Gestão e Avaliação(Questão): Nas etapas de desenvolvimento de um software, um dos tipos de mudanças que são encontradas durante a fase de manutenção é a adaptação.
● ( ) CERTO ( ) ERRADO
Sistemas e ProgramaçãoProf. Renato Rondon
Revisão Aula 1● Sistemas● Sistemas de Informação● Levantamento de Requisitos● Desenvolvimento● Testes● Implantação● Treinamento● Manutenção● Gestão● Avaliação
Programação
ProgramaçãoAlgoritmo: Conjunto das regras e procedimentos lógicos perfeitamente definidos que levam à solução de um problema em um número finito de etapas.
● Entrada (dados solicitados)● Processamento (dos dados, objetivando um resultado)● Saída (resultado).
Simulação
ProgramaçãoPrograma de Computador: É um conjunto de instruções ou regras que o computador deve executar de modo a realizar determinadas tarefas.
Simulação
ProgramaçãoVariáveis: Uma variável em um programa é uma abstração de uma célula ou de um conjunto de células da memória de computador.
Simulação
ProgramaçãoOperadores
● Aritméticos● Atribuição● Relacionais● Concatenação● Lógicos
Simulação
ProgramaçãoEstrutura Condicional
● Se (if)● Senão (else)
Simulação
ProgramaçãoEstrutura de Repetição
● Faça Para (for)● Enquanto Faça (while)● Repita Até (do while)
Simulação
ProgramaçãoFunções
Simulação
Programação(Questão) Considere o programa a seguir, utilizando uma linguagem hipotética: A lógica do programa está correta e, quando executado, ele apresentará o seguinte resultado: True!
if 5 > 2{
print("True!")}
● ( ) CERTO ( ) ERRADO
Programação(Questão) Considere o programa a seguir, utilizando uma linguagem hipotética: Quando executado, ele apresentará o seguinte resultado: "C", "A", "S", "A"
letras = ["C", "A", "S", "A"]for x in letras{
print(x)}
● ( ) CERTO ( ) ERRADO
Programação(Questão) Em um programa construído na linguagem C# da plataforma Microsoft .NET, um Auditor se deparou com uma condição if(x && y), em que x e y são valores booleanos (bool). Na instrução if,
● (A) caso x seja false, y não será avaliado.● (B) tanto x quanto y serão sempre avaliados.● (C) caso y seja true, x não será avaliado.● (D) somente x será avaliado.● (E) somente y será avaliado.
Programação(Questão) A linguagem escolhida pela equipe de TI foi C#.NET. Nesta linguagem, os operadores lógicos condicionais E e OU e o operador de desigualdade (diferença) devem ser escritos, respectivamente, utilizando-se
● (A) and, or e unlike● (B) &&, || e !=● (C) .and., .or. e .unlike● (D) ||, && e <>● (E) |, & e <>
Programação(Questão) a respeito das variáveis e constantes, utilizadas em diversas linguagens de programação, o número de constantes deve ser menor ou igual ao número de variáveis em um programa.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Em programação, o comando while executa um bloco de comandos enquanto sua condição for verdadeira.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Em programação, o comando while é idêntico ao comando do while.
● ( ) CERTO ( ) ERRADO
Programação
ProgramaçãoProgramação Estruturada: A programação estruturada é caracterizada pelos seguintes conceitos:
● Sequência● Seleção● Iteração
ProgramaçãoFunção Recursiva: Uma função que pode chamar a si própria é chamada função recursiva. Um critério de parada vai determinar quando a função deverá parar de chamar a si mesma. Isso impede que a função entre em loop.
ProgramaçãoProgramação Funcional: Enfatiza a aplicação de funções.
ProgramaçãoProgramação Orientada a Objeto: Em uma Aplicação Orientada a Objetos podem existir múltiplas instâncias de uma mesma classe. Os serviços que podem ser solicitados a um objeto são definidos pelos métodos.
● Construtor: Em programação Orientada a Objetos, o uso de um método construtor permite que se atribua valores iniciais aos atributos de uma classe quando esta é instanciada.
Simulação
ProgramaçãoPython: Criada sob o ideal de "Programação de Computadores para todos": Liberdade, Disponibilidade e Produtividade.
● Linguagem de altíssimo nível● Orientada a objeto● Tipagem dinâmica e forte● Interpretada● Interativa
ProgramaçãoR: Linguagem estatística usada para análise de dados. Utilizada por cientistas, estatísticos e analistas de dados.
ProgramaçãoEstruturas de dados
● Lista● Fila● Pilha● Mapa● Árvore
Programação(Questão) A programação estruturada é caracterizada pelos seguintes conceitos: objeto, função e interação.
● ( ) CERTO ( ) ERRADO
Programação(Questão) O uso de funções é desaconselhável no desenvolvimento estruturado, pois quebram a seqüência lógica da programação linear, objetivo principal deste modelo de desenvolvimento.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Considere o algoritmo a seguir que define a função “f”. Pode-se dizer que a função “f” é uma função recursiva.
função f (n) {se n igual a 1 então retorne 0se n igual a 2 então retorne 1retorne f(n-1) + f(n-2)
}
● ( ) CERTO ( ) ERRADO
Programação(Questão) Em uma Aplicação Orientada a Objetos podem existir múltiplas instâncias de uma mesma classe.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Em Programação Orientada a Objetos deve existir um e somente um objeto de uma mesma classe.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Na Programação Orientada a Objetos, quem define os serviços que podem ser solicitados a um objeto são os atributos.
● ( ) CERTO ( ) ERRADO
Programação(Questão) a definição dos objetos deve ser obrigatoriamente definida no corpo do construtor.
● ( ) CERTO ( ) ERRADO
Programação(Questão) O método utilizado para inicializar objetos de uma classe quando estes são criados é denominado
● (A) void.● (B) interface.● (C) agregação.● (D) composição.● (E) construtor.
Programação(Questão) Com respeito a compiladores e interpretadores é correto afirmar que
a) o programa interpretado necessita do interpretador no momento de sua execuçãob) o compilador executa o programa-fonte à medida que o traduzc) geralmente, um programa interpretado é mais eficiente que um programa compiladod) o programa compilado necessita do compilador no momento de sua execuçãoe) o interpretador traduz o programa-fonte em código executável
Programação(Questão) Considere o programa a seguir, na linguagem Python.
if 5 > 2{print("True!")}
A sintaxe do programa está correta e, quando executado, ele apresentará o seguinte resultado. True!
● ( ) CERTO ( ) ERRADO
Programação(Questão) Considere o seguinte código, escrito na linguagem C#Assinale a alternativa quepreenche corretamente alacuna no código, de modoa fazer com que a execuçãodo método Main() imprimatodos os elementos do array lista.
● a. ( ) valor : lista[]● b. ( ) int valor = lista[]● c. ( ) valor : int in lista● d. ( ) valor in int[] lista● e. ( ) int valor in lista
Programação(Questão) Em uma lista circular o ponteiro anterior do início da lista aponta para ele mesmo, da mesma forma que o ponteiro próximo do fim da lista também aponta para ele mesmo.
● ( ) CERTO ( ) ERRADO
Programação(Questão) Uma fila é uma lista de informações com operações especiais de acesso. O acesso aos elementos da fila é feito pela extremidade oposta à da inserção, ou seja, o elemento disponível estará sempre na extremidade oposta à da inserção. Esta regra é também conhecida como LIFO (Last In First Out).
● ( ) CERTO ( ) ERRADO
Programação Web
Programação WebMVC: Padrão de projeto no desenvolvimento do software.
● Model (Modelo)● View (Visão)● Controller (Controle)
Simulação
Programação Web.NET Framework: Plataforma de desenvolvimento para criar aplicativos para web, Windows, Windows Phone, Windows Server e Microsoft Azure. Ele consiste no Common Language Runtime (CLR) e na biblioteca de classes do .NET Framework, que inclui uma ampla gama de recursos e suporte para muitos padrões do setor.
● Você pode usar diferentes linguagens de programação com o .NET Framework, incluindo C#, F# e Visual Basic.
* Fonte (https://docs.microsoft.com)
Programação WebWeb Service: é um componente de software armazenado em um computador que pode ser acessado por um aplicativo em outro computador por uma rede.
● Web Services se comunicam utilizando tecnologias como XML, JSON e HTTP.
● O SOAP permite que Web Services e clientes escritos em linguagens diferentes se comuniquem.
● Um Web Service RESTful pode retornar dados utilizando texto sem formatação.
Programação Web(Questão) Considere que a equipe de TI adotou o MVC como padrão de projeto no desenvolvimento do software. Nesse padrão, as classes da aplicação que acessam o banco de dados são representadas no componente
● (A) Controller.● (B) View.● (C) Model.● (D) Access.● (E) Business.
Programação Web(Questão) HTML é uma linguagem declarativa utilizada para criação de páginas e exibição de textos na Internet. As páginas HTML executam no servidor, e não no cliente, e é o próprio servidor que transforma os scripts HTML em ASP, permitindo assim que qualquer browser seja capaz de acessar essas páginas.
● ( ) CERTO ( ) ERRADO
Programação Web(Questão) A .NET Framework trata-se de uma arquitetura da estratégia Microsoft .NET para construir, implementar e executar aplicações e webservices.
● ( ) CERTO ( ) ERRADO