O Programador de Sistemas é o profissional que especifica, desenvolve, testa e implanta sistema de informação, contemplando requisitos de segurança e disponibilidade. Além disso, modela dados, documenta e faz a manutenção em sistemas.

➡️02-logica-com-blocos

Objetivo profissional

Este profissional possui um mercado de trabalho vasto e diversificado, atuando em empresas dos mais diferentes setores e segmentos e, ainda, de forma empreendedora, como autônomo prestando serviços a todas as organizações que façam uso de sistemas informatizados. Relaciona-se com equipes de desenvolvimento, outros profissionais de TI, bem como clientes e usuários de programas.

Objetivos específicos

  • Desenvolver sistemas de informação;
  • Implementar banco de dados;
  • Realizar testes e manutenção do sistema de informação.

Organização curricular

UC1: Desenvolver sistemas de informação

Carga horária: 72 horas.

Competências:

  1. Planeja o desenvolvimento do software conforme análise de requisitos.
  2. Especifica as fases do desenvolvimento de acordo com o planejamento realizado.
  3. Cria algoritmos utilizando padrões de lógica de programação.
  4. Seleciona a metodologia e a linguagem de programação para o desenvolvimento do software conforme suas funcionalidades e características.
  5. Constrói aplicação, a partir da análise de requisitos, de acordo com as funcionalidades do sistema e linguagem de programação selecionada.

Conhecimentos:

  • Sistemas de informação: conceito e tipos.Elementos da Competência
  • Regras de negócio: conceitos; tipos, características; requisitos funcionais e não funcionais.
  • Lógica de Programação: conceito de algoritmo; algoritmos estruturados.
  • Variáveis e constantes: expressões e operadores; estrutura condicional simples e
  • composta; estrutura de repetição; vetores e matrizes.
  • Ferramentas de desenvolvimento de software.
  • Desenvolvimento colaborativo: conceito e ferramentas para o desenvolvimento de sistemas.
  • Linguagem de programação orientada a objetos: classes, atributos, métodos,
  • propriedades, herança, polimorfismo, encapsulamento e ambientes de programação (IDE).
  • Planejamento: conceito, tipos de metodologias para o desenvolvimento de sistemas.

UC2: Implementar banco de dados

Carga horária: 72 horas.

Competências:

  1. Define a arquitetura de banco de dados, de acordo com a modelagem de dados.
  2. Planeja o banco de dados conforme as regras de negócio.
  3. Desenvolve estruturas de dados, de acordo com o planejamento definido.
  4. Modela o banco de dados de acordo com o planejamento definido.Indicadores
  5. Avalia a persistência dos dados gerados pelo software, verificando sua funcionalidade, conforme o planejamento definido.
  6. Operacionaliza atividades de atualização, permissões de acesso e cópias de segurança de acordo com o banco implantado.

Conhecimentos:

  • Modelagem de dados: definição, planejamento, ferramentas, levantamento de
  • requisitos, dicionário de dados, modelo de dados relacional, Modelo de Entidade e
  • Relacionamento (MER).
  • Normalização de dados: níveis e aplicabilidade.
  • Sistema Gerenciador de Banco de Dados (SGBD): conceito e arquitetura.
  • Structured Query Language (SQL) - Linguagem estruturada de consulta: scripts Data
  • DefinitionLanguage (DDL) - Linguagem de definição de dados;comandos de Data
  • ManipulationLanguage (DML) - Linguagem de manipulação de dados.
  • Gestão de dados: usuários, backup e recuperação de dados.

UC3: Realizar testes e manutenção do sistema de informação

Carga horária: 36 horas

Competências:

  1. Utiliza diferentes metodologias testes, de acordo com funcionalidade do sistema.
  2. Tabula o resultado, de acordo com as informações obtidas no teste realizado.
  3. Realiza ajustes e ações corretivas, conforme a análise do resultado coletado.

Conhecimentos:

  • Plano de teste: metodologias, especificações do teste, defeito, falha, registros de teste.
  • Controle de versão: conceito; segurança da informação; instalação e configuração.
  • Ramificação do projeto, controle de histórico, marcações, resgate e versões estáveis.
  • Política de recuperação de dados: conceito; backup e restore.
  • Ciclo de vida do sistema: planejamento de atualização e correções.

UC4: Projeto Integrador em Programador de Sistemas

Carga horária: 20 horas

  • CH presencial - 8h
  • CH não presencial - 12h

Competências:

  • Articulação das competências do curso, com foco no desenvolvimento do perfil profissional de conclusão;
  • Criação de estratégias para a solução de um problema ou de uma fonte geradora de problemas relacionada com a prática profissional;
  • Desenvolvimento de atividades em grupos realizadas pelos alunos de maneira autônoma e responsável;
  • Geração de novas aprendizagens ao longo do processo;
  • Planejamento integrado entre todos os docentes do curso;
  • Compromisso dos docentes com o desenvolvimento do Projeto no decorrer das Unidades Curriculares;
  1. Problematização:
  • definição do tema gerador, deve-se ter em vista uma situação plausível, identificada no campo de atuação profissional e que perpasse as competências do perfil de conclusão. Neste momento, são realizados
  • detalhamento do tema gerador e o levantamento das questões que nortearão a pesquisa e o desenvolvimento do projeto. As questões devem mobilizar ações que articulem as competências do curso para a resolução do problema.
  1. Desenvolvimento:
  • Organizar e estruturar um plano de trabalho. Onde são e elaborar as estratégias para atingir os objetivos e dar respostas às questões formuladas na etapa de problematização.
  • O plano de trabalho deve ser realizado conjuntamente pelos alunos e prever situações que extrapolem o espaço da sala de aula,
  • estimulando a pesquisa em bibliotecas, a visita aos ambientes reais de trabalho, a contribuição de outros docentes e profissionais, além de outras ações para a busca da resolução do problema.
  1. Síntese:
  • Organização e avaliação das atividades desenvolvidas e dos resultados obtidos.
  • É importante que a proposta de solução traga aspectos inovadores, tanto no próprio produto, quanto na forma de apresentação.

Exemplos de Proposta de Tema Gerador:

  • Demandas de organização e controle em Sistemas de Informação:
    • O desafio proposto trata-se do desenvolvimento de um módulo de um sistema para uma empresa,
    • criando uma solução para determinados problemas que necessitem de organização/controle.
    • produzir desde o levantamento de requisitos, validação do sistema até os testes finais.
  • Criação de um sistema para pessoas com deficiência:
    • aprimorar os recursos que permitam ampliar o acesso à todas as informações,
    • sejam visuais (vídeos, fotos, gráficos, tabelas, entre outros), sonoras,
    • e de compreensão de todas as informações favorecendo experiência diversas à todas as pessoas.
    • por meio de entrevista com uma ou mais pessoas com deficiência, levantar demandas e necessidades,
    • pesquisar os recursos disponíveis, produzindo uma aplicação que atenda às demandas desta população

Info

Outros Temas Geradores podem ser definidos em conjunto com os alunos, desde que constituam uma situação-problema e atendam aos 3 itens acima para a avaliação.

Bibliografia

  • XAVIER, Gley Fabiano Cardoso. Lógica de Programação. 13ª ed. Senac, São Paulo SP.
  • CORREIA, Carlos Henrique; TAFNER, Malcon Anderson. Análise Orientada a Objetos. 2. ed. Visual books, 2018.
  • MANZANO José Augusto N. G.; COSTA JÚNIOR, Roberto Affonso da. Programação de computadores com Java. Érica, 2014.
  • BATES,Bert; SIERRA,Kathy. Use a Cabeça! Java. Editora Alta Books, 2012.
  • ALVES, Willian Pereira. Banco de dados. São Paulo: Érica, 2014.
  • BEIGHLEY, Lynn. Use a Cabeça! SQL. Editora Alta Books, 2008.
  • LIGHTSTONE, Sam. Projeto e modelagem de banco de dados. Elsevier Academic, 2013.
  • ANICHE, Maurício. Testes automatizados de software: um guia prático. São Paulo: Ed. Casa do Código, 2015.
  • MOLINARI, Leonardo. Testes de software: Produzindo sistemas melhores e mais confiáveis. Érica, 2010.
  • BRAGA, P. H. C. Testes de software. São Paulo: Pearson Education do Brasil, 2016. (ebook)
  • GALOTTI, G. M. A. Qualidade de Software. São Paulo: Pearson Education do Brasil, 2016. (ebook)
  • SOMERVILLE, I. Engenharia de software. São Paulo: Pearson Education do Brasil, 2018. (ebook)