XML 46 R45.htm IDEA: XBRL DOCUMENT
v3.20.1

Note 17 - Stock-based Compensation Plans (Tables) | 12 Months Ended
--- | ---
Jan. 31, 2020
Notes Tables |
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] |
Year Ended |  |  | January 31, |  |  |  | January 31, |  |  |  | January 31, |
|  |  | 2020 |  |  |  | 2019 |  |  |  | 2018 |
Cost of revenues |  |  | 220 |  |  |  | 160 |  |  |  | 90 |
Sales and marketing |  |  | 706 |  |  |  | 436 |  |  |  | 246 |
Research and development |  |  | 281 |  |  |  | 184 |  |  |  | 85 |
General and administrative |  |  | 3,702 |  |  |  | 2,930 |  |  |  | 2,386 |
Effect on net income |  |  | 4,909 |  |  |  | 3,710 |  |  |  | 2,807 |
Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] |
Year Ended |  |  | January 31, 2020 |  |  |  | January 31, 2019 |  |  |  | January 31, 2018 |
Expected dividend yield (%) |  |  | – |  |  |  | – |  |  |  | – |
Expected volatility (%) |  |  | 23.5 |  |  |  | 23.6 |  |  |  | 23.5 |
Risk-free rate (%) |  |  | 1.4 |  |  |  | 2.0 |  |  |  | 1.0 |
Expected option life (years) |  |  | 5 |  |  |  | 5 |  |  |  | 5 |
Share-based Payment Arrangement, Option, Activity [Table Text Block] |
|  |  | Number of Stock Options Outstanding |  |  |  | Weighted- Average Exercise Price |  |  |  | Weighted- Average Remaining Contractual Life (years) |  |  |  | Aggregate Intrinsic Value (in millions) |
Balance at January 31, 2018 |  |  | 657,209 |  |  | $ | 18.21 |  |  |  | 4.9 |  |  |  | 5.7 |
Granted |  |  | 272,144 |  |  | $ | 27.96 |  |  |  |  |  |  |  |  |
Exercised |  |  | (46,065 | ) |  | $ | 11.75 |  |  |  |  |  |  |  |  |
Forfeited |  |  | (3,950 | ) |  | $ | 26.43 |  |  |  |  |  |  |  |  |
Balance at January 31, 2019 |  |  | 879,338 |  |  | $ | 21.41 |  |  |  | 4.7 |  |  |  | 8.7 |
Granted |  |  | 367,173 |  |  | $ | 38.06 |  |  |  |  |  |  |  |  |
Exercised |  |  | (94,970 | ) |  | $ | 15.62 |  |  |  |  |  |  |  |  |
Forfeited |  |  | (23,719 | ) |  | $ | 31.93 |  |  |  |  |  |  |  |  |
Balance at January 31, 2020 |  |  | 1,127,822 |  |  | $ | 26.82 |  |  |  | 4.6 |  |  |  | 20.2 |
Vested or expected to vest at January 31, 2020 |  |  | 1,127,822 |  |  | $ | 26.82 |  |  |  | 4.6 |  |  |  | 20.2 |
Exercisable at January 31, 2020 |  |  | 718,169 |  |  | $ | 22.88 |  |  |  | 4.0 |  |  |  | 15.7 |
Share-based Payment Arrangement, Option, Exercise Price Range [Table Text Block] |
|  | Options Outstanding |  | Options Exercisable
Range of Exercise Prices |  |  | Weighted Average Exercise Price |  |  |  | Number of Stock Options |  |  |  | Weighted Average Remaining Contractual Life (years) |  |  |  | Weighted Average Exercise Price |  |  |  | Number of Stock Options |
$11.43 – $11.59 |  | $ | 11.57 |  |  |  | 126,500 |  |  |  | 1.4 |  |  | $ | 11.57 |  |  |  | 126,500 |
$18.71 – $22.57 |  | $ | 21.17 |  |  |  | 397,014 |  |  |  | 3.8 |  |  | $ | 21.08 |  |  |  | 357,014 |
$25.91 – $27.50 |  | $ | 27.49 |  |  |  | 247,935 |  |  |  | 5.2 |  |  | $ | 27.49 |  |  |  | 140,461 |
$38.04 – $39.70 |  | $ | 38.07 |  |  |  | 356,373 |  |  |  | 6.2 |  |  | $ | 38.06 |  |  |  | 94,194 |
|  | $ | 26.82 |  |  |  | 1,127,822 |  |  |  | 4.6 |  |  | $ | 22.88 |  |  |  | 718,169 |
Schedule of Nonvested Share Activity [Table Text Block] |
|  |  | Number of Stock Options Outstanding |  |  |  | Weighted-Average Grant-Date Fair Value per Share |
Balance at January 31, 2018 |  |  | 276,067 |  |  | $ | 4.98 |
Granted |  |  | 272,144 |  |  | $ | 7.10 |
Vested |  |  | (219,043 | ) |  | $ | 5.56 |
Forfeited |  |  | (3,950 | ) |  | $ | 6.41 |
Balance at January 31, 2019 |  |  | 325,218 |  |  | $ | 6.18 |
Granted |  |  | 367,173 |  |  | $ | 8.99 |
Vested |  |  | (259,269 | ) |  | $ | 6.96 |
Forfeited |  |  | (23,469 | ) |  | $ | 7.69 |
Balance at January 31, 2020 |  |  | 409,653 |  |  | $ | 8.03 |
Share-based Payment Arrangement, Performance Shares, Outstanding Activity [Table Text Block] |
|  |  | Number of PSUs Outstanding |  |  |  | Weighted- Average Granted Date Fair Value |  |  |  | Weighted- Average Remaining Contractual Life (years) |  |  |  | Aggregate Intrinsic Value (in millions) |
Balance at January 31, 2018 |  |  | 440,520 |  |  | $ | 15.91 |  |  |  | 6.1 |  |  |  | 11.9 |
Granted |  |  | 54,351 |  |  | $ | 35.23 |  |  |  |  |  |  |  |  |
Performance units issued |  |  | 35,512 |  |  | $ | 19.59 |  |  |  |  |  |  |  |  |
Balance at January 31, 2019 |  |  | 530,383 |  |  | $ | 18.02 |  |  |  | 5.5 |  |  |  | 16.6 |
Granted |  |  | 53,729 |  |  | $ | 53.65 |  |  |  |  |  |  |  |  |
Performance units issued |  |  | 45,762 |  |  | $ | 23.24 |  |  |  |  |  |  |  |  |
Balance at January 31, 2020 |  |  | 629,874 |  |  | $ | 21.19 |  |  |  | 5.0 |  |  |  | 28.2 |
Vested or expected to vest at January 31, 2020 |  |  | 629,874 |  |  | $ | 21.19 |  |  |  | 5.0 |  |  |  | 28.2 |
Exercisable at January 31, 2020 |  |  | 521,794 |  |  | $ | 16.45 |  |  |  | 4.3 |  |  |  | 23.4 |
Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] |
|  |  | Number of RSUs Outstanding |  |  |  | Weighted- Average Granted Date Fair Value |  |  |  | Weighted- Average Remaining Contractual Life (years) |  |  |  | Aggregate Intrinsic Value (in millions) |
Balance at January 31, 2018 |  |  | 299,020 |  |  | $ | 12.80 |  |  |  | 6.1 |  |  |  | 8.1 |
Granted |  |  | 38,046 |  |  | $ | 27.96 |  |  |  |  |  |  |  |  |
Balance at January 31, 2019 |  |  | 337,066 |  |  | $ | 14.42 |  |  |  | 5.6 |  |  |  | 10.6 |
Granted |  |  | 37,611 |  |  | $ | 38.04 |  |  |  |  |  |  |  |  |
Balance at January 31, 2020 |  |  | 374,677 |  |  | $ | 16.57 |  |  |  | 5.0 |  |  |  | 16.8 |
Vested or expected to vest at January 31, 2020 |  |  | 374,677 |  |  | $ | 16.57 |  |  |  | 5.0 |  |  |  | 16.8 |
Exercisable at January 31, 2020 |  |  | 336,921 |  |  | $ | 14.56 |  |  |  | 4.6 |  |  |  | 15.1 |
Schedule Of Cash Settled Restricted Share Unit Plan Activity [Table Text Block] |
|  |  | Number of CRSUs Outstanding |  |  |  | Weighted- Average Remaining Contractual Life (years) |
Balance at January 31, 2018 |  |  | 58,171 |  |  |  | 1.5 |
Granted |  |  | 32,261 |  |  |  |  |
Vested and settled in cash |  |  | (45,369 | ) |  |  |  |
Balance at January 31, 2019 |  |  | 45,063 |  |  |  | 1.6 |
Granted |  |  | 30,086 |  |  |  |  |
Vested and settled in cash |  |  | (32,422 | ) |  |  |  |
Balance at January 31, 2020 |  |  | 42,727 |  |  |  | 1.6 |
Non-vested at January 31, 2020 |  |  | 42,727 |  |  |  | 1.6 |

X
- Definition Schedule of cash settled under restricted share units. + References No definition available. + Details
Name: | dsgx_ScheduleOfCashSettledRestrictedShareUnitPlanActivityTableTextBlock
Namespace Prefix: | dsgx_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SAB Topic 14.F) -URI http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901 + Details
Name: | us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the changes in outstanding nonvested shares. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (d) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (f)(2) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year. + References No definition available. + Details
Name: | us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the number and weighted-average grant date fair value for outstanding performance shares. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationPerformanceSharesAwardOutstandingActivityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_TableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration