views:

99

answers:

2

I was asked this question in an interview.

What are functional and non functional parts of an application ?

+10  A: 

Functional parts are those that relate to the function of the application - what it does.

Non functional are the parts that do not directly relate to the function - things like:

  • performance
  • quality
  • portability
  • maintainability
  • quality
  • availability
  • extensibility
  • and many more...

For example, in a calculator application, the functional parts are how the input and output work and the calculation logic/operation itself.

Non functional would be the usability, quality, performance and other aspects that do not have direct bearing on the calculator operations.

Oded
I would add maintainability, availability and extensibility to this.
Daniel Dyson
+3  A: 

Functional relates to the features of the application. i.e. what it does. The non-functional parts are characteristics like:

  • performance
  • compatibility with previous versions
  • security
  • usability
  • how well it performs under load
  • how it handles failover scenarios
mikej
I'd put *what* in boldface, too.
reinierpost
@reinierpost Done. Thanks for the suggestion.
mikej