Alignment difficulty
Since the introduction of information systems in organizations, their conception and development have been negatively affected by the difficulty in aligning the needs and semantics of the business areas and the functioning and semantics of the technological support areas. This is because the business context is described in terms of resources, processes, activities, objectives and responsibilities, whereas the technology context is described in terms of software components, entities, data structures and interfaces.
The difficulty in establishing a direct correspondence between the concepts of the business and those of the systems is often responsible for the incorrect transposition of the business needs – the requirements – into the design of the architecture of the information systems to be implemented. This is one of the main factors for the low quality of many information systems or even for their failure.
Several studies point to an average success rate that does not exceed 40% in software implementation projects, with a direct correlation of this situation with the incorrect identification of requirements, whose main causes are identified:
- If, on the one hand, the technological areas of organizations do not understand the business areas, on the other hand, these only know the business context and do not realize the potential of technologies and how they can contribute to leverage their activities;
- Communicating requirements is difficult, non-intuitive, and subject to the filters of individual perception and language;
- The formal and precise identification of requirements does not exist, or is carried out informally, without resorting to structured documentation, free of ambiguities, understandable and accepted by all parties participating in the projects;
- The definition of priorities between requirements does not exist, with equal degrees of importance being assigned to all of them, making it impossible to identify critical requirements and optimize the resources used;
- The main software development methodologies are very oriented to programming paradigms and not to business needs, contributing to increase the gap between the final product and business needs.
New proven methodology
To overcome these limitations, standardizing the semantics and systematizing the terminology used in the description of requirements, tools are used to analyze and characterize each of the organizational dimensions with implications for the identification of requirements. Thus, in the Strategy dimension, among others, the Vision, the Strategic Map and the Value Chain are used. For the description of the Business Processes, Flowcharts and Hierarchy Diagrams of Rules and Activities are used.
As for the description of the Information Systems, among others, Use Cases, Data Models and description of the Systems Architecture are used. The use of these tools increases the fluidity of communication between the business areas and the requirements gathering areas, ensuring the reduction of inaccuracies and ambiguities.
In turn, ensuring the alignment between the tools in each of the dimensions ensures that the identified information is necessary and sufficient for the specification of requirements to be carried out rigorously.
The set of activities that contribute directly to the design, implementation and exploitation of a software product, constitutes what is called the software process, also known as the software development cycle. It is the means and tools used during the execution of the activities of this cycle that ensure the suitability of the final product to the needs of the business areas. Although there are different models to systematize this process, the main steps are Requirements Gathering and Solution Design, Solution Implementation, and Solution Exploration, represented in the figure below.
The most critical step in creating software is Requirements Gathering and Solution Design. This is the moment when the behavior that the software to be developed should have is described, so that it is in accordance with the business needs that are identified. All information collected in this stage will be used as input for the following stages, so any error or omission generated at this stage will be transmitted – normally amplified – to the following links. work carried out in this first stage must be carried out in accordance with best practices and using the appropriate tools to systematize information, ensuring the full collection of business needs and the elimination of ambiguities and contradictions.
Increase the degree of success
Sonangol's information technology area, attentive to its internal and external surroundings, identified the need to increase the degree of success in adapting the information systems developed in response to requests from the business areas.
In an environment of increased demand, it decided to put into practice an ongoing strategy to narrow the existing “gap” with the business areas.
For this purpose, Sonangol initiated a series of actions to increase the qualification level of the Information Systems Requirements Survey teams, providing them with the necessary skills to overcome existing barriers with the business areas.
It was in this context that Sonangol found in LBC a partner to support it in the creation and implementation of new approaches to fulfill these objectives. The project team conceived and developed an innovative program by incorporating the training aspect into a project, in a training-action logic, which allowed Sonangol to learn and apply the processes, techniques and tools of Requirements Survey and Solution Design that allowed it to increase the degree of autonomy in this discipline.
skills development
A training-action methodology was defined in two phases. The first phase consisted of training Human Resources in the Requirements Gathering area and creating tools to support the activity. The second phase was related to face-to-face support, on-the-job, to the members of the team responsible for carrying out the Requirements Gathering project.
The objective was not limited to developing technical skills, identifying the intended functional and non-functional requirements for the system, but also aimed to develop human interaction skills with the business areas, improving the capabilities of dialogue with users, in their language , identifying their real needs and supporting them in identifying needs that had not been recognized.
A joint project team was set up, led by Sonangol and including elements from LBC, to guarantee access to methodologies, experience and fundamental practices for the success of information systems design projects. The creation of a joint team also allowed Sonangol to ensure the incorporation of know-how by the members of the Requirements Survey and Solution Design team.
Additionally, to materialize these practices and ensure the permanence of know-how in Sonangol after the completion of the project, tools were created for analyzing and characterizing information in the organizational dimensions of Business Processes and Information Systems. The existence of these tools ensures alignment between the semantics of the business areas and information systems, standardizing the terminology to be used in the description of requirements.