uses of configuring hardware and software