Проектирование программного обеспечения — это процесс реализации программных решений для одного или нескольких наборов проблем. Одной из важных частей проектирования программного обеспечения является анализ требований к программному обеспечению (SRA). Это часть процесса разработки программного обеспечения, в которой перечислены спецификации, используемые при разработке программного обеспечения.