Takes problem description in the input
Solves problems relating to development of technical and computational systems
Codes solutions for the problems
Represents the solutions in a formal language to allow their analysis or execution
Gets meanings of new concepts and uses them to meet more and more requirements
The true AI for your development project