AI Solution Design: First Steps
Dr. Atif Farid Mohammad PhD
Chief AI | Cyber Security | Officer | AI Advisory Board CapTechU | AI/ML/Quantum Computing | Chair | Board Member | Professor, Adjunct
Artificial Intelligence Solution Design employs practices of Software Engineering in relatively semi-standardized Software Engineering methodologies. An Artificial Intelligence Agent can be designed for a simple designated task of sorting the data coming in some raw form only alphabetically. This AI Agent should be provided requirements with clarifications for the potential assigned task(s) as its Knowledgebase. A standard AI Agent is a code within a program, that encompasses Program Requirements with Design Decisions with Design Constraints.
AI Agent's Program Requirements have cost associated with in terms of resource(s), such as data ingesting, pre-processing (cleaning, etc.) processing (application of mathematical algorithm(s) within to the final) throughput. An AI Agent has to complete all actions to complete assigned tasks. It is vital to follow the practices of having requirements classified as Functional and Nonfunctional. An AI Agent has functional requirements as depicted in the given picture.
Whereas the Nonfunctional Requirements are depicted as follows:
In simple words functional requirements are for the agent to "I want fish", where nonfunctional requirements are "They said that they wanted fish". When we have to start working on a design of an AI Agent, we must elicit requirements from the stakeholders on the functional aspects of the system to start with, we also need to understand from the stakeholder what attributes the agent should provide in order to meet their goals, suppose it is for a Robotic Process Automation.
The main challenge here is the elicitation of non-functional requirements than the functional requirement, as the stakeholders/users are usually most aware and can articulate the functional requirements well; it is possible that they may not be aware of explicitly stating non-functional requirements also known as NFRs. These are implicit by nature, stakeholders usually assume them to exist without being asked. The dealing of an AI Agent with speed of the system e.g., response time, throughput come under performance. Whereas the impact if the system is not available for the customer, technically is the availability of the agent. Another key area is data retention (5, 7 or 11 years ???) with the ease of access (usability), while being secure and stable and compliant (compliance) with the associated laws (ITAR/EAR/HIPPA, etc.).
The AI Agent design should be able to calculate the probability of system performing without failure is another trait and is known as reliability. There are several other factors that one must address and these are AI Agent recoverability from a failure, with data integrity and system capacity enhancements in terms of scalability alongside accessibility both within and without of the system(s) where AI Agent is performing some tasks in batch or in parallel.
Hopefully this article is helpful in understanding the first steps of AI solution design.
Note: Author is an AI Professor in adjunct capacity and a Senior Research Scientist.