Oi Meu nome é Nastya, sou analista do aplicativo móvel Alfa-Business. Às vezes eles me perguntam o que eu faço no trabalho. Amigos, família e, curiosamente, desenvolvedores. Cada vez que respondo de maneira diferente, tentando dar exemplos mais próximos do meu interlocutor.
“Um analista de sistemas traduz os requisitos do usuário de uma linguagem humana para uma de desenvolvimento ...” - parece bastante claro para uma pessoa que não está conectada à TI. Mas se você estiver diretamente envolvido no desenvolvimento, é improvável que essa definição seja suficiente. Para uma pequena experiência, fiz à minha equipe a pergunta: "O que faz um analista de sistemas?" Lemos sob o corte, o que veio disso.
Para mim, um analista de sistemas é uma pessoa que pode responder a qualquer pergunta: de "Como o recurso deve funcionar" a "Por que a Terra é redonda" (c) testador
Quanto à Terra, pode ser demais, mas de outra forma bastante precisa. Onde armazenar os dados, como transferi-los, como o recurso funciona, por que o recurso não funciona ... Toda vez que algo incompreensível é encontrado na lista de pendências do produto, segue a frase "análise é necessária".
Para entender como o sistema funciona, o analista recorre a documentos internos. Normalmente, a resposta está entre texto, diagramas e tabelas. Mas às vezes as pessoas saem sem escrever documentação. Ou é irrelevante. Ou não confiável. O carma de tais analistas sofre terrivelmente, mas, felizmente, existem outras maneiras de encontrar informações.
O uso confiável de sistemas de registro em log pode reduzir a ficção de um TK de 30 páginas para algumas consultas. O principal é saber o que procurar. Os logs contêm informações sobre os métodos chamados, parâmetros de entrada e saída, causas de erros. Se o serviço for composto - uma operação passo a passo. O analista precisa entender a estrutura dos logs e poder filtrá-los: geralmente uma quantidade enorme de dados é registrada.
As informações encontradas nos logs são bem complementadas por uma pesquisa pelo código do aplicativo. O projeto contém informações sobre fontes de dados, a lógica do processamento de variáveis e muitas outras coisas necessárias. O sucesso do evento depende das habilidades do analista e das características da empresa. Em algumas organizações, os analistas não têm acesso ao código. Se é certo ou errado, é uma pergunta difícil. De qualquer forma, se não houver acesso (ou entendimento do que está acontecendo), você sempre poderá perguntar ao desenvolvedor.
Se um problema parecer que ninguém resolveu, fontes externas serão usadas. Ok Google, modelos cosmológicos do universo? Qualquer meio é bom aqui: artigos, fóruns, cursos de treinamento, documentação para sistemas de terceiros. Às vezes, os indianos do YouTube vêm em socorro, mas esse é um caso extremo. A propósito, é preciso ser capaz de pesquisar em dois idiomas, bem ou imediatamente, em inglês
hindu .
Outra fonte de informação são as pessoas. Um analista que conhece a área de assunto pode resolver uma tarefa em cinco minutos, para os quais você descreveu alguns dias. Portanto, você precisa saber o que os colegas estão fazendo e poder formular corretamente sua pergunta.
O analista, como navegador, abre o caminho para a meta, evitando obstáculos e constantemente procura por caminhos mais curtos (c) desenvolvedor front-end
Para ir de São Petersburgo a Saratov, você precisa de um carro confiável e um mapa de carro. Bem, se houver um kit de primeiros socorros, uma roda sobressalente, ferramentas. A habilidade de se comunicar com os residentes locais não será supérflua, bem, em geral, para entender por que você está indo para Saratov, e não para o Território de Krasnodar, por exemplo. Com análises também. Você deve ter as ferramentas para trabalhar, a capacidade de interagir com as pessoas e uma compreensão clara do resultado esperado. O conhecimento de sistemas e tecnologias está se tornando um roteiro.
Qualquer tarefa tem pelo menos duas soluções. É importante escolher um caminho que não será mais curto, mas mais correto. É mais correto em termos de arquitetura, atendimento aos requisitos do produto e custos de implementação. Às vezes, o analista fornece apenas informações para uma decisão da equipe; em outros casos, ele mesmo faz a escolha.
Para oferecer uma implementação adequada, você precisa entender a estrutura do sistema: dos padrões arquiteturais às tecnologias de desenvolvimento. Ao implementar a mudança, o analista avalia o impacto nos componentes do aplicativo e em outros sistemas integrados. Ao desenvolver um aplicativo móvel, você precisa se lembrar dos usuários com versões antigas. Se o sistema tem várias frentes - sobre a uniformidade de seu trabalho. Ao usar várias fontes de dados - sobre sua consistência. Em geral, existem
dores de cabeça suficientes
de características fascinantes no trabalho.
Bem, eu não sei, você é apenas um testador para mim. Bem, ou uma mistura de um produto com um testador, algo como isto (c) um desenvolvedor de back-end
Eu concordo, parece um pouco ofensivo, mas há alguma verdade aqui. Primeiro, o analista examina o sistema para entender como ele funciona. Então ele está convencido de que o resultado do trabalho dos desenvolvedores funciona corretamente em todos os níveis: o banco de dados contém dados confiáveis, o serviço retorna a resposta correta, o usuário vê o resultado esperado. Se algo der errado, o nível do erro, a causa da discrepância e as possíveis opções de correção são descobertos. Avaliar a conformidade do sistema com vários tipos de requisitos é parte integrante da análise.
O aspecto da comida é mais complicado. O proprietário do produto sabe o que precisa ser feito para deixar o usuário feliz. Um analista de sistemas sabe como. Minha opinião subjetiva é que o analista, na mesma medida que outros membros da equipe, deve (ou pode) lidar com questões de produtos. Quando toda a equipe está preocupada em melhorar a experiência do usuário e alcançar objetivos financeiros, surgem melhores soluções do que quando uma ou mais pessoas o fazem.
Reúne informações sobre os produtos, projetos e sistemas do banco, atua na atualização e disseminação, está na vanguarda da informação (c) Scrum-master
Tudo começa com a documentação e termina com ela. Está preparado para uso interno e, quando aplicável, para o Cliente. Os documentos são criados de acordo com o GOST ou com os padrões internos. Os métodos de documentação também podem variar entre as camadas do sistema.
Ao escrever documentos, várias técnicas, padrões e notações de modelagem do sistema são usadas. Raramente quando você precisa seguir impecavelmente as regras. Deve ser confiável e relevante. E se estiver claro da primeira vez, então geralmente maravilhoso.
Aqui , a propósito, há um artigo interessante no qual o problema da qualidade da documentação é divulgado.
Além dos documentos do sistema, o analista pode escrever material para o Wiki corporativo. Aprendeu algo novo - conte aos outros. Se você deseja compartilhar sua experiência, faça uma apresentação. Novamente, isso nem sempre é e nem em todo lugar. Mas se a empresa tiver um processo de gerenciamento de conhecimento, os analistas certamente participarão.
Há muitas coisas diferentes que um analista precisa saber para corresponder ao papel e às expectativas da equipe. Dependendo das especificidades do produto e da indústria, a composição e o grau de significância variam. O que o analista está fazendo, nós meio que descobrimos. Resta entender o que você precisa saber para concluir com êxito todas as tarefas. Sua atenção é convidada para a análise do roteiro. O esquema contém as principais habilidades em diferentes direções, bem como uma tentativa de distinguir entre análise de sistema e de negócios.
Quão universal é o cartão, é difícil para mim julgar. Portanto, estou aguardando comentários de desenvolvedores e analistas de outras organizações :)
