The study of computer systems, having several computing elements, with the goal of improving the quality of attributes such as cost, performance, programmability, extendability and functionality.
The study includes the interrelation software/firmware/hardware in specification, design and implementation.