private void SeedDbDevLaborVolumeRanges(DevelopmentLabor[] dbLabors, RangeFeature[] dbEntityCountRanges)
        {
            RangeFeature _0_10  = dbEntityCountRanges[0];
            RangeFeature _10_30 = dbEntityCountRanges[1];
            RangeFeature _30_50 = dbEntityCountRanges[2];

            var labors = new DevelopmentLaborsContainer(dbLabors);

            var rb = new DevelopmentLaborVolumeRangeBuilder();

            LaborVolumeRange[] dbDevLaborVolumeRanges =
            {
                rb.SetLabor(labors[901]).Create(_0_10,   0.0, 0.5),
                rb.Create(_10_30,                        0.0, 0.5),
                rb.Create(_30_50,                       1.0),

                rb.SetLabor(labors[902]).Create(_0_10,   0.0, 0.5),
                rb.Create(_10_30,                        0.0, 0.5),
                rb.Create(_30_50,                       1.0),

                rb.SetLabor(labors[903]).Create(_0_10,   0.0, 0.5),
                rb.Create(_10_30,                       1.0),
                rb.Create(_30_50,                        1.0, 1.5),

                rb.SetLabor(labors[904]).Create(_0_10,   0.0, 0.5),
                rb.Create(_10_30,                        0.5, 1.0),
                rb.Create(_30_50,                       1.0),

                rb.SetLabor(labors[1001]).Create(_0_10,  0.5, 1.0),
                rb.Create(_10_30,                        0.5, 1.0),
                rb.Create(_30_50,                        1.0, 1.5),

                rb.SetLabor(labors[1002]).Create(_0_10, 1.0),
                rb.Create(_10_30,                       1.0),
                rb.Create(_30_50,                        1.5, 2.0),
            };
            dbContext.AddRange(dbDevLaborVolumeRanges);
        }
        private LaborVolumeRange[] SeedSoftwareDevLaborVolumeRanges()
        {
            var _PHP_JS           = this.devEnvironments[0];
            var _Perl_Ruby_Pyton  = this.devEnvironments[1];
            var _Cpp_Cs_Java_ObjC = this.devEnvironments[2];
            var _Asm = this.devEnvironments[3];

            var labors = new DevelopmentLaborsContainer(softLabors);

            var rb = new DevelopmentLaborVolumeRangeBuilder();

            LaborVolumeRange[] ranges = new LaborVolumeRange[]
            {
                rb.SetRangeFeature(_PHP_JS).Create(labors[103], 1, 2),
                rb.Create(labors[104], 1),
                rb.Create(labors[105], 1, 2),
                rb.Create(labors[107], 1.5),

                rb.Create(labors[202], 0.5, 1.5),
                rb.Create(labors[203], 1, 1.5),
                rb.Create(labors[204], 1.5),
                rb.Create(labors[205], 2.5),
                rb.Create(labors[206], 1.5),

                rb.Create(labors[301], 0.5, 1),
                rb.Create(labors[303], 1),
                rb.Create(labors[305], 1),

                rb.Create(labors[401], 0.5, 1),
                rb.Create(labors[402], 1),

                rb.Create(labors[501], 3.5),
                rb.Create(labors[504], 0.5, 1),
                rb.Create(labors[506], 1),

                rb.Create(labors[704], 1),

                rb.Create(labors[801], 0),
                rb.Create(labors[802], 0, 0.5),
                rb.Create(labors[803], 0.5, 1),

                rb.SetRangeFeature(_Perl_Ruby_Pyton).Create(labors[101], 0.5, 1),
                rb.Create(labors[102], 0.5, 1.5),
                rb.Create(labors[104], 1, 2),
                rb.Create(labors[107], 1.5),

                rb.Create(labors[201], 2, 3),
                rb.Create(labors[203], 1, 1.5),
                rb.Create(labors[205], 2.5),
                rb.Create(labors[206], 1.5),

                rb.Create(labors[301], 1.5),
                rb.Create(labors[302], 2, 2.5),
                rb.Create(labors[303], 1.5),
                rb.Create(labors[305], 1),
                rb.Create(labors[306], 0, 0.5),

                rb.Create(labors[401], 1),
                rb.Create(labors[402], 1),
                rb.Create(labors[403], 3, 4),

                rb.Create(labors[501], 3.5),
                rb.Create(labors[502], 4),
                rb.Create(labors[503], 1.5, 2.5),
                rb.Create(labors[504], 1),
                rb.Create(labors[505], 1, 2),
                rb.Create(labors[506], 1),
                rb.Create(labors[507], 2, 3),
                rb.Create(labors[508], 2, 3),
                rb.Create(labors[509], 2),

                rb.Create(labors[701], 1),
                rb.Create(labors[702], 2),
                rb.Create(labors[704], 0.5, 1),
                rb.Create(labors[705], 3, 4),

                rb.Create(labors[801], 0),
                rb.Create(labors[802], 0, 0.5),
                rb.Create(labors[803], 0.5, 1),


                rb.SetRangeFeature(_Cpp_Cs_Java_ObjC).Create(labors[101], 0.5, 1.5),
                rb.Create(labors[102], 2),
                rb.Create(labors[103], 3, 4),
                rb.Create(labors[104], 2),
                rb.Create(labors[106], 1.5, 2),
                rb.Create(labors[107], 1.5),

                rb.Create(labors[201], 3.5, 4),
                rb.Create(labors[203], 1.5, 2),
                rb.Create(labors[204], 2),
                rb.Create(labors[205], 2.5),
                rb.Create(labors[206], 1.5),
                rb.Create(labors[207], 2, 2.5),

                rb.Create(labors[301], 2.5),
                rb.Create(labors[302], 3.5, 4),
                rb.Create(labors[303], 2, 2.5),
                rb.Create(labors[304], 4.5),
                rb.Create(labors[305], 1),
                rb.Create(labors[306], 2, 2.5),

                rb.Create(labors[401], 2),
                rb.Create(labors[402], 1.5),
                rb.Create(labors[403], 4, 5),

                rb.Create(labors[501], 3.5),
                rb.Create(labors[502], 4),
                rb.Create(labors[504], 3, 4),
                rb.Create(labors[505], 2, 3),
                rb.Create(labors[506], 1, 1.5),
                rb.Create(labors[507], 4),
                rb.Create(labors[508], 4.5),
                rb.Create(labors[509], 3.5),

                rb.Create(labors[601], 4, 5),
                rb.Create(labors[602], 4, 5),
                rb.Create(labors[603], 4, 5),
                rb.Create(labors[604], 2, 3),
                rb.Create(labors[605], 1, 2),

                rb.Create(labors[701], 2, 3),
                rb.Create(labors[702], 3, 4),
                rb.Create(labors[703], 4, 5),
                rb.Create(labors[704], 1),
                rb.Create(labors[705], 4, 5),

                rb.Create(labors[801], 0, 0.5),
                rb.Create(labors[802], 0.5, 1),
                rb.Create(labors[803], 1, 1.5),


                rb.SetRangeFeature(_Asm).Create(labors[104], 3, 4),

                rb.Create(labors[203], 2, 2.5),

                rb.Create(labors[302], 4.5),
                rb.Create(labors[303], 3, 4),

                rb.Create(labors[401], 4, 4.5),
                rb.Create(labors[402], 4),

                rb.Create(labors[501], 4.5),
                rb.Create(labors[504], 4, 5),
                rb.Create(labors[505], 5, 6),
                rb.Create(labors[506], 2),

                rb.Create(labors[601], 6, 7),
                rb.Create(labors[602], 7, 8),
                rb.Create(labors[603], 7, 8),
                rb.Create(labors[604], 4, 5),

                rb.Create(labors[703], 6, 7),

                rb.Create(labors[801], 0.5)
            };

            dbContext.AddRange(ranges);
            return(ranges);
        }