2023 Analista de Sistema --- Planejamento de Sistema

1. Etapas do planejamento do sistema

  1. Investigação preliminar: De acordo com os objetivos estratégicos da empresa, analise a situação atual da empresa e o status operacional do sistema
  2. Determinar os objetivos do sistema: determinar a qualidade do escopo do serviço do sistema, etc.
  3. Analisando a composição dos subsistemas: particionando o sistema e especificando as funções dos subsistemas
  4. Elaborar o plano de implantação do sistema: analisar a prioridade dos subsistemas e determinar a sequência de desenvolvimento
  5. Estudo de viabilidade: escrever um relatório de estudo de viabilidade e realizar uma reunião de discussão de viabilidade
  6. Formular o plano de construção do sistema: analisar e comparar os vários indicadores técnicos propostos no relatório do estudo de viabilidade, implementar as pré-condições de várias suposições, formular o plano de construção do sistema e formar o livro de tarefas de projeto do sistema

2. Classificação do Estudo de Viabilidade

  1. Viabilidade econômica: análise de custo-benefício, incluindo construção, custos operacionais e possíveis benefícios econômicos após a construção do projeto.
  2. Viabilidade técnica: análise de risco técnico, se a tecnologia existente pode suportar a realização do objetivo do sistema e se os recursos existentes (funcionários, acúmulo de tecnologia, biblioteca de componentes, software, condições de hardware etc.) projeto.
  3. Viabilidade legal (viabilidade social): não pode contradizer as leis ou políticas nacionais
  4. Disponibilidade do usuário:

3. Análise de custo-benefício

  1. Categoria de custo:
    1. Custo fixo: não muda com a produção, os salários do pessoal administrativo, despesas de escritório, despesas de depreciação de ativos fixos, despesas de treinamento de pessoal, despesas de publicidade, despesas de desenvolvimento de tecnologia, etc.
    2. Custos variáveis: mudança com a produção, custos de material direto, custos de embalagem do produto, custos de terceirização, bônus de desenvolvimento, etc.
    3. Custos mistos: serviços públicos, contas de telefone, salários do pessoal de garantia de qualidade, energia do equipamento, etc.
    4. Custos diretos: investidos diretamente no projeto, salários da equipe do projeto, custos de material
    5. Custos indiretos: rateados para o projeto, contas de serviços públicos, taxas de treinamento de pessoal
  1. Classificação da receita:
    1. Benefícios tangíveis: chamados benefícios econômicos, que podem ser medidos por indicadores como o valor do dinheiro no tempo, período de retorno do investimento e taxa de retorno do investimento. Os benefícios tangíveis podem ser divididos em benefícios econômicos únicos e benefícios não únicos.
    2. Benefícios intangíveis: chamados benefícios não quantificáveis, que são medidos principalmente qualitativa e psicologicamente, e é difícil fazer comparações quantitativas diretas
  1. Análise de avanço:
    1. Vendas = Custos Fixos + Custos Variáveis ​​+ Impostos + Lucro (em circunstâncias normais)
    2. Vendas = custos fixos + custos variáveis ​​+ impostos (no ponto de equilíbrio)
  1. Análise do Valor Presente Líquido:
    1. Questões estáticas e dinâmicas: a análise dinâmica considera o valor do dinheiro no tempo, geralmente a taxa de desconto
    2. Valor presente: Se você pode ganhar F yuan depois de n anos, o valor presente desse dinheiro é limitado a P:
  1. Retorno do investimento:
    1. O período de retorno refere-se ao período de recuperação do investimento. Dividido em: dispositivo de recuperação de investimento estático e dispositivo de recuperação dinâmico
    2. Período de retorno estático (independentemente do valor do dinheiro no tempo)
    3. Período de retorno dinâmico (considerando o fator valor do dinheiro no tempo)
    4. A fórmula para o período de retorno: o número de anos em que o valor descontado acumulado começa a aparecer positivo -1+|o valor descontado acumulado do ano anterior |/valor descontado do ano atual
    5. Taxa de recuperação do investimento = 1 / período de recuperação do investimento * 100%

4. Engenharia de Software

  1. Planejamento do sistema: investigação preliminar, análise dos objetivos do sistema, composição do subsistema, plano de implementação proposto, estudo de viabilidade, formulação do plano de construção do sistema; tarefas de design do sistema (plano de construção do sistema, plano de implementação)
  2. Análise do sistema: análise de processos de negócios, análise de dados e fluxo de dados, análise de requisitos de software, análise de requisitos de rede; especificação de requisitos do sistema, especificação de requisitos de software, plano de teste de confirmação, plano de teste do sistema, manual preliminar do usuário
  3. Projeto do sistema: projeto de arquitetura de software, projeto de esboço de software, projeto detalhado, projeto de rede; documentos de projeto de arquitetura, instruções de projeto de esboço, instruções de projeto detalhadas, especificações de programa, plano de teste de esboço, plano de teste detalhado, vários desenhos de projeto
  4. Implementação do sistema: codificação de software, unidade de software, integração, teste de sistema, fiação integrada; código-fonte, teste de unidade, relatório de teste de integração, manual de operação
  5. Aceitação do sistema: teste de confirmação, operação experimental; relatório de teste de confirmação, relatório de aceitação do projeto

5. Modelo de desenvolvimento de software

  1. Modelo de protótipo: um modelo típico de método de desenvolvimento de protótipo, adequado para "cenas com requisitos pouco claros", que pode ajudar os usuários a esclarecer os requisitos.
  2. Modelo Cachoeira:
    1. O modelo cascata é um modelo que define cada atividade no ciclo de vida do software como vários estágios conectados em uma ordem linear, incluindo análise de requisitos, projeto, codificação, operação e manutenção.
    2. As características do modelo em cascata são fáceis de entender, baixo custo de gerenciamento, cada estágio tem um produto correspondente e cada estágio tem limites óbvios e requisitos de sequência. Uma vez que ocorra um erro, todo o projeto será levado para um novo começo
    3. Aplicável a projetos com requisitos claros, geralmente expressos como requisitos claros ou desenvolvimento secundário, ou para projetos de processamento de dados
  1. Modelo incremental: integrando os componentes básicos do modelo em cascata e os recursos iterativos da implementação do protótipo, várias versões disponíveis podem ser lançadas e as funções principais geralmente são concluídas primeiro. Com base nisso, haverá novos lançamentos incrementais em cada iteração, o as funções principais podem ser totalmente testadas, enfatizando que cada incremento libera um produto operacional.
  2. Modelo espiral: A característica típica é a introdução da análise de risco, que combina as características do modelo cascata e do modelo de evolução.A característica mais importante é a adição da análise de risco. Consiste em um ciclo de planejamento, análise de risco, engenharia de implementação, avaliação do cliente e inicia a primeira espiral com um projeto conceitual.
  3. Modelo V: Enfatiza que o teste é executado ao longo do projeto, em vez de focar na fase de teste, é um modelo de desenvolvimento de teste
  4. Modelo Fountain: um típico modelo orientado a objetos. É caracterizado pela iteração, sem lacunas e pela divisão do desenvolvimento de software em vários estágios, mas os estágios irmãos mais velhos não têm limites claros e podem ser cruzados iterativamente.
  5. RAD de desenvolvimento rápido de aplicativos:
    1. Conceito: O RAD é uma variante de alta velocidade do modelo em cascata, adequado para o método de desenvolvimento com um ciclo de vida tradicional muito mais rápido. Ele enfatiza um ciclo de desenvolvimento muito curto e geralmente aplica o método de desenvolvimento baseado em componentes para obter um desenvolvimento rápido .
    2. Processo: modelagem de negócios, modelagem de dados, modelagem de processos, geração de aplicativos, teste e entrega
    3. Aplicabilidade: RAD tem requisitos relativamente altos para modularização. Se uma determinada função não pode ser modularizada, haverá problemas com seus componentes; se o alto desempenho é um indicador e deve ser ajustado para se adaptar aos componentes do sistema, então RAD Também pode não será eficaz; RAD exige que desenvolvedores e clientes concluam uma série de análises de demanda em um curto período de tempo, e a cooperação inadequada de qualquer uma das partes levará ao fracasso; RAD só pode ser usado para o desenvolvimento de sistemas de informações gerenciais, o que não é adequado para alto risco técnico Estojo
  1. Processo Unificado (UP, RUP significa Processo Unificado)
    1. Os recursos típicos são orientados a casos de uso, centrados na arquitetura, iterativos e incrementais. O Processo Unificado divide um projeto em quatro fases distintas:
      1. Fase de concepção (fase inicial): inclui dois aspectos de comunicação com o usuário e atividades de planejamento, enfatizando a definição e refinamento de casos de uso como modelo principal.
        1. Documento do plano do projeto (requisitos principais, principais recursos, principais restrições)
        2. modelo de usuário
        3. Plano de projeto
      1. Fase de elaboração: inclui atividades de modelagem e comunicação com o usuário, com foco na criação de modelos de análise e design, com ênfase na definição de classes e representação arquitetônica.
        1. Conclua o projeto de arquitetura
        2. Elimine elementos de alto risco
      1. Fase de construção: traduzindo o design em implementação, integração e teste
        1. modelo UML
        2. caso de teste
      1. Estágio de entrega: libere o produto para os usuários para teste e avaliação, colete as opiniões dos usuários e, em seguida, modifique iterativamente o produto novamente para torná-lo perfeito.
        1. produto de software executável
        2. manual do usuário
        3. Programa de Suporte ao Usuário
  1. Desenvolvimento ágil: O desenvolvimento ágil é um método de desenvolvimento centrado nas pessoas, iterativo, passo a passo, adequado para pequenas equipes e pequenos projetos, com a ideia de execução em pequenos passos. Métodos comuns de desenvolvimento ágil são programação extrema, método cristal, método scrum e método de desenvolvimento de software adaptativo.

Extreme Programming XP é um método de desenvolvimento leve que propõe quatro valores: comunicação, simplicidade, feedback e coragem. Cinco princípios: feedback rápido, suposições simples, revisões incrementais, defesa da mudança e trabalho de qualidade. Doze melhores práticas: jogo de planejamento, metáforas, pequenos lançamentos, design simples, teste primeiro, refatoração, programação em pares, propriedade de código coletivo, integração contínua, semana de trabalho de 40 horas, clientes segmentados e padrões de codificação.

O método do cristal enfatiza a entrega frequente e acredita que cada projeto diferente requer um conjunto diferente de estratégias, convenções e metodologias.

O núcleo do método scrum é iterativo, entrega incremental e desenvolvimento iterativo e entrega de software que pode realmente ser executado em 30 dias

No coração do Desenvolvimento de Software Adaptativo (método ASD) estão três fases de desenvolvimento não lineares e sobrepostas: adivinhar, colaborar, aprender.

Código aberto e código aberto aqui se referem à maneira como a comunidade de código aberto funciona. Uma característica especial dos projetos de código aberto é que os desenvolvedores do programa são amplamente distribuídos geograficamente, o que o torna diferente de outros métodos ágeis, porque o método ágil geral enfatiza que os membros do projeto trabalham no mesmo local. Uma característica proeminente do código-fonte aberto é o alto paralelismo na solução de problemas de erro.Qualquer um que encontre um erro pode enviar um arquivo "patch" para corrigir o código-fonte ao mantenedor. Esses "patches" ou novos códigos são então incorporados ao repositório de código-fonte pelo mantenedor

Método de desenvolvimento de driver comum da Coad

No FDD, os desenvolvedores de programação são divididos em duas categorias: programadores líderes e programadores de "classe". Os programadores líderes são os desenvolvedores mais experientes, são coordenadores de projeto, designers e mentores, enquanto os programadores de "classe" fazem principalmente a escrita do código-fonte original.

6. Engenharia reversa

Quatro níveis de engenharia reversa:

  1. Nível de implementação: incluindo a árvore de sintaxe abstrata do programa, a tabela de símbolos e a representação de design do processo
  2. Nível estrutural: inclui informações que refletem as interdependências entre os componentes do programa, como gráficos de chamada, gráficos de estrutura, programa e estruturas de dados
  3. Nível funcional: inclui informações que refletem a função do segmento do programa e o relacionamento entre os segmentos do programa, como dados e modelos de fluxo de controle
  4. Nível de domínio: inclui informações que refletem a correspondência entre os componentes do programa ou programas, como entidades e conceitos de domínio de aplicativo, como modelo de relacionamento de entidade

Conceitos relacionados de engenharia reversa:

  1. Reestruturação: Reestruturação refere-se a transformar a forma de descrição do sistema no mesmo nível de abstração
  2. Recuperação de design: A recuperação de design refere-se ao uso de ferramentas para abstrair informações sobre design de dados, design de estrutura geral e design de processo de programas existentes.
  3. Engenharia reversa (engenharia reversa): A engenharia reversa analisa o programa, tentando estabelecer um processo de representação do programa em um nível de abstração mais alto do que o código-fonte, e o processo de recuperação projetado pela engenharia reversa
  4. Engenharia avançada: A engenharia avançada é o processo não apenas de recuperar informações de projeto de sistemas existentes, mas também de usar essas informações para alterar ou refatorar sistemas existentes para melhorar sua qualidade geral
  5. Reengenharia (reengenharia): A reengenharia é o processo de redesenvolvimento de sistemas existentes, incluindo três etapas: engenharia reversa, processo de consideração de novos requisitos e engenharia avançada

Guess you like

Origin blog.csdn.net/qq_25580555/article/details/129669503