A novel approach for mobile maintenance using mobile agents technology and mobile devices