smart软件编程