Maintenance Assistant is one of the few Computerized Maintenance Management System available on the market. Unfortunately, there is not enough information regarding its features and built-in modules, therefore I can't really say if it supports all those you mentioned in your inquiry, but it appears that Maintenance Assistant is now called Fiix. The old URL leads to this new application that you can access using the following link.