Engenharia de software: Engenharia de software inclui tecnologia de desenvolvimento de software e tecnologia de gestão de software, sendo uma disciplina que estuda a produção de software. Uma combinação de tecnologia de gestão e tecnologia de computadores.
Existem quatro estágios de desenvolvimento de computadores: tubos eletrônicos, transistores, circuitos integrados e circuitos integrados em grande escala
O desenvolvimento de software requer 3 processos e 8 etapas:
O primeiro processo: definição de problema, estudo de viabilidade e análise de requisitos O segundo processo: projeto geral, design detalhado, codificação, testes O terceiro processo: manutenção
Estudo de viabilidade: Esse software consegue fazer isso? Análise de requisitos: segurança e ambiente de realização
O ciclo de vida do software é de 5 a 8 anos, e o custo é recuperado em 5 anos e o lucro é obtido em 3 anos
Causas da crise de software: 1: Está relacionado às suas próprias características; 2: A pessoa que projetou o software tem um relacionamento; 3: Arquitetura de computadores, design de hardware a longo prazo, princípios de design de von Neumann.
Como é uma crise de software: 1: A estimativa dos custos e cronogramas de desenvolvimento de software é frequentemente imprecisa; 2: Os usuários ficam insatisfeitos com o sistema de software completo de tempos em tempos; 3: A qualidade dos produtos de software é frequentemente pouco confiável; (Qualidade Garantida do Software: Testes, Provas) 4: O software geralmente não é impossível de manter; (Não é código-fonte, não pode ser modificado, o software é confidencial, comportamento comercial) 5: O software não possui documentação adequada (os documentos contêm confidencialidade técnica) 6: O custo do software em proporção aos custos dos computadores está aumentando ano após ano; 7: A produtividade do desenvolvimento de software é muito menor do que o número de aplicações de computador. (O desenvolvimento de software não é tão rápido quanto o desenvolvimento de hardware)
Abordagens e métodos de resolução de crises de software: 1: Acelerar o desenvolvimento de uma nova geração de computadores; 2: Organizar e planejar, meios de gestão rigorosos para o desenvolvimento de software (desenvolvimento de empresas regulares); 3: Resumir as tecnologias e métodos de software bem-sucedidos e promovê-los. (Frequentemente realizo alguns seminários, publica artigos e realiza intercâmbios acadêmicos) 4: Você deve escolher uma boa ferramenta de desenvolvimento. Por exemplo: ferramentas IDE.
Modelo de Desenvolvimento de Software: 1: Modo cachoeira (também conhecido como: modo segmentado); Esse modo de desenvolvimento é adequado para uso em situações onde os requisitos de software são relativamente claros, a tecnologia de desenvolvimento é relativamente madura e a gestão de engenharia é relativamente rigorosa. Vantagens: O software desenvolvido usando esse modo tem boa estrutura.
2: Modo incremental Começando por parte da análise de requisitos, primeiro estabeleça um sistema incompleto, depois teste e execute o sistema, e então teste e execute o sistema, obtenha informações de experiência e feedback, de modo que o sistema seja continuamente expandido e aprimorado até que o usuário fique satisfeito. (No começo, não consegui apresentar um requisito completo, a variabilidade era relativamente forte, pesquisando softwares, startups) Vantagens: Usando esse método para desenvolver software, a taxa de satisfação do usuário é a maior.
3: Modo de transformação A partir da especificação formal dos requisitos originais, o sistema final de programas é obtido após uma série de transformações de programa. Esse modelo requer o suporte de teoria matemática rigorosa e técnicas formais, e ainda está em fase de pesquisa e experimental.
Revisão técnica de software e revisão gerencial: 1: O papel da revisão técnica Medidas importantes para garantir a qualidade do software durante a revisão técnica e medidas importantes para reduzir custos de software durante a revisão técnica. (Custo de Qualidade) 2: O papel da revisão gerencial O principal meio de gerenciar e controlar projetos de desenvolvimento de software é a chave para a tomada de decisões sobre projetos de desenvolvimento de software.
|