O conjunto específico de atributos que se pode propor a um software, tem relação direta com sua aplicação. Sabemos disto, porém, se formos considerar os atributos essenciais para o desenvolvimento de um bom software, poder-se afirmar que os atributos essenciais são:.