<< Chapter < Page | Chapter >> Page > |
Se estamos falando do SASF, entre suas funções, podemos citar:
Se o problema de desenvolver software fosse apenas o de atender aosrequisitos funcionais, desenvolver software já poderia ser considerado uma tarefa difícil.Isso porque, para serem atendidos, muitos dos requisitos funcionais necessitam deconhecimento que ultrapassa os limites da Engenharia de Software, da Ciência daComputação ou mesmo da Matemática. Afinal, para se implementar sistemas para Computer-Aided Design (CAD) ou sistemas que analisam os dados extraídos do Large Hadron Collider (LHC) (External Link) é preciso grande conhecimento específico ao domínio do problema, ou seja,grande conhecimento de outras engenharias ( por ex. , Engenharia Mecânica e Civil) ou de outrasciências ( por ex. , Física e Química), respectivamente.
Além da necessidade de conhecimento específico ao domínio do problema,há outra dificuldade no desenvolvimento de software para atender apenas aos requisitosfuncionais: o cliente pode não ter certeza sobre o que ele quer do software. Estacondição é bem conhecida pela Engenharia de Requisitos, que nos provê algumas técnicaspara resolvê-la ou contorná-la. Mas isso não quer dizer que não possa se tornarum problema durante o ciclo desenvolvimento. Afinal, se o principal interessado nãosabe bem quais funções se espera que o sistema realize, não podemos afirmar queserá fácil desenvolver esse sistema.
Por outro lado, há também os requisitos não-funcionais. Esses estãorelacionados à qualidade da realização dos requisitos funcionais, ou seja, como essas funções são realizadas.
Esses requisitos também são impostos pelos diversos stakeholders do software e estão normalmente relacionados a interfaces com o usuário, capacidades,consumo de recursos e escalas de tempo.
Podemos citar alguns exemplos de requisitos não-funcionaisdo SASF:
Notification Switch
Would you like to follow the 'Arquitetura de software' conversation and receive update notifications?