I would like to be able to update the Severity defect field automatically after a specified amount of time. Once the defect is assigned to a member of the Developer user group, I would like to raise the severity of the defect if the defect Status has not been changed to "fixed" after a given amound of time.
For example, suppose the Severity of a defect is originally set to "high" and assigned to a developer. If the developer has not changed the Status of the defect to "fixed" within 24 hours, the Severity should be upgraded to "critical."
You could tie into the Defects_EnterModule in the workflow code to perform a database query pulling back all the defects that meet your criteria, then if they need to be changed, follow it up with a database update statement. this will hapen each time someone enters or changes into the Defects module (you might want to limit it to only perform the action if the user is in a specific group like Admin, or QA depending on how many users you have using the Defects module as it could overwhelm your database with requests/commands)
The only thing you will have to do as well to this is log some type of information as to what changed the status, otherwise if you make the change without any note it will report as 'unknown' when you look at history and see who made the change.
Insanity: doing the same thing over and over again and expecting different results
Tony has the right idea. You may also want to limit how many times this logic is executed. For instance, only run it once per day or once per hour. Look at the OTA Guide for details about using the Settings object to store custom Project settings. You could store the last run time there, and then bypass your execution if the last run time was within an acceptible time.