This method extracts only the "ConcreteJob" class
        from modules that were collected by ConfigReader._get_modules().
        And, this method called Subject.notify(),
        append "ConcreteJob" classes to JobObserver.jobs.

def _register_jobs(self):
        """
        This method extracts only the "ConcreteJob" class
        from modules that were collected by ConfigReader._get_modules().
        And, this method called Subject.notify(),
        append "ConcreteJob" classes to JobObserver.jobs.
        """

        # job_name is hard-corded
        job_name = 'ConcreteJob'
        modules = self._get_modules()

        for section, options in self.config.items():

            if section == 'global':
                continue

            try:
                name = options['module']
            except KeyError:
                raise ConfigMissingValue(section, 'module')

            try:
                job = getattr(modules[name], job_name)
                self.notify(name, job)
            except KeyError:
                raise NotSupportedError(name)