def resolve_configuration(self, configuration):
        """
        Resolve requirements from given JSON encoded data.
        The JSON should follow the testcase meta-data requirements field format. This function
        will resolve requirements for each individual DUT and create a DUT requirements list
        that contains the configuration for each DUT, eg:
        {
            "duts": [
                { "*": {"count": 2, "type": "process" } }
            ]
        }
        would result in the following configuration:
        [
            { "1": {"type": "process", "allowed_platforms": [], "nick": None }
            { "2": {"type": "process", "allowed_platforms": [], "nick": None }
        ]

        :param requirements: optional argument if requirements come from external source,
        should be similar to the following format:
        {
            "duts": [
                { "*": {"count": 2, "type": "process" } }
            ]
        }

        """
        configuration = configuration if configuration else self.json_config
        self._resolve_requirements(configuration["requirements"])
        self._resolve_dut_count()