private void CreateObservations()
        {
            if (MetricData.Count <= 1)
            {
                return;
            }

            if (!MetricData.All(md => md.Timestamps.Any()))
            {
                return;
            }

            var personMetrics = MetricData.First();
            var classMetrics  = MetricData.Skip(1).ToList();

            PersonObservation = new ObservationWindow(personMetrics);
            ClassObservations = classMetrics.Select(classMetric => new ObservationWindow(classMetric)).ToList();

            ObservationsCreated?.Invoke(
                PersonObservation.Values.Count,
                PersonObservation.FirstObservation,
                PersonObservation.LastObservation);
        }