Desenvolvimento de Software
Tipo de documento:TCC
Área de estudo:Lingua Portuguesa
Os usuários dos softwares não conseguem enxergar os códigos somente o software em si, tendo em vista que as instruções serão traduzidas pela tela do equipamento eletrônico e apresentada de forma diferente e materializada em ações em determinados tipos de aparelhos. Os desenvolvedores de softwares são os programadores, ou seja, os desenvolvedores são os responsáveis por escreverem o programa a partir dos códigos. Desta forma este trabalho demonstrará todos os requisitos que são necessários para o desenvolvimento de um software. Palavras chave: Algoritmos. Programação Orientada a Objetos. Databases. Software. LISTA DE FIGURAS Figura 1 - Escrevendo um Algoritmo 14 Figura 2 - Desenho de um Algoritmo 15 Figura 3 - Fluxograma de um Algoritmo 16 Figura 4 - Variável em C 17 Figura 5 - Definição de uma Classe 18 Figura 6 - Classe e Objetos 20 Figura 7 - Atributos 20 Figura 8 - Métodos 21 Figura 9 - Herança 21 Figura 10 - Herança 22 Figura 11 - Polimorfismo 23 Figura 12 - Encapsulamento 24 Figura 13 - Bancos de Dados 25 Figura 14 - Sistema Gerenciador de Bancos de Dados 25 Figura 15 - Atributos e Tuplas 26 Figura 16 - SGBD 30 Figura 17 - Redundância 31 Figura 18 - Independência de Banco de Dados 32 Figura 19 - Gestão de Riscos – ISSO 27001 34 Figura 20 - Segurança da Informação 36 Figura 21 - Ciclo PDCA 38 Figura 22- Criptografia 38 Figura 23 - Engenharia de Software 40 Figura 24 - Diagrama de Caso de uso 41 Figura 25 - Diagrama de Atividades 42 Figura 26 - Interação com o Usuário 43 SUMÁRIO 1.
INTRODUÇÃO 8 2. DESENVOLVIMENTO 9 2. Estruturas de controle dos algoritmos 13 2. Desenhando Algoritmos 14 2. Variáveis 15 2. Tipos de Variáveis 17 2. Programação Orientada a Objetos 17 2. Benefícios do Encapsulamento 24 2. BANCOS DE DADOS 24 2. BANCO DE DADOS RELACIONAL 26 2. Aspecto Estrutural 26 2. Características e Principais Bancos de Dados Relacionais 26 2. Recuperação e Backup 33 2. Política de Segurança de Dados 34 2. Criação de uma Política de Segurança de Dados 35 2. Vantagens das Políticas de Segurança de Dados 35 2. Implementação da Política de Segurança da Informação 36 2. O software nada mais e que um programa para acesso a celulares, tablets, computadores ou qualquer outro dispositivo eletrônico. O primeiro registro de desenvolvimento de software foi registrado no século XIX, tendo como primeira programadora Ada Lovelace, ela escreveu num algoritmo que permitia a uma máquina analítica realizar cálculos em uma sequência que ficou conhecida como sendo números de Bernoulli.
O primeiro software foi desenvolvido apenas na década de 1940, através de um trocadilho com o termo hardware, ou seja foi retirado a parte Hard que quer dizer rígido para Soft, que significa macio, o software então seria tudo aquilo que não está ligado a parte física de um dispositivo. De uma forma geral e baseando-se nos objetivos, os softwares podem ser divididos em duas categorias, sendo elas: os softwares de sistema e os softwares aplicativos. Desta forma um software de sistema é o responsável pelo gerenciamento dos hardwares de um determinado dispositivo, assim ele é o responsável por oferecer as funcionalidades básicas que são exigidas pelos usuários ou por outros softwares. p. O desenvolvimento de softwares passa por algumas etapas, sendo elas: • Diagnóstico; • Concepção; levantamento e analise dos requisitos; • Desenvolvimento; e • Manutenção.
Não serão todas as etapas que servirão ou serão necessárias para o desenvolvimento do projeto, é necessário que sejam verificados alguns fatores, tais como: • O tamanho da equipe; • O tamanho da empresa; • O tempo; • O orçamento; e • A validação de quais passos são mais importantes tanto para os clientes como para os usuários. Fases do Desenvolvimento de Software 2. Diagnóstico A primeira etapa para o desenvolvimento de um software é o diagnóstico, ou seja, é o primeiro contato com o problema, para isso é necessário que um time de tecnologia e comercial conhecer de forma detalhada o seu cliente e seu problema para desta forma extrais o máximo de informações para um melhor aproveitamento para as próximas etapas do desenvolvimento de software, para isso é importante realizar a extração: • Da origem do problema; • Das particularidades da situação atual do problema; • Dos prazos estipulados; • Das principais exigências que são geradas pelo problema; • Da abrangência do problema bem como da solução; • Das disponibilidades do orçamento para a solução; e • Das urgências para a resolução bem como para a entrega do projeto.
Manutenção Após a realização da entrega da implementação do produto ser finalizado, tem início um período de manutenção do produto, ou seja, da realização dos ajustes no sistema, para que sejam corrigidos os bugs o as modificações para uma melhor experiência dos usuários e dos clientes. BASE PARA O DESENVOLVIMENTO DE SOFTWARE 2. Algoritmos Os algoritmos podem ser definidos como sendo a base do processo de desenvolvimento de um software, eles fazem parte das ferramentas que os programadores utilizam par a criação das estratégias para fracionar os problemas em etapas e processo que pode ser traduzido computacionalmente. Desta forma a tradução computacional e um algoritmo é encarregado de testar os componentes do computador para detectar se tudo está em ordem e após isso encontrar um sistema operacional no disco para carrega-lo.
GARRET, 2020, P. Fonte: Unicamp As estruturas interativas correspondem ao desenho do ciclo em um diagrama de fluxo. Variáveis Variáveis podem ser definidas como sendo o armazenamento dos dados de uma forma simples, o valor de uma variável pode ser modificado durante o andamento do algoritmo, por isso recebe o nome de variável. WESLEY GADO, 2021, P. Fonte: Wesley Gado (2021, p. Na figura acima na variável num 1 foi adicionado o valor numérico 3 e na num2 foi adicionado o valor numérico 8, e para a variável soma foi adicionado o valor do cálculo. RICARTE, 2002, P. Fonte: Marcos cesár Silva (2021, p. Atributos e Métodos 2. Atributos Atributos são as variáveis das classes, são os locais onde as informações sobre a classe são guardadas, desta forma na criação de um objeto a partir de uma determinada classe, os atributos passam a conter as informações especificas assumindo desta forma os estados especiais.
Os atributos são denominados como públicos ou privados. Polimorfismo O polimorfismo se apresenta sob diversas formas: • Pela capacidade de uma classe poder se instanciar através de diferentes classes em tempo de execução; e • Pela habilidade de oper4ar de forma automática para se ad4equaresm aso objetos aos quais estão sendo aplicadas (MEYER) Figura 11 - Polimorfismo Fonte: Fonte: Santanche & Rojas (2015, p. Encapsulamento Encapsulamento pode ser definido como sendo o processo de esconder todos os detalhes pertencentes a um objeto, que não contribuem para as características essenciais, ele pode ser entendido como sendo um princípio que pé utilizado no desenvolvimento de uma estrutura geral de um programa em que cada componente de um programa devera encapsular cada uma das decisões de um projeto.
O encapsulamento tem a capacidade de esconder os detalhes de implementação do objeto, ou seja, seus métodos, deixando visível somente a sua interface, desta forma quando um objeto é encapsulado, os detalhes de sua implementação não são mais acessíveis, eles são empacotados e são acessíveis somente através da interface do objeto. Um objeto encapsulado somente poderá ser acessado através da troca de mensagens. Fonte: Peter Jandl (2018, p. os modelos relacionais possuem três aspectos principais dos dados, sendo eles a estrutura de dados, a integridade de dados e a manipulação dos dados. Aspecto Estrutural O banco de dados no modelo relacional é representado como sendo um conjunto de relações, cada uma das relações é similar a uma tabela de valores, o modelo relacional é formado por linhas, que são denominadas de tuplas, de colunas, de atributos, a tabela em si e a relação (ELMASRI; NAVATHE, 2011, P.
Fonte: ELMASRI; NAVATHE, 2011, p. Características e Principais Bancos de Dados Relacionais Os bancos de dados relacionais são denominados de bancos de dados Structured Query Language (SQL), devido a sua linguagem de programação, que é utilizada para criação, para relacionar, recuperar, editar, consultar e excluir as informações que são armazenadas no repositório e realiza a operacionalização da gestão de dados nas tabelas. As tabelas são organizadas através de critérios predeterminados e permitem assim a padronização dos repositórios de maneira a facilitar a consulta dos usuários e a determinação de padrões e de tendências entre os dados que são semelhantes. As permissões podem ser dadas para um grupo ou para um usuário em especifico, quando as permissões são dadas a grupos todos as pessoas que estão nesse grupo tem o mesmo nível de acesso, desta forma o administrador do banco de dados cria um nome para o grupo, as permissões podem ser: • Somente leitura; • Leitura e alteração de dados; e • Controle total.
O sistema gerenciador de banco de dados é definido como uma coleção de programas para acesso aos dados, possuindo como objetivos e funções proporcionar um ambiente eficiente para recuperação e armazenamento de informações, ele é projetado para realizar o armazenamento de um grande volume de dados. O sistema gerenciador de banco de dados é um sistema compartilhado, desta forma é necessário ter um controle sobre o que os usuários podem ou não acessar, o sistema gerenciador de banco de dados proporciona aos usuários uma visão mais abstrata dos dados, assim ele esconde detalhes referentes a certos dados através das configurações de definições de níveis. O acesso a SGBD deve verificar se o acesso do usuário e permitido ou não, conforme demonstra a figura 7.
DICAS DE PROGRAMAÇÃO). DEVMEDIA) Fonte: Aimetis Assim a redundância de dados torna-se a principal forma para proteção de dados utilizados pelas empresas, tendo em vista que a utilização de sistemas é um fator de extrema importância para os negócios. Os Backups não são totalmente seguros desta forma a redundância dos dados oferece uma maior segurança para as empresas. BLUDATA). Independência dos Dados Independência de dados é uma imunidade das aplicações referente as mudanças na estrutura de armazenamento e estratégias de acesso. A independência dos dados é de extrema importância. A recuperação e o backup é uma forma de realizar a restauração dos dados ao seu estado anterior. Assim o backup diário garante uma maior segurança ao banco de dados.
O responsável pela realização do backup deverá realizar a formatação dos dados mais antigos deixando-o livre dentro do servidor do backup. Desta forma em um horário definido inicia-se a cópia dos arquivos, após o termino da operação o responsável retira a fida do local. O backup de todo o banco é realizado somente no final de semana, geralmente aos sábados por ser mais demorado, ele funciona da mesma maneira do backup feito diariamente, no entanto ele é maior e por isso demora mais para ser finalizado. Confidencialidade: são certificados de que os dados estão disponíveis para pessoas autorizadas e não para estranhos. Quando ocorre a violação deste princípio as empresas sofrem grandes prejuízos como: vazamento de informações sigilosas, roubo de dados de clientes, quando isto ocorre a empresa perde a credibilidade e deve arcar com sanções judiciais; Integridade: garante a inviolabilidade das informações, desta forma os dados não serão modificados, alterados ou destruídos, impedindo também a fraude de dados, que é uma das maiores ameaças virtuais para as empresas; e Disponibilidade: garante a ininterrupção aos dados, ela é essencial, tendo em vista que a queda do sistema, mesmo que seja por alguns minutos gera altos custos para a empresa, pois congela os serviços impedindo assim a realização de negócios importantes.
ARQUIVAR). Fonte: Vinicius Serafim A utilização de softwares auxilia no levantamento dos dados que são necessários para criação de políticas e no diagnostico, no planejamento, na implantação e na atualização constante da política da informação. A gestão eletrônica de documentos permite rastreabilidade, livre acesso, qualidade e prestação de contas de todos os dados. Criptografia A criptografia pode ser entendida como sendo a conversão de dados de um formato legível em um formato que está codificado, os dados criptografados só podem ser lidos ou até mesmo processado após serem descriptografados. A criptografia é fundamento para a segurança dos dados, é a forma mais simples e importante para garantir as informações dos sistemas computacionais, impedindo que estes sejam roubados e lidos por alguém que pode utiliza-los para fins maliciosos Fonte: Rafael Guimarães Sakurai Os softwares utilizados pela criptografia são conhecidos como algoritmos de criptografia ou por codificação, eles são utilizados para o desenvolvimento de um esquema de criptografia que pode ser desvendado somente através de uma grande capacidade de processamentos.
ENGENHARIA DE SOFTWARE Engenharia de software pode ser entendida como uma área do conhecimento da informática voltada para a especificação, para o desenvolvimento e para a manutenção dos sistemas de software aplicando as tecnologias e as práticas das ciências da computação, da gerencia de projetos, que tem como objetivo a organização, a produtividade e a qualidade. A engenharia de software desenvolve mecanismos para o planejamento e gerenciamento dos processos de desenvolvimento. De acordo com Friedrich Ludwing Baues, “a engenharia de software é a criação e a utilização de sólidos princípios da engenharia para obtenção de software de maneira econômica, que seja confiável e que trabalhe eficientemente em maquinas reais”. Interface com o Usuário A interface com o usuário é a principal parte de um software, é a parte visível para o usuário através da qual ele pode se comunicar e realizar tarefas.
A interface com o usuário fornece a interação entre pessoa computadores de uma forma mais amigável possível, ela deve ser de fácil entendimento e fornecer sequencias simples e constantes de interação demonstrando alternativas disponíveis a cada um dos passos da interação fornecendo segurança ao usuário. Fonte: Marcelo Ramos 3. CONCLUSÃO O desenvolvimento de software passa por diversas etapas, toda elas são de extrema importância para que o software que está sendo desenvolvido possa oferecer as funcionalidades que foram planejadas, desta forma a observação de todos os requisitos que são necessários para o desenvolvimento do software são de trema importância. Outro requisito indispensável para o desenvolvimento de um software é a segurança deste sistema, tendo em vista que diante dos avanços tecnológicos, os sistemas acabam se tornando cada vez mais instáveis, a utilização de sistema que possa oferecer segurança para os dados e informações é essencial para o desenvolvimento de softwares.
cbsi. net. br/2014/02/progrmacao-orientada-a-objetos-uma. html. Acesso em: 20 de out. macoratti. net/oo_conc2. htm. Acesso em: 23 de out. DICAS DE PROGRAMAÇÃO. GIL, Antônio Carlos. Como elaborar projetos de pesquisa. ed. São Paulo: Atlas, 2010. p JUNIOR. htm. Acesso em: 23 de out de 2021. TECNOPODE. Encapsulamento. Disponível em: http://tecnopode. Acesso em: 24 e out de 2021. TREINAWEB. Variáveis e constantes. Disponível em; https://www. treinaweb. Acesso em: 22 de out de 2021. UNICAMP. POO. Disponível em: https://www. dca. html. Acesso em: 20 de out de 2021.
100 R$ para obter acesso e baixar trabalho pronto
Apenas no StudyBank
Modelo original
Para download
Documentos semelhantes