The first stage in the development of AI-powered applications is a marketing analysis of competitor products and the study of distinctive features of such a software. AI projects are different and require a unique, end-to-end solution, even if the developer company has previously had experience working with a seemingly similar application. Although developers use a large number of proven models and approaches to working with AI in practice, it is not possible to apply them in their pure form due to a large amount of initial data. Therefore, the development of projects based on AI has more in common with scientific research rather than with traditional writing software. Below we will consider the specifics of this direction.
Conventionally, AI-powered applications can be refered to one of the following four groups:
Simple. Such projects are created on the basis of a ready-made model, and their implementation allows the use of publicly available data sets and relevant and popular technologies:
Of medium complexity. Even understanding technology needed for a program, developers still make efforts to collect and prepare data for writing it:
Complex AI-powered applications are projects that require extensive research. The developer understands how the model works and how to use the current data. It is easy to predict the steps required to train the model for the given tasks. But on the basis of experience, it is impossible to foresee the functioning of the application, since we do not know the behavior of the model thoroughly. Therefore, a mandatory step is a long-term test and case study.
Very complex projects of industrial orientation, that need additional efforts to achieve the goal.
In order to minimize possible obstacles in the application development process, it is important to classify its ownership correctly in advance. This will allow, if necessary, to perform preliminary research.
Read also: AI for Healthcare
If the operation of a product without AI technology is easy to predict, in the case of AI, there are often some difficulties: functions do not meet developers expectations. Therefore, it is important to understand the reason for the unpredictability of such products. If you imagine an AI-powered application development environment, it will resemble a three-level pyramid. This pyramid contains complex technologies and solutions that can be used immediately, without further development and adaptation.
The top level represents finished products that can be used in the AI development process. These are third-party libraries or APIs. So, among the successful examples are solutions that allow you to detect check fraud, recognize faces or identify objects. At the second level there are new niches with a description of business tasks. Let's say you have an optimal model with which you can solve your problems, but the technology needs to be adapted or modified to be more effective. At the same time, such a model is used only in a specific case, with this project, respectively, “twisting” the technology entails the creation of a new niche.
At the bottom of the pyramid is scientific research, such as articles and new models. There is no need to talk about the readiness of this level for use in the development process, since there is no understanding of the results the model built with their help will produce. The deep level of the AI system requires deep analysis and further research, although it is not the basis for immediately starting development using these resources.
The differences between developing AI-powered applications and software without this technology are not so significant. The difference is that in the first case, the process includes a PoC (Proof of Concept) component with a demonstration. That is, the IA and UI/UX stage starts only when there is already a demo version and a ready-made AI component.
The key to understanding the complexity of the upcoming solution is to answer the question: what are the needs and data of the customers who will use this product? This is the first question developers ask the owner to outline the scope of the work - whether it will be an application with AI as the core of the product or an additional component.
It may not be so important for the client to use the most accurate and up-to-date solution for the application to work. Therefore, in the analysis phase, the company determines whether the product will work less efficiently if it does not implement AI, and whether it is worth building an application without AI in general. After resolving this issue, the development team moves on to the next stage.
Now the decision is made: whether to create an AI-powered application from the scratch, or to implement this component in a previously developed solution. What advantages and differences between the applications of the two groups are, we will consider below.
Read also: Application Development for Pharmacies
The decision to develop AI for an application from the scratch or implement a ready-made solution depends on a number of factors, such as the uniqueness of the task, time and budget, expertise and resources, and the availability of ready-made solutions on the market. Developing AI from the scratch can take a significant amount of time and require a significant investment. If you have limited resources or tight deadlines, then implementing a turnkey solution may be a more cost-effective option. When deciding to develop AI from the scratch for an application, you should consider the following strategic questions and make decisions accordingly:
Project goals and requirements:
Choice of technologies and tools:
Data access:
Resources and Expertise:
Risk assessment and management:
Testing and Performance Evaluation:
Contact AI experts or an AI company for specific guidance and assessment of your specific situation.
The use of AI technology based on a previously written application has its own specifics. Based on their experience, the SDH team can say that in most cases it is necessary to refine with the help of AI those projects that were originally created without prior regard to the possible functions of AI. And since, at its core, AI is part of the data pipeline, its integration into the program involves making some changes to the product architecture. When evaluating applications from the perspective of AI, you can divide them into several groups. DB based projects:
Projects that do not work on the database:
To understand the differences between such applications, we will consider below the process of developing PoC with the subsequent integration of AI into projects with and without a database.
The creation of such products includes 5 stages.
Business analysis. At this stage, it is important to receive input data from the customer, based on which it will be possible to determine business tasks and ways to solve them. For example, if you want to reduce food waste in a restaurant and balance the level of buying and selling, we suggest building an application based on time series forecasting with machine learning technology.
The designation of a problem for machine learning technology is related to such aspects as the technological capabilities of AI, computer vision, natural language processing, speech recognition, etc.
Data sources. Data can be of special and general type. General data is available on open source sites, and the task of the performers is to narrow down the target audience. If the general data is not publicly available or incompatible with the audience, it is taken from other sources. These are open source data, parsing, data annotation, obtaining information through a simpler product (questions to the client in a chatbot), specific data and synthetic information in the form of graphs and charts.
The next step is to identify technical and business indicators. It is important for the project owner to know how accurate their product will be, and the developer is not always ready to answer this question. This is where the ROC indicator comes in handy. So, in the case of a waste reduction application, you need an indicator for predicting purchases MAPE (Mean Absolute Percentage Error), for a secure login - an error rate EER, for classification - the accuracy of correctly recognized objects and creatures. In addition, before starting the PoC, it is necessary to determine the restrictions - their meaning often becomes clear a little later, during implementation. After the data is prepared, the work is carried out on PoC, metrics, measurement of results, and demonstration, and the study completes the formalized report.
The PoC stage for a new AI project involves taking into account the specifics of the technology, that is, starting work from the riskiest segments. In this case, other areas of work are not affected. When it comes to developing PoC for existing applications, the work is done in three steps: collecting data from applications, building an isolated environment using previously collected data, and deploying trained AI component.
PoC iteration with improvements and deployment involves data processing, case processing, etc.
Customers are interested in issues related to the timing, budget, related to the implementation of PoC tasks. The high unpredictability of AI projects makes it difficult to hypothetically estimate how long the work will take and how much it will cost. Generally speaking, a simple AI task will take 2-3 weeks, a project with known technologies 3-4, a thorough research will take up to 3 months. In the latter case, it is important to break down the scope of work into smaller steps to keep track of the process.
At the launch stage of any project, risks or other obstacles may arise, the reason for which is the suitability of the data, the operation of the algorithms, and the implementation. To reduce risks, product development is started if the accuracy of AI meets the tasks and forecasts. Software Development Hub is among the companies developing artificial intelligence in the field of accounting and auditing, and healthcare. The team soberly assesses the risks of working with AI for enterprises and creates conditions to minimize customer concerns. Our goal is to quickly adapt AI for the correct functioning of the application and the solution of business problems. Besdes, experts will advise on the implementation of AI technology in your product, taking into account the specifics of the work.
Our portfolio includes medical information systems, e-Prescription systems, applications for tracking medicines with a QR scanner, medical ERP systems, etc.
Drop us a line, and we provide you with a qualified consultation.