Over time, software design has had different approaches that have evolved and become enriched both in their tasks and in the variety of possible techniques to apply. The artificial intelligence (AI) and the interaction design (ID) go hand in hand during the requirements and design stages, forming part of an approach called User Experience Design (UXD).
The objective of this article is to offer an integrative view of both processes (AI and IXD) during the first stages of software creation, based on the UXD principles and proposing a methodological approach to face these processes.
The conceptualization of this article is based on Jesse James Garret’s approach to the elements of the UX/UI with emphasis on the work of Information Architecture and Interaction Design.
Another concept to be taken into account in this work is that of the stages defined for the creation of a software product. In this sense, it is important to point out that the creation of software is a spiral process.
In the same way, two ways of approaching these stages of web development solutions are defined: linear and iterative.
The linear form consists in passing sequentially through the four stages, while in the iterative approach repetitions of the software cycle itself are carried out until the decision to use one or the other approach is conditioned by various factors, such as the needs of the project, the budget, or the type of product to be web development solutions, among others. The role that the User Experience Designer plays in software design can be seen as a communicative process. That is, the web programming company becomes a mediator between:
The communicative needs established by the person or institution that requests or orders the product (clients).The informative and functional needs of the people who will use the product (users).
In this way, the function of the web programming company is precisely to achieve a balance in this communication process between Issuers (clients) and Recipients (users).
The methodological approaches to creating a product are not rigid. In the case of software creation, the design stages are conditioned by the three elements described, which point out that every project is relative to the users, context and specific contents in each case.
This approach reinforces a phrase that has become a slogan for all those who work as a best web development company: “It depends”. In the design of software, there is nothing absolute, the most accurate design decisions vary depending on the context, content and users. That is why it is difficult to define rigid guidelines or methodologies for its realization, and it is essential that designers flexibly address each specific project.
The methodological approach proposed in the present work is based on the custom software development services stages described above. An approach that consists of four basic elements for understanding:
Stages: Are those that respond to elapsed time when?
Activities or tasks: Are those that respond to the process? What?
Techniques: Are those that respond to what is done to achieve the processes and task, how?
Tools: Are those that respond to what is used to apply the techniques with what?
The stages are divided into four moments through which the work of the software designer takes place:
Research: in which you get all the possible information of the project, users and product to be designed.
Organization: in which all the information is processed to turn it into a product.
Design: in which the design of the product is defined based on what is organized.
Test: in which the quality of the proposed design is checked.
These stages can be viewed in the same way that the stages of the software life cycle were seen, that is, both linearly and iteratively. The result of these stages materializes in the form of deliverables or artifacts.
Activities or Tasks
Below are the activities or tasks that would be carried out mainly during each stage.
STAGE 1 – INVESTIGATION
During this stage it is about obtaining as much information as possible and necessary for the project to be carried out, both about the client and the users. The correct balance between demands and needs of each other is what leads to the success of the product to be created.
• Define the general needs of the project.
• Define the general theme of the product to be made or redesigned.
• Define the objectives of the clients or issuers with the product.
• Define the communicative intention of the product (Inform, entertain, alert)
• Define the type of product that is desired.
• Define in general terms the users of the product, its context of use, and the contents that the same will have.
• Define scenarios
• Define the processes that users perform in their real contexts.
• Define the business model.
• Make a SWOT matrix (SWOT).
• Define a problem bank of the context of use.
• Perform flowcharts of processes and activities.
• Conduct a market study and/or similar products that you want to make or redesign.
STAGE 2 – ORGANIZATION
This is the stage that most relates to artistic expression. It is when the designer uses both scientific-technical and cultural criteria to organize all the information obtained during the previous stage.
• Represent all the possible structures of the contents, according to the needs of users and their context.
• Define all the ways of ranking the themes and contents.
• Match the structures proposed to the needs of both issuers (customers) and receivers (users).
• Define all the functional flows that the custom software development services will have, corresponding with the real flows of the users in their context.
• The artifacts generated during this stage would be Handwritten diagrams and annotations in the form of a draft.
STAGE 3 – DESIGN
• It is the stage in which the results of the previous stage are captured, now with all the technical requirements in order to be understood by users, clients and the rest of the work team.
• Define the structure of the product (taxonomy and organization diagrams or blueprints).
• Define the operation of the product (operation diagrams).
• Define product screens (presentation diagrams or wireframes).
• Define the services and functionalities that the product will have.
• Define the product labels (labelling).
• Create low and high-level prototypes
• The artifacts generated during this stage would be Digital diagrams and prototypes, product reports.
STAGE 4 – PROOF
It is the stage in which the design proposals are checked. The tests are carried out with both clients and users. With the clients with the objective of knowing if the objectives and demands have been achieved. And with the users, in order to know the identified needs resolved.
• Prototype tests.
• Review of diagrams
• Verification of robustness in the labelling.
• Understanding the services designed by users.
• The artifacts generated during this stage would be: Evaluative reports
The possibility of methodizing the software design process allows best web Development Company to know approaches of UI/ UX that may be useful in their contexts. This does not mean that this proposal is an unalterable formula but, on the contrary, it must be a modifiable and adaptable guide to the needs of its users, content and context.