When granting a software license:
- the right to modify the software
- the right to create derivative works
Are these two distinct rights or the one and the same right said in two different ways?
"Derivative work" is, in general, broader than modification. For example, a t-shirt with an image of an application's UI is a derivative work of the application.
In software licenses, though, the term may be defined more specifically rather than less. For example, in the Apache license quoted by Zizouz212, you have the clause
and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship.
This implies that slight modifications do not create a derivative work.
A derivative work is, quite simply, a modification of an existing work, such that it can be reasonably assumed that the derivative work could not exist without the already existing work.
Since you're talking software, let's pull out a software license! Notably, let's take the Apache license:
"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
In software, making a work based on another work (excluding the fact that your work only links, i.e. makes API Calls -
ApacheAPI.do_something(). Mind you, other licenses may change the definition of a derivative work, and this is not universal to all licenses) is a derivative work. To make a derivative work requires modifying, or creating a new work that is heavily reliant on the existing work.
They are basically the same thing. Modifying the software falls under making a derivative work.