A storage apparatus comprising: a calculation unit configured to calculate an upper limit of an input/output processing amount, which is determined based on priority levels set to a plurality of storage devices, for each of the storage devices; a scheduling unit configured to schedule an execution sequence of processes relating to input/output requests received from information processing apparatuses (10a and 10b), based on processing amounts relating to the input/output requests and the upper limits; an execution unit configured to execute the processes relating to the input/output requests in the execution sequence scheduled by the scheduling unit; a first determination unit configured to determine, for each of the storage devices, whether or not a processing amount relating to the input/output requests for the each of the storage devices exceeds a processing performance of the each of the storage devices for a first predetermined time; characterised in that the storage apparatus further comprises: a change unit configured to change the upper limit for the each of the storage devices by a value corresponding to a predetermined unit of performance accommodation in a case where the processing amount relating to the input/output requests for the each of the storage devices is determined to exceed the processing performance of the each of the storage devices by the first determination unit; wherein the value corresponding to the predetermined unit is equal to a minimum interval of the input/output processing amount that is determined based on the priority levels, and the performance accommodation represents that a part of processing performance of a storage device having processing performance to spare is accommodated to a storage device having processing performance insufficiency so as to resolve insufficiency of processing performance in the storage device having processing performance insufficiency. a calculation unit configured to calculate an upper limit of an input/output processing amount, which is determined based on priority levels set to a plurality of storage devices, for each of the storage devices; a scheduling unit configured to schedule an execution sequence of processes relating to input/output requests received from information processing apparatuses (10a and 10b), based on processing amounts relating to the input/output requests and the upper limits; an execution unit configured to execute the processes relating to the input/output requests in the execution sequence scheduled by the scheduling unit; a first determination unit configured to determine, for each of the storage devices, whether or not a processing amount relating to the input/output requests for the each of the storage devices exceeds a processing performance of the each of the storage devices for a first predetermined time; a change unit configured to change the upper limit for the each of the storage devices by a value corresponding to a predetermined unit of performance accommodation in a case where the processing amount relating to the input/output requests for the each of the storage devices is determined to exceed the processing performance of the each of the storage devices by the first determination unit; wherein the value corresponding to the predetermined unit is equal to a minimum interval of the input/output processing amount that is determined based on the priority levels, and the performance accommodation represents that a part of processing performance of a storage device having processing performance to spare is accommodated to a storage device having processing performance insufficiency so as to resolve insufficiency of processing performance in the storage device having processing performance insufficiency.