Engenharia 1

Subdecks (1)

Cards (108)

  • Processo de desenvolvimento de software
    Sua aplicação no Gerenciamento de Projeto
  • Nos dias atuais, a importância do software é facilmente perceptível em função dos inúmeros serviços digitais disponíveis na nossa Sociedade da Informação
  • O software também está presente em sistemas de controle de veículos, aviões, refinarias entre outros
  • O "produto" software tem que ser projetado aplicando-se as melhores práticas da engenharia
  • Não existe engenharia sem processo
  • Gerenciamento de Projeto
    Permite elaborar um plano de projeto onde são otimizados os recursos, que incluem pessoas, materiais e equipamentos
  • A Engenharia de Software está alinhada com a área de conhecimento Gerenciamento de Projetos, sendo esta fundamental ao engenheiro de software
  • Software
    Instruções (programa de computador) que, quando executadas, fornecem características, funções e desempenho desejados; estruturas de dados que possibilitam aos programas manipular informações adequadamente; e informação descritiva, tanto na forma impressa quanto na virtual, descrevendo a operação e o uso dos programas
  • A maior causa da crise do software é que as máquinas se tornaram várias ordens de magnitude mais potentes
  • O desenvolvimento tecnológico do hardware nos últimos anos permitiu o desenvolvimento de softwares cada vez mais complexos, tendo um forte impacto na indústria de software
  • Uma das principais finalidades do software é a geração de informação
  • Sistema de Informação
    • Hardware, software, sistema gerenciador de banco de dados, redes de comunicação e serviços
  • O software apresenta dois papéis distintos: como um produto a ser utilizado pelos usuários e como veículo que distribui o produto, pois a comunicação entre os diversos componentes de um sistema de informação ocorre por meio de sistemas operacionais, software de comunicação entre outros
  • Desafios atuais de um engenheiro de software
    • Software de sistema
    • Software de aplicação
    • Software de engenharia/científico
    • Software embarcado
    • Software para linha de produtos
    • Aplicações web/aplicativos móveis
    • Software de inteligência artificial
  • A melhor tratativa para a complexidade é a aplicação de metodologia que permita a decomposição do problema em problemas menores de forma sistemática
  • Engenharia de Software
    A aplicação de uma abordagem sistemática, disciplinada e quantificável para o desenvolvimento, operação e manutenção de software, que é a aplicação de engenharia ao software
  • Camadas da Engenharia de Software
    • Camada de qualidade
    • Camada de processo
    • Camada de métodos
    • Camada de ferramentas
  • Processo de software
    Sequência de etapas que permitem a geração de um produto, no nosso caso, o software
  • Metodologia do processo
    1. Comunicação
    2. Planejamento
    3. Modelagem
    4. Construção
    5. Entrega
  • Gerenciamento de Projeto
    Permitirá a elaboração de um Plano de Gerenciamento do Projeto de forma sistemática
  • O cronograma inclui as atividades a serem desenvolvidas no referido projeto, contemplando diferentes áreas de conhecimento
  • Processo de desenvolvimento de software
    1. Disponibiliza as principais atividades que irão compor o Plano de Gerenciamento do Projeto
    2. Plano é executado e monitorado
  • Modelagem
    A engenharia tem como melhor prática a geração de modelos, tal como a planta baixa de uma casa
  • Diagramas na Engenharia de Software
    Podem ser complementados por descrições textuais
  • Construção
    1. A partir dos modelos gerados, é realizada a construção ou implementação do software
    2. Inclui a codificação e os testes de software de acordo com o planejado
  • O objetivo de um plano de projeto de software é a entrega do produto em produção de acordo com o planejado
  • Atividades de apoio
    • Controle e acompanhamento de projeto
    • Administração de riscos
    • Garantia da qualidade de software
    • Revisões técnicas
    • Medição
    • Gerenciamento da configuração de software
    • Gerenciamento da capacidade de reutilização
    • Preparo e produção de artefatos de software
  • Controle e acompanhamento de projeto
    Permite verificar se a execução está de acordo com o planejado, e implementar ações corretivas em caso de não conformidade
  • Administração de riscos
    Qualquer evento, positivo ou negativo que possa impactar o desenvolvimento do projeto, deve ser tratado
  • Garantia da qualidade de software
    Garantir que os requisitos do projeto sejam atendidos
  • Revisões técnicas

    Todos os artefatos devem ser testados, inclusive, processos, modelos, código do software e outros
  • Medição
    Permite a definição de métricas para avaliar as várias atividades durante o desenvolvimento do software
  • Gerenciamento da configuração de software

    Inclui os efeitos das mudanças, como o gerenciamento de versionamento do software em um processo iterativo e incremental
  • Gerenciamento da capacidade de reutilização
    O reuso de software deve ser um objetivo persistido por quem desenvolve o software
  • Preparo e produção de artefatos de software
    As atividades possuem métodos próprios para a geração de artefatos que necessitam ser documentados
  • A Engenharia de Software é uma tecnologia em camadas, com foco na qualidade, processo, métodos e ferramentas
  • A base da Engenharia de Software é a camada de processo, com as principais atividades genéricas: comunicação, planejamento, modelagem, construção e entrega
  • Todo projeto de software é iniciado por alguma necessidade do negócio
  • O intuito da Engenharia de Software é fornecer uma estrutura para a construção de software com alta qualidade
  • Os procedimentos da Engenharia de Software constituem o elo que mantém juntos os métodos e as ferramentas