Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
14_Kul'din_Kuldin_v2.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
208.38 Кб
Скачать

7. Основная идея предлагаемого генетического подхода.

Основной проблемой современных методов оценки трудозатрат является сложность их адаптации к каждому конкретному проекту (калибровки коэффициетов модели). Каждый проект – это своя комманда, свои условия труда, своя специфика разработки. Обобщенные модели, такие как COCOMO, разработанные с учетом данных о большом количестве проектов не могут полностью учесть этой специфики.

В данной работе предлагается принципиально новый, неклассический генетический подход к проблеме, основными принципами которого являются обеспечение простоты применимости метода на практике и учет информации, специфической для каждого конкретного проекта. В его основе лежит идея разделения общей задачи (предсказания необходимых ресурсов) на фиксированную и динамическую составляющие. При решении фиксированной части можно абстрагироваться от многих факторов, определяющих проектную специфику и применить какой-либо современный метод оценки трудозатрат, так словно он применяется к какому-нибудь типичному “среднестатистическому” проекту (например COCOMO). Это позволяет не учитывать при этом множество дополнительных факторов и существенно упростить реализацию метода. Главная же инновационная составляющая предлагаемого подхода заключается в способе решения динамической части задачи. Динамическая часть – оценка ресурсов, необходимых для устранения дефектов и других проблем, возникающих в процессе разработки системы, не укладывающихся в имеющиеся модели. Было замечено, что множество этих дефектов живет и развивается подобно биологической популяции, подверженной определённым воздействиям окружающей среды – множества сотрудников со своими показателями производительности. Эта среда как порождает эти дефекты, так и стремится их устранить впоследствии. Дефекты претерпевают мутации (проявляют заранее непредвиденные свойства), скрещиваются между собой, порождая новые, подвергаются отбору в соответствии со сложностью их устранения и т.п. Проведенные параллели с классическими понятиями теории эволюции биологических систем позволяют создать очень точную модель эволюции проекта в целом и рассчитывать необходимое дополнительное время, эмулируя жизнь этой популяции. Более того, ни один современный программный проект не обходится без системы багтрекинга, позволяющей учитывать и контролировать ошибки, найденные в программе, а также следить за процессом их устранения. Главный компонент такой системы — база данных, содержащая сведения об обнаруженных ошибках. Одна строка БД = одна ошибка = одна хромосома генетической популяции. Использование этой БД создает идеальные условия для применения разрабатываемой модели. Если же БД пуста (реализация проекта еще не началась), возможно использование БД предыдущего проекта, в котором работали те же сотрудники.

Итак, три принципиально новых идеи, предлагаемые в подходе:

  • Разделение исходной задачи на фиксированную и динамическую составляющие.

  • Интерпретация множества дефектов как хромосомной популяции.

  • Использование имеющейся в багтрекере (системе контроля дефектов) информации для уточнения оценки полученной с помощью какого-либо метода оценки трудозатрат на ранних стадиях жизненного цикла.

Кроме того, данный подход позволяет провести все необходимые расчеты любому менеджеру, даже не являющемуся экспертом в области предсказания сроков, т.к. база данных может быть проанализирована автоматически.

Стоимость конечной реализации предлагаемого подхода во много раз меньше имеющихся систем.