- Understand your business needs
- Understand your user needs
- Brainstorming ideas for the software
- Filter out the bad ideas
- Create an outline such as a mind map
- Identify project restraints
- Identify project requirements
- Prioritize requirements
- Determine the required technologies and level of expertise
- Create a timeline
- Creating a prototype
- Develop the software
- QA/Testing
- Maintenance and support
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence