From an IT perspective, being an analyst means several different positions with various job descriptions. These includes the role of IT analyst, which is also commonly referred to as systems analyst, or business analyst, data analyst or test analyst. But what do people who hold this position actually do and what are they responsible for? Let’s have a look at the roles chronologically as they enter the IT project.
The first analytical position to join the project is the business analyst. Very simply put, business analysts are responsible for communicating with the client, with business representatives on the customer’s premises. The aim of their work is to collect the client’s needs, transform them into requirements and rank them in order of importance. Subsequently, analysts develop a solution design, i.e. de facto build the software from the user’s point of view. They record their design in the business analysis, which means creating process diagrams, Use Case models or User Stories, activity diagrams, describing user roles, drawing wireframes of screens and so on, i.e. everything that will show how the system should work from the user’s perspective. You can read what a good business analyst needs to know here.
IT analysts, also known as a systems analysts, enter the project process early or together with the business analyst. Their responsibility is to design the technical solution of the system. In their work, they communicates intensively both with the IT architect, who is responsible for designing the concept of application development, and with the business analyst, who presents to them functional requirements and a description of the solution from a business perspective. The IT analyst then designs and describes the details of the technical solution, individual system modules, data and object structures including their links, defines interfaces and models sequence diagrams, etc. The results of work performed by the IT analyst, together with the results of work performed by the business analyst then constitute the specifications according to which the developers program the required system. This is also why a standard requirement for IT analysts is that they are familiar with programming languages such as Java, .NET, SQL or XML. Knowledge of methodologies such as RUP and ITIL or the recently widespread DevOps approach to software development.
Test analysts process the test analysis. They study the inputs provided by the business and IT analyst and go through the processes and logic of the entire expected solution with them to understand how the system should work in the end. This means that they enter the project either after the business and IT analyses have been elaborated or before their completion. After familiarising themselves with analytical documents, they develop test scenarios (Test Cases), test suites (logical groupings of tests which are related in some way) and test scripts. It may also happen that during the creation of test scenarios, they come across a deficiency in the business or IT analysis. In this case, they will draw attention to this fact so that the business or IT analyst can incorporate the identified deficiency in the analysis. Test analysts also defines the necessary test data for testing of the software during the creation of test scenarios. In the end, they are able to propose a test plan, i.e. the order of testing the individual test scenarios. Sometimes they are also the ones who prepare the test data or participates in the software testing itself.
Data analysts, as the name implies, work with data. Each system contains thousands, sometimes millions, of data records from which a wealth of interesting information can be extracted for business purposes. This concerns numeric values, but also text data. Data analysts works with both primary data sources, i.e. data from the main system, and also secondary data, for example, data from systems which deal with less important, i.e. supporting processes. Analysts sort, clean and analyse the data using standard statistical tools. They create various types of reports and visualisations for business or management. They design and create relational databases, define correlations and patterns in complex datasets. The primary skills of a data analyst include database design, familiarity with data warehouses and BI platforms, SQL, data mining, and the ability to visualise the resulting data and present the results. But also knowledge of statistical techniques, mathematical knowledge and orientation in the field of finance. In fact, data analysts can join the project at any time. They can be part of the team almost from the very beginning, for example, if the project involves migration of data from the original system to the new one. Or they can get involved in the project after the system is deployed in production to extract and process the first outputs for the client’s business or management, while continuing this work and continuously preparing various reports and visualisations.
As can be seen from the description above, several analysts are involved in creation of the system design, and their work builds on that of each other. This is one of the reasons why ongoing, more or less intensive communication is important for everyone. Actually, designing new software could be described as a performance given by a symphony orchestra, with the violin accompanied by the flute or the oboe, with the occasional horn or timpani. If everybody is in tune, they create a beautiful melody, and if not, everybody has to cover their ears. In the case of software, any “wrong notes” would result in a non-functional solution which would not meet the client’s needs and, moreover, would probably not be usable.