Software_1

Description

mapa mental descrevendo conteúdo da máteria de Analise de Software II, ministrada na instituição Unicamp em Limeira
Ivan Filho
Mind Map by Ivan Filho, updated more than 1 year ago More Less
Ivan Filho
Created by Ivan Filho over 9 years ago
Ivan Filho
Copied by Ivan Filho over 9 years ago
12
0

Resource summary

Software_1
  1. Modelagem
    1. Uml
      1. Diagrama caso de uso
        1. Identificação de atores e serviços
        2. Diagrama de Classes
          1. Definição da estrutura e das classes
          2. Diagrama de objeto
            1. Mostrar valores armazenados pelo objeto
            2. Diagrama de Estrutura Composta
              1. Visões de um conjunto de entidades
              2. Diagrama de Sequência
                1. Desenrolar dos eventos
                2. Diagrama de Comunicação
                  1. mostrar como objetos estão interligados e mensagens trocadas sem preocupação de tempo
                  2. Diagrama Máquina de Estado
                    1. Informar mudança de Estado a partir de uma instancia
                    2. Diagrama de Atividades
                      1. Comportamento de objetos entre vários casos de uso
                      2. Diagrama de Interação
                        1. Comportamentos de objetos entr eum uníco caso de uso
                        2. Diagrama de Componentes
                          1. Demonstrar componentes que fazer parte do sistema e seus relacionamentos
                          2. Diagrama de Implantação
                            1. Necessidades físicas do sistema
                            2. Diagrama de Pacotes
                              1. Decompõe o sistema geral em subsistemas que o compõe
                              2. Diagrama de Tempo
                                1. Indica mudança de estado do objeto e o tempo de resposta da mudança
                            3. Remodelagem
                              1. Reengenharia
                                1. Recriar um sistema já projetado
                              2. Engenharia Reversa
                                1. Entender um código já construido e decompor o mesmo
                                2. Linguagens
                                  1. C++
                                    1. Java
                                      1. Problemas no desenvolvimento
                                        1. 7 Pecados capitais
                                          1. Pressa
                                            1. Qualidade em segundo plano
                                            2. Apatia
                                              1. não se importar em resolver problemas conhecidos
                                              2. Mente estreita
                                                1. recusa em usar soluções reconhecidamente efetivas
                                                2. Preguiça
                                                  1. caminho mais "facil" em vez de refletir sobre a decisão
                                                  2. Avareza
                                                    1. Detalhes excessivos, maior complexidade
                                                    2. Ignorância
                                                      1. falha em buscar compreensão
                                                      2. Orgulho
                                                        1. investimento em desenvolver soluções que poderiam ser aproveitadas de outras fontes
                                                  3. Coesão
                                                    1. Alta coesão
                                                      1. Classes se relacionam, existe mt dependência
                                                      2. Baixa coesão
                                                        1. Classes se relacionam, mas há divisões em subsistemas
                                                      3. Acoplamento
                                                        1. Alto acoplamento
                                                          1. Relacionamentos demais entre as classes
                                                          2. Baixo acoplamento
                                                            1. Muito pouco relacionamento entre as classes
                                                          3. Problema durante o desenvolvimento
                                                            1. Contexto e forças
                                                              1. Solução Padrão
                                                                1. Padrões de Projeto
                                                                  1. Interface
                                                                    1. Adapter
                                                                      1. Ajustar a interface de uma classe à interface que o cliente espera
                                                                      2. Façade
                                                                        1. Oferecer uma interface única para uma coleção de classes
                                                                        2. Composite
                                                                          1. Definir uma interface que se aplica a objetos individuais ou a grupos de objetos
                                                                          2. Bridge
                                                                            1. Desacoplar uma abstração de sua implementação de forma que as duas possam variar independentemente
                                                                          3. Responsabilidade
                                                                            1. Singleton
                                                                              1. Centralizar responsabilidade em uma única instância da classe
                                                                              2. Observer
                                                                                1. Desacoplar um objeto do conhecimento de quais outros objetos dependem dele
                                                                                2. Mediator
                                                                                  1. Centralizar responsabilidade em uma classe que supervisiona como um conjunto de outros objetos interagem
                                                                                  2. Proxy
                                                                                    1. Deixar um objeto atuar em nome de outro objeto
                                                                                    2. Chain of responsibility
                                                                                      1. Permitir que uma requisição passe por uma sequência de objetos até encontrar um que possa atendê-la
                                                                                      2. Flyweight
                                                                                        1. Centralizar responsabilidade em pequenos objetos compartilhados
                                                                                      3. Construção
                                                                                        1. Builder
                                                                                          1. Obter gradualmente a informação necessária para construir um objeto
                                                                                          2. Factory Method
                                                                                            1. Adiar a decisão sobre qual classe instanciar
                                                                                            2. Abstract Factory
                                                                                              1. Construir uma família de objetos
                                                                                              2. Prototype
                                                                                                1. Construir um objeto a partir de exemplo existente
                                                                                                2. Memento
                                                                                                  1. Reconstruir um objeto a partir de informação de estado anteriormente salva
                                                                                                3. Comportamento
                                                                                                  1. Command
                                                                                                    1. Ecapsular a invocação de um método em um objeto
                                                                                                    2. Template Method
                                                                                                      1. Implementar um algoritmo em um método, deixando a definição de alguns passos do algoritmo para subclasses que podem refiná-lo
                                                                                                      2. State
                                                                                                        1. Distribuir uma operação de modo que cada classe represente um estado diferente
                                                                                                        2. Interpreter
                                                                                                          1. Distribuir uma operação de modo que cada implementação seja aplicável a um tipo diferente de composição
                                                                                                          2. Strategy
                                                                                                            1. Encapsular uma operação, tornando as implementações intercabiáveis
                                                                                                          3. Extensão
                                                                                                            1. Decorator
                                                                                                              1. Acrescentar responsabilidades adicionais a um objeto dinamicamente
                                                                                                              2. Iterator
                                                                                                                1. Oferecer um modo de acessar uma coleção de instâncias de uma classe
                                                                                                                2. Visitor
                                                                                                                  1. Acrescentar novas operações a uma classe sem alterar a classe
                                                                                                            2. Solução anti padrão
                                                                                                              1. Anti padrões de Projeto
                                                                                                                1. Arquitetura
                                                                                                                  1. Stovepipe Enterprise
                                                                                                                    1. Sistemas múltiplos em uma empresa são desenvolvidos independentemente em cada nível
                                                                                                                    2. Jumble
                                                                                                                      1. Elementos de design horizontal (comum em todas aplicações) e vertical (dependen de implementações específicas são misturados
                                                                                                                      2. Vendor Lock-In
                                                                                                                        1. custo de mudar de fornecedor do produto ao qual o usuário é dependente para outro é muito alto
                                                                                                                        2. Architecture By Implication
                                                                                                                          1. falta de especificação (documentação) na arquitetura de um software em desenvolvimento, devido a experiências anteriores em construçãod e sistemas parecidos
                                                                                                                          2. Design by Committee
                                                                                                                            1. uma equipe muito grande trabalha na criação da arquitetura, porém sem coerência e um método organizado, a classe de interface acaba tornando complexa demais e sem o intuito real
                                                                                                                            2. Swiss army knife
                                                                                                                              1. tentativa de prover uma classe para diversas necessidades, o designer adiciona um grande numero de assinaturas de interface e, a classe de interface acaba ficando extremamente complexa
                                                                                                                              2. Reinventing the wheel
                                                                                                                                1. necessidade de contornar restrições técnicas, incompatibilidades e licenciamento de softwares presentes em partes ou módulos de terceiros. ao invés de pegar uma solução existente e adequada, adota-se uma solução customizada com desempenho pior que a existente
                                                                                                                              3. Desenvolvimento
                                                                                                                                1. Functional Decomposition
                                                                                                                                  1. Possui uma classe que funciona como uma rotina Main, a partir dela várias outras sub-rotinas são chamadas e, para cada sub-rotina, uma classe é implementada, cuja classe serve apenas para efetuar a ação
                                                                                                                                  2. Poltergeist
                                                                                                                                    1. Boat Anchor
                                                                                                                                      1. parte do código de um sistema ou uma peça de hardware que não tem nenhuma utilidade no projeto atual
                                                                                                                                      2. Golden Hammer
                                                                                                                                        1. Ferramenta específica que é dominada pela equipe e é utilizada de forma generalista (bom pra tudo)
                                                                                                                                        2. Dead End
                                                                                                                                          1. Quando tenta incorporar um módulo já pronto porém com incompatibilidade de suporte
                                                                                                                                          2. Spaghetti Code
                                                                                                                                            1. programa ou sistema que contém muito pouca estrutura de software. Codificação compromete a estrutura de suporte lógico (resultado do código antigo que está sendo modificado ao longo dos anos)
                                                                                                                                            2. Walking through a minefield
                                                                                                                                              1. prática de lançar um sistema sem que seus erros sejam avaliados corretamente para ganhar tempo
                                                                                                                                              2. Copy and Paste Programming
                                                                                                                                                1. É a cópia e modificação de um código existente ao invés de criar solução genéricas (identificado pela presença de vários segmentos de código semelhantes intercalados ao longo do projeto)
                                                                                                                                              3. Gerencial
                                                                                                                                                1. Analysis Paralysis
                                                                                                                                                  1. Caracterizado por revisões constantes e construção de modelos excessivamente detalhados. Torna o sistema difícil de desenvolver, documentar e testar
                                                                                                                                                  2. Death By Planning
                                                                                                                                                    1. Falta de uma abordagem pragmática (objetiva) para o planejamento, cronogramas e captura do processo
                                                                                                                                                    2. Corncob
                                                                                                                                                      1. pessoa difícil que causa problemas através de um comportamento destrutivo em relação a equipe ou projeto (alguém discorda dos objetivos ou processos-chave)
                                                                                                                                            3. O que é
                                                                                                                                              1. Conjunto de instruções a serem interpretadas por um computador
                                                                                                                                              Show full summary Hide full summary

                                                                                                                                              Similar

                                                                                                                                              Engenharia de Software
                                                                                                                                              Gabriel Alexandre
                                                                                                                                              Quiz - Processo de Software
                                                                                                                                              Adriana Gomes Alves
                                                                                                                                              ERGONOMIA
                                                                                                                                              timEU
                                                                                                                                              01. Eng de software:Fases de Processos da Eng de Software.
                                                                                                                                              Jamil Yahuza Felippe
                                                                                                                                              Áreas de Conhecimento X Grupos de Processos
                                                                                                                                              Rodrigo Ferreira
                                                                                                                                              Questões Fundamentos Eng de Software
                                                                                                                                              Jamil Yahuza Felippe
                                                                                                                                              Engenharia de Software
                                                                                                                                              Marcio Silveira
                                                                                                                                              Quiz - Processos tradicionais
                                                                                                                                              Adriana Gomes Alves
                                                                                                                                              Engenharia de software
                                                                                                                                              pcbsytem
                                                                                                                                              Aula Um Engenharia de Software III
                                                                                                                                              Artur R
                                                                                                                                              13. Eng de Software:Modelo Processo Ágil de Desenvolvimento
                                                                                                                                              Jamil Yahuza Felippe