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.
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:
- Planeja o desenvolvimento do software conforme análise de requisitos.
- Especifica as fases do desenvolvimento de acordo com o planejamento realizado.
- Cria algoritmos utilizando padrões de lógica de programação.
- Seleciona a metodologia e a linguagem de programação para o desenvolvimento do software conforme suas funcionalidades e características.
- 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:
- Define a arquitetura de banco de dados, de acordo com a modelagem de dados.
- Planeja o banco de dados conforme as regras de negócio.
- Desenvolve estruturas de dados, de acordo com o planejamento definido.
- Modela o banco de dados de acordo com o planejamento definido.Indicadores
- Avalia a persistência dos dados gerados pelo software, verificando sua funcionalidade, conforme o planejamento definido.
- 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:
- Utiliza diferentes metodologias testes, de acordo com funcionalidade do sistema.
- Tabula o resultado, de acordo com as informações obtidas no teste realizado.
- 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;
1a. 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.
2a. 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.
3a. 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
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)