Information

Created: 19.08.2004 | Level: specialist | Access: free | University: Новосибирский Государственный Университет
The basics of software engineering managements Обсуждаются понятия и методы менеджмента в объеме, необходимом для общего образования программиста.
Вводится система понятий менеджмента программных проектов, достаточная для того, чтобы обучаемый смог самостоятельно осваивать существующие методы и технологии проектирования для их применения в практической деятельности. Изложение строится в привязке деятельности менеджера к этапам жизненного цикла проекта. Особое внимание обращается на разграничение аспектов руководства и управления в деятельности менеджера.
Goal: Дать обучаемому ориентиры в области инженерии программного обеспечения.
Prerequisites: Требуется владение хотя бы одним языком программирования, знакомство с методами структурного и объектно-ориентированного программирования. Желателен опыт работы в программистском коллективе.
| | Share |

План занятий

LessonTitle <<Date
-
Lecture 1
37 minutes
Менеджмент в разработке программных изделий
Вводятся основные понятия проблематики менеджмента разработки программных изделий, определяется метод и направление курса в целом.
Contents
    -
    Тест 1
    9 minutes
    -
    Lecture 2
    1 hour 6 minutes
    Функциональные роли в коллективе разработчиков
    Определяются функции, выполняемые сотрудниками в ходе развития проекта и типичные для программных проектов роли разработчиков; указывается, какие роли могут совмещаться при выполнении проекта. Представлены решения обсуждаемых вопросов, предлагаемые компанией Microsoft и Центром объектно-ориентированных технологий IBM.
    Contents
      -
      Тест 2
      9 minutes
      -
      Lecture 3
      33 minutes
      Ключевые роли коллектива разработчиков и задача определения кадровых ресурсов проекта
      Рассматриваются вопросы кадровой политики менеджера программных проектов и задача формирования коллектива разработчиков. Обсуждается влияние лидирующей группы и лидера коллектива на эти задачи: положительные и отрицательные моменты такого влияния. Описываются ситуации, в которых приходится действовать при подборе кадров. Приводится схема решения задачи определения кадровых ресурсов проекта.
      Contents
        -
        Тест 3
        9 minutes
        -
        Lecture 4
        1 hour 3 minutes
        Принципы построения системы деятельностей программного проекта
        Обсуждаются понятия теории деятельности, полезные для изучения менеджмента разработки программных изделий. На этой базе определяется место менеджмента в системе деятельностей программного проекта и задача соблюдения баланса между временем выполнения, объемом работ и расходом ресурсов при соблюдении требований к качеству.
        Contents
          -
          Тест 4
          9 minutes
          -
          Lecture 5
          49 minutes
          Методологические стратегии
          Возможные варианты развития проекта разработки программного обеспечения представляются как множество операционных маршрутов, среди которых выделена область допустимых траекторий. Управление рассматривается как деятельность, препятствующая выходу траектории из области допустимости. В рамках этих соглашений описываются стратегии управления, принятые в существующих методологиях. С позиций стратегических концепций обсуждаются жесткие и гибкие методологии.
          Contents
            -
            Тест 5
            9 minutes
            -
            Lecture 6
            41 minute
            Жизненный цикл программного изделия и его модели
            Изучаются понятие модели жизненного цикла и подходы к их построению. Рассматриваются работы, которые выполняются при прохождении этапов жизненного цикла. Вводится понятие декомпозиции проекта. Сопоставляются схемы последовательного развития проекта и развития проекта с итеративным наращиванием возможностей.
            Contents
              -
              Тест 6
              9 minutes
              -
              Lecture 7
              47 minutes
              Модели традиционного представления о жизненном цикле
              Изучаются базовые модели жизненного цикла и работы, которые выполняются при прохождении его этапов. Последовательность рассматриваемых моделей выстроена в соответствии с ростом их адекватности реальным схемам развития проектов. Выстраивается основная линия моделирования жизненного цикла при последовательном развитии проекта.
              Contents
                -
                Тест 7
                9 minutes
                -
                Lecture 8
                33 minutes
                Производственные функции в моделировании жизненного цикла: модель фазы—функции
                Мотивируется необходимость отражения в моделях жизненного цикла производственных функций, выполняемых разработчиками. Эти функции должны связываться с контрольными элементами управления проектами, т.е. этапами жизненного цикла, но тем не менее они выполняются в течение всего периода развития проекта с разной интенсивностью. Описывается модель Гантера фазы—функции как основа построения развитых схем жизненного цикла, включающая отражение организационных и технических производственных функций. Показывается, как в модели фазы—функции можно учитывать итеративность (в традиционном понимании).
                Contents
                  -
                  Тест 8
                  9 minutes
                  -
                  Lecture 9
                  50 minutes
                  Моделирование объектно-ориентированного жизненного цикла программных проектов
                  Моделирование жизненного цикла при итеративном наращивании и, в частности, при объектно-ориентированном подходе к разработке проектов имеет свои особенности. Они обусловлены принципами разработки и дополнительными функциями. Тем не менее развитые модели традиционных подходов, допускающие учет итеративности, вполне можно модернизировать, приспосабливая их к новым условиям. Ниже описывается такая модернизация для модели Гантера фазы-функции.
                  Contents
                    -
                    Тест 9
                    9 minutes
                    -
                    Lecture 10
                    1 hour
                    Технологические аспекты развития программных систем в моделях жизненного цикла
                    Обсуждается возможность отражения в моделях жизненного цикла свойств процесса разработки программного обеспечения, способствующих поддержке эффективности производства. С этой точки зрения рассматривается осуществимость параллельного выполнения итераций и проводится разграничение между иллюстративными и инструментальными моделями. Рассматривается возможность инструментального применения ряда общеупотребительных моделей.
                    Contents
                      -
                      Тест 10
                      9 minutes
                      -
                      Lecture 11
                      46 minutes
                      Модели жизненного цикла в некоторых реальных методологиях программирования
                      Рассматриваются модели жизненного цикла, принятые в методологиях, которые претендуют на реальную поддержку деятельности разработчиков программных проектов. Разграничивается инструментальная поддержка, которая может быть полезной для различных методологий, и комплексные средства методологического обеспечения деятельностей исполнителей проекта.
                      Contents
                        -
                        Тест 11
                        9 minutes
                        -
                        Lecture 12
                        42 minutes
                        Проблемы оперирования требованиями
                        Обсуждаются проблемы проектной деятельности, связанные с необходимостью оперирования требованиями к программному изделию, которые определяют направление развития любого проекта. Делается вывод о необходимости специальных методических приемов для работы с требованиями. Приводится схема трассировки требований, отслеживание которой целесообразно при любой организации менеджмента для поддержания целостности системы требований, реализуемых в программной системе.
                        Contents
                          -
                          Тест 12
                          9 minutes
                          -
                          Lecture 13
                          55 minutes
                          Принципы и приемы оперирования требованиями
                          Описывается способ учета трассировки требований в модели жизненного цикла и специальные приемы, предназначенные для оперирования требованиями. Для каждого из приемов указывается, когда целесообразно его применение и какие результаты при этом достигаются.
                          Contents
                            -
                            Тест 13
                            9 minutes
                            -
                            Lecture 14
                            56 minutes
                            Принципы и приемы оперирования требованиями (продолжение)
                            В продолжение темы предыдущей лекции рассматриваются специальные приемы оперирования требованиями. Представленные приемы следует применять в течение всего развития проектов на этапах, когда закладываются реализуемые в очередном релизе возможности. Кроме того, обсуждается регламент организации работ с требованиями в проекте, связанный с установлением конструктивных деловых отношений с инициаторами работ.
                            Contents
                              -
                              Тест 14
                              9 minutes
                              -
                              Lecture 15
                              1 hour 17 minutes
                              Концептуальная база проекта как основа его развития
                              Вводится понятие концептуальной базы проекта, которая формируется при развитии любого проекта. Показано, что стихийное формирование концептуальной базы практически всегда приводит к неудаче. Обсуждается соотношение концептуальной базы и планирования, а также то, какие материалы обязательно должны быть представлены в концептуальной базе.
                              Contents
                                -
                                Тест 15
                                9 minutes
                                -
                                Lecture 16
                                1 hour
                                Концептуальная база проекта: управление рисками и качеством, отслеживание связей
                                Три составляющие концептуальной базы проекта, которые рассматриваются ниже, используются в проектной деятельности, чтобы обеспечивать устойчивость траектории развития. Стихийное их формирование практически всегда негативно сказывается на сроках и результатах. В качестве итога обсуждения концептуальной базы приводится идеальная цель менеджерской работы в предпроектный период: сведение к минимуму необходимости вмешательства в конкретные дела исполнителей.
                                Contents
                                  -
                                  Тест 16
                                  9 minutes
                                  -
                                  Lecture 17
                                  47 minutes
                                  Планирование и контроль развития проекта. Цикл управления проектом
                                  Задачи планирования и контроля развития проекта рассматриваются в качестве основы производства программной продукции. Они важны при любой методологии, но каждая из них понимает планирование и контроль по-своему. В данной лекции изучаются наиболее общие понятия, связанные с обсуждаемыми процессами, и показано, как они преломляются при следовании различным методологическим стратегиям. Планирование, наблюдение за ходом выполнения работ, их контроль и корректировка принятых решений рассматриваются как процессы, которые объединяются общим понятием цикла управления проектом.
                                  Contents
                                    -
                                    Тест 17
                                    9 minutes
                                    -
                                    Lecture 18
                                    1 hour 3 minutes
                                    Результативность программистской проектной деятельности
                                    Для характеристики результатов проекта с точки зрения их применения вне проектной деятельности вводится понятие результативности, которая рассматривается как показатель, определяемый деятельностями, использующими продукты проекта. С этой точки зрения приводится классификация рабочих продуктов проекта, которая соотносится с уровнями зрелости организаций, занимающихся разработкой программного обеспечения. Указывается на необходимость определения границ применимости методов и методик при распространении опыта. Обсуждается соотношение между технологичным производством и автоматизированной инструментальной поддержкой методологий.
                                    Contents
                                      -
                                      Тест 18
                                      9 minutes
                                      -
                                      5 hours
                                      -