Valor
O trabalho tem peso de 1,00 (um) ponto na nota semestral A2.
Quantidade de alunos
O trabalho deve pode ser desenvolvido em duplas (2 alunos) ou trios (3 alunos).
Especificação da entrega
- A entrega deve acontecer até a data estipulada no Blackboard;
- Somente um membro da equipe deve entregar o projeto identificando com os nomes completos todos os membros da equipe;
- A entrega é composta por um arquivo .zip (ou o link do repositório GIT), contendo:
- Identificação dos membros da equipe;
- O código do sistema desenvolvido;
- Um arquivo com o link para um vídeo de no máximo 10 minutos, demonstrando todas as funcionalidades do projeto, explicando o código e como os conteúdos abordados na disciplina foram aplicados. A participação de todos os membros do grupo é obrigatória. A ausência de qualquer integrante no vídeo resultará em penalização da nota desse membro específico.
- A nota será composta da seguinte forma: (Requisitos Cumpridos - Requisitos Não Cumpridos) * %Vídeo;
Introdução
- Uma aplicação de software, também conhecida como programa de computador ou aplicativo, é um conjunto de instruções e dados projetados para realizar uma tarefa específica em um computador ou dispositivo digital. Essas tarefas podem variar amplamente, desde processamento de texto, reprodução de mídia, cálculos matemáticos, comunicação online, jogos, gerenciamento de dados, aplicações comerciais, entre muitos outros. As aplicações de software são criadas por desenvolvedores de software usando linguagens de programação e ferramentas de desenvolvimento. Elas são projetadas para serem executadas em sistemas operacionais e podem ser instaladas em um computador, smartphone, tablet ou outro dispositivo digital. As aplicações de software desempenham um papel fundamental em quase todos os aspectos de nossas vidas digitais. Elas podem ser usadas para melhorar a produtividade, entretenimento, comunicação, educação, automação de processos e muito mais. A variedade de aplicativos disponíveis é vasta e continua a crescer à medida que novas necessidades e tecnologias surgem.
- Uma aplicação de software comercial ou voltada para negócios é um tipo de software desenvolvido com o objetivo principal de atender às necessidades das empresas e organizações. Essas aplicações são projetadas para auxiliar empresas em várias atividades comerciais, gerenciamento de recursos, tomada de decisões e automação de processos. Essas aplicações são essenciais para melhorar a eficiência operacional, aumentar a produtividade e apoiar o crescimento das empresas. Elas são desenvolvidas com foco na usabilidade, segurança e integração com outros sistemas empresariais.
- As aplicações de software comercial abrangem uma ampla gama de funcionalidades e setores, incluindo:
- Software de Contabilidade e Finanças: Aplicativos projetados para ajudar empresas a gerenciar suas finanças, incluindo contabilidade, folha de pagamento, faturamento e controle de despesas.
- Software de Gerenciamento de Recursos Humanos (RH): Aplicativos que auxiliam na gestão de pessoal, como recrutamento, treinamento, avaliação de desempenho e gestão de benefícios.
- Software de Gestão de Projetos: Ferramentas que ajudam a planejar, executar e controlar projetos, permitindo o acompanhamento do progresso e a colaboração entre equipes.
- Software de Gerenciamento de Relacionamento com o Cliente (CRM): Aplicativos que ajudam empresas a gerenciar relacionamentos com clientes, rastrear vendas, atendimento ao cliente e campanhas de marketing.
- Software de Gestão de Inventário e Cadeia de Suprimentos: Ferramentas para o gerenciamento eficiente de estoques, controle de produção e logística.
- Software de Gestão de Documentos e Colaboração: Plataformas que facilitam o compartilhamento, armazenamento e colaboração em documentos e informações.
- Software de Automação de Marketing: Ferramentas para automatizar campanhas de marketing, análise de dados e personalização de mensagens.
- Software de Planejamento de Recursos Empresariais (ERP): Sistemas integrados que abrangem várias funções empresariais, como finanças, recursos humanos, vendas e estoque.
- Software de Gestão de Projetos de TI: Aplicativos projetados para gerenciar projetos de tecnologia da informação, incluindo desenvolvimento de software e implantação de sistemas.
Objetivo
- O presente trabalho tem como objetivo a utilização de todos os conceitos abordados na disciplina no decorrer do semestre, visando a construção de uma aplicação parcial em Linguagem C com o intuito de criar uma aplicação comercial que possibilite ao utilizadores as funcionalidades descritas nos itens a seguir;
- O tema/abrangência é de escolha da equipe, desde que contemple no mínimo os itens solicitados;
Requisitos de Funcionalidade
- A aplicação deve contar com as seguintes funcionalidades:
- Cadastrar um novo cliente com todas as particularidades que o ramo de atuação exigir;
- Listar todos os clientes de forma ordenada (numérica ou alfabética) a ser escolhida pelo operador;
- Consultar um cliente a partir do CPF cadastrado, listando todas suas informações, e sendo obrigatória a validação do CPF no momento do cadastro;
- Desativar um cliente;
- Excluir um cliente;
- Vender um serviço / realizar um pedido (a depender do tema abordado);
- Sair;
Regras de Desenvolvimento
- A aplicação deve contar com os seguintes requisitos não funcionais:
- A implementação de todo o projeto deve ser feita em linguagem C;
- Todos os clientes / transações / serviços devem ser armazenados dentro de um arquivo do tipo
.txt
;
- O aplicativo deverá conter seu menu principal para a seleção das funcionalidades;
- Cada menu deve ser impresso a partir de uma subrotina independente;
- Toda a comunicação entre as subrotinas e o programa principal deverá ser via parâmetro (por valor ou referência). Somente as estruturas (struct), os protótipos das subrotinas podem ser declaradas fora da função
main
ou de outra subrotina. Naturalmente as bibliotecas e constantes (com #define
) sempre são declaradas no início do programa antes da função main
;
- Todas as estruturas devem ser alocadas dinamicamente, assim como qualquer vetor ou matriz de tipagem normal;
- Os métodos de busca e ordenação devem ser desenvolvidos dentro da aplicação;