What is a non-clustered index scan
A non-clustered index scan may be chosen in this scenario:


the optimizer determines that it is cheaper to scan all rows rather than perform seeks/range scans
the non-clustered index is "skinnier" than the clustered index
the non-clustered still covers the columns needed by the query (or it covers enough of them and a lookup for the remainder is still cheaper than a clustered index scan)


It can also happen, obviously, if you have a heap (no clustered index) and 3. is still true.

This is not meant to be an exhaustive list - there are other cases where a non-clustered index scan may be chosen, but this is probably the most common.