Let us imagine that you waked up yesterday with an idea of creating new software, that as you think should help you to earn a lot of money.
If you are not an IT person you will soon find out that as in any other business, the software development process is usually split into several stages.
And requires a team of qualified professionals for its success.
Usually, the roles in the application development team are the next:
Product owner - a person who is responsible for the generation and management of the list of work to be completed by the development team;
Project manager - a person who is responsible for meeting project deadlines;
UI/UX specialist - a person responsible for the product interfaces and their comfortable usage;
Developers- who are actually writing the program code;
Quality assurance engineers who are testing the app from all sides, perform the bug tracking and responsible for the product quality control;
DevOps engineers who are responsible for environments setup, functionality implementation, and product quality control.
Some teams that are using the SCRUM agile framework are also separating out the Scrum master role.
The scrum master - is a person responsible for the evaluation and elimination of any difficulties that team members are facing during the development process.
After these details are found out you will probably perform an investigation regarding the current situation on the software development market and we are sure that these numbers will definitely impress you:
- More than 100 billion dollars spent by users in the applications stores during the 2018 year.
- More than 200 billions of applications downloads during the 2018 year.
- Around 12 %of active users look up for the new mobile applications every day
- The mobile app market size is projected to hit $189B by 2020.
But at the same time some of the statistics could be frightening :
- More than 60 % of mobile applications are uninstalled during the first month after installation;
- Usually, the mobile app loses up to 77% of Daily Active Users during three days after installation;
- 94% of App Store revenue in the US goes to just 1% of publishers.
What are the reasons for these failures? The factors that are typically causing the project collapse are listed below:
- Incomplete planning and analysis before the development starts;
- Unclear requirements;
- Uncomfortable and/or unattractive user interface;
- Incorrectly defined target audience ;
- Absence of innovative value proposition.
All of the points listed above could be easily facilitated by a qualified business analyst who acts as a permanent member of your team.
Some of his responsibilities are permanent and some are changing throughout the software development lifecycle
On the planning stage, the business analyst should define, analyze and document the goals provided by the stakeholders. The business analysts are using a large number of different methods and technics to evaluate the project's goals such as the brainstorm, the personal questioning, the method of 5 why the SMART goals methodology, etc...
On the analysis stage of the software development, he should collect as much information as possible by analyzing the competitors, the target market and the target audience. The value proposition should be formulated by him on this stage and the business model canvas should be created and approved by stakeholders. On this stage, the business analyst suggests to stakeholders the implementation of economically beneficial technical solutions and transform the business requirements into technical tasks that are needed for further stages. These tasks i.e. product backlog items should be split into categories for their effective maintenance.
On the design stage, a qualified analyst will suggest you the best solutions for your interface design and its comfortability of usage, all of the functional and non-functional requirements to the system should be documented by him before the implementation phase starts.
On the implementation stage, after all of the details are clarified and the development process started the business analyst often takes the role of a product owner in the team - he controls the process of technical solutions implementation, helps the team to prioritise the features and bugfixes, continuously communicates with the development team and the business owner to minimise the misunderstandings appearance. This is a period of time when the business analyst acts as a translator between the development team and the stakeholders of the project providing a link between the technical possibilities and their impacts on the business goals of a product for both sides. He also should perform the continuous Gaps analysis - find out the features which were not in the development plan, but HAVE to be there.
Testing and integration stage is a period of time when the business analyst should approve that the product requirements are implemented correctly in accordance with the strategic business goals of a project
Maintenance is a stage where the business analyst provides the consultancy services continuously and evaluates the moments when some changes to the system required.
As a summary for all the activities listed previously, we can evaluate the next tasks that a business analyst perform on a daily basis in the intermittent world of IT technologies:
- Meeting with the project influence stakeholders;
- Meetings with the development team;
- Proceeding the requirements;
- Project documentation using models, schemes, graphs, prototypes, tables, and diagrams;
- Developers and testers consultancy;
- The project iteration acceptance;
- The change requests efficient processing in terms of requirements traceability and relations;
- Share the knowledge about the project with the newcomers.
Because of all these activities performed and because of their valuable results, the business analyst becomes a necessary member of each product development team. We wish you a great experience of cooperating with such a specialist.