A Engenharia de Software
Por: ilarts • 28/8/2019 • Resenha • 1.675 Palavras (7 Páginas) • 168 Visualizações
4. Métodos de Engenharia de Software
Métodos de engenharia de software fornecem um e abordagem sistemática para o desenvolvimento de software para um computador de destino. Existem numerosos métodos de escolha, e é importante
para o engenheiro de software escolher um método ou métodos para o desenvolvimento de software
tarefa em mãos; esta escolha pode ter um efeito dramático sobre o sucesso do projeto de software. Uso destes métodos de engenharia de software juntamente com pessoas do conjunto de habilidades e ferramentas certas permitem que o software engenheiros para visualizar os detalhes do software e, finalmente, transformar a representação em um conjunto de trabalho de código e dados.
4.1. Métodos heurísticos
Métodos heurísticos são aqueles baseados na experiência métodos de engenharia de software que foram e são amplamente praticados na indústria de software.
Esta área tem três discussões amplas categorias: análise estruturada e design métodos, métodos de modelagem de dados e análise e métodos de design.
• Análise Estruturada: O modelo de software é desenvolvido principalmente do ponto de vista funcional ou comportamental, a partir de uma visão de alto nível do software (incluindo dados e elementos de controle) e então progressivamente decompondo ou refinando os componentes do modelo através de projetos detalhados. O projeto detalhado finalmente converge para detalhes muito específicos ou especificações do software que deve ser codificado (manualmente, gerado automaticamente ou ambos), construídos, testados e verificados.
• Métodos de Modelagem de Dados: O modelo de dados é construído do ponto de vista dos dados ou informações utilizadas. Tabelas de dados e relacionamentos definir os modelos de dados. Esta modelagem de dados método é usado principalmente para definir e analisando os requisitos de dados que suportam projetos de banco de dados ou repositórios de dados normalmente encontrado em software de negócios, onde dados é ativamente gerenciado como um sistema de negócios recurso ou ativo.
• Análise Orientada a Objetos : O modelo orientado a objeto é representado como uma coleção de objetos que encapsulam dados e relacionamentos e interagir com outros objetos através de métodos. Objetos podem ser itens do mundo real ou itens virtuais. O software modelo é construído usando diagramas para constituir visões selecionadas do software. Refinamento progressivo dos modelos de software leva a um design detalhado. O detalhado design é então evoluído através de sucessivos
iteração ou transformada (usando alguns mecanismo) na visualização da implementação do modelo, onde o código e embalagem abordagem para eventual produto de software release e implantação são expressos.
4.2. Métodos Formais
Métodos formais são métodos de engenharia de software usado para especificar, desenvolver e verificar o software através da aplicação de um rigoroso matematicamente notação e linguagem baseadas. Através do uso de uma linguagem de especificação, o modelo de software pode ser verificado quanto à consistência (em outras palavras, falta de ambigüidade), integridade e correção
de forma sistemática e automatizada ou semi-automatizada moda. Este tópico está relacionado com a Análise Formal seção no Software Requirements KA.
Esta seção trata de idiomas de especificação, refinamento e derivação do programa, verificação formal, e inferência lógica.
• Especificação de Idiomas: Especificação línguas fornecem a base matemática por um método formal; linguagens de especificação são formais, computador de nível superior línguas (em outras palavras, não um clássico Programação de 3ª geração de linguagem (3GL) idioma) usado durante o software especificação, análise de requisitos e / ou projetar etapas para descrever uma entrada específica / comportamento de saída. Idiomas de especificação são não diretamente idiomas executáveis; eles sãotipicamente composto de uma notação e sintaxe, semântica para uso da notação e um conjunto de relações permitidas para objetos.
• Refinamento e Derivação do Programa: Programa refinamento é o processo de criação de um especificação de nível inferior (ou mais detalhada) usando uma série de transformações. É através
sucessivas transformações que o software engenheiro deriva uma representação executável de um programa. Especificações podem ser refinados, adicionando detalhes até que o modelo possa ser formulado em uma linguagem de programação 3GL ou em uma parte executável da especificação escolhida língua. Este refinamento de especificação é tornada possível pela definição de especificações com propriedades semânticas precisas; as especificações deve definir não só as relações entre entidades, mas também os significados exatos de tempo de execução de esses relacionamentos e operações.
• Verificação formal: a verificação do modelo é um método de verificação formal; normalmente
envolve a realização de uma exploração do espaço de estado ou análise de alcance para demonstrar
que o design de software representado tem ou preserva certas propriedades de modelo de interesse.
Um exemplo de verificação de modelo é um análise que verifica o comportamento correto do programa sob toda a intercalação possível de evento ou chegada de mensagens. O uso de verificação formal requer um modelo rigorosamente especificado do software e seu ambiente operacional; este modelo muitas vezes assume a forma de um máquina de estados finitos ou outros formalmente definidos autômato.
4.3. Métodos de prototipagem
A prototipagem de software é uma atividade que geralmente cria versões incompletas ou minimamente funcionais de um aplicativo de software, geralmente para tentar novos recursos específicos, solicitando feedback em requisitos de software ou interfaces de usuário, explorando requisitos de software, software opções de design ou implementação e / ou algumas outras informações úteis sobre o software. O engenheiro de software seleciona um método de prototipagem para compreender os aspectos ou componentes menos compreendidos do software primeiro; esta abordagem está em contraste com outros métodos de engenharia de software que geralmente começam o desenvolvimento com o mais compreendido porções primeiro. Normalmente, o protótipo produto não se torna o software final produto sem retrabalho de desenvolvimento extensivo ou refatoração.
...