INSIDE SOFTWARE ENGINEERING




 David Weiss*, Audris Mockus, John Palframan, Randy
            Hackbarth, Zhou Minghui, et al
       {audris,palframan,randyh@avaya.com},
      weiss@iastate.edu, zhmh@sei.pku.edu.cn


* Lanh & Oanh Nguyen Professor of Software Engineering
Iowa State University



                                                         1
Motivation: Applications

                           Edison      Pasteur




                                         Bohr


                             Motivation: Science




                                                   3
Avaya Resource Center for Software Technology (ARC)

Business Value                                                                                                                                            Vision: Make Software a Strategic Weapon for
          Improve State of the Practice in Avaya Software                                                                                                    Avaya.
          Development and Know It
                                                                                                                                                                Software is critical to
                 Improved time to market, and software quality and                                                                                          Avaya’s products and to
                   decreased software cost                                                                                                                  keeping its customers happy
                                                                                                                                                            and expanding its market
Approach                                                                                                                                                    place.
          Assess the current state of software in Avaya, identifying                                                                                            The Avaya code base
          common problems, create action plans, create dashboards                                                                                           tripled between 2000 and
          and report on status to Avaya executives.                                                                                                         2006 (see graph)
          Investigate and Introduce new software technology and
          adapt industry proven techniques to improve Avaya’s
          software production processes
          Help build a community of software competence in Avaya                                                                                          Selected Deliverables and Milestones (2008)
          Continually improve our approaches of partnering with                                                                                               Tailored software improvement programs
          Avaya organizations                                                                                                                                 Iterative Development Effectiveness in Avaya
Key Avaya Software Trends                                                                                                                                     Predictability Report Update
                                                                                                                                                              Cross-division arch reviews (define/participate)
                                                                                                                                              Legend
                                                                                                                 Automated Build
                                                                                                                 Management
                                                                                                                                     No change
                                                                                                                                     in 2007
                                                                                                                                                              Test Forum
 High                                                                                                                               Improving in
                                                                                                                                    2007
                                                                                                                                                              Report on 2008 State of Avaya Software
                                                             Product Innovation                                                     Worsening in
                                                                                                                                                          Contact
 Effectiveness




                                                                                                                                    2007
                                                                                                         Product
                                 Understanding of
                                 Customers by R&D
                                                                                                         Management and
                                                                                                         R&D Teaming
                                                                                                                                                                    ARC: David Weiss, weiss@avaya.com
                                Opportunities for R&D Staff                                                                              Program and
                                to Enhance Skills
                                                          Component Integration
                                                          and Reuse
                                                                                                        Architects’ role
                                                                                                                         Measurement and
                                                                                                                                         Project
                                                                                                                                         Management
                                                                                                                                                                    Web site: http://inside.research.avayalabs.com/arc/index.html
                                                                                                                                                                                                                         Dashboard
                                                                                                        and process
                                                                                                                         Tracking
                                                           Iterative
                                                           Development                                  Multi-site
                                                                                                        Development    Quality Focused
                                                                                                                                             Testing(*)                                                            Sample –
                                                                     Process Innovation

                                                             Test
                                                                                  Cross Product House
                                                                                  Cooperation
                                                                                                                       Software
                                                                                                                       Development                                                                                 Avaya R&D
                                                                                                                                                                                                                   is Driving
                                   Customer-Focused          Automation (*)
                                                                                             Deployment of CTO        R&D Cost           Predictability
                                   Development Process                                       Standards                Tracking


 Low
                                                                                                                                                                                                                   Down
                                                                                                                                   Front End Planning
                                                                                                                                                                                                                   Customer
                                                                                                                                                                                                                   Affecting
                  (*) There are separate arrows for Test
                  Automation and Testing                                                                                                                                                                           Problems
                           Low                                                                                            High

                                                                                                                                                                                                                                     5
One Year Trends
                                                  All Critical Areas

                                                                                                                                            Legend
                                                                                                               Automated Build     No change
                                                                                                               Management          in 2007
High                                                                                                                              Improving in
                                                                                                                                  2007

                                                           Product Innovation                                                     Worsening in
Effectiveness




                                                                                                                                  2007
                                                                                                       Product
                               Understanding of
                                                                                                       Management and
                               Customers by R&D
                                                                                                       R&D Teaming
                              Opportunities for R&D Staff                                                                              Program and
                                                        Component Integration                         Architects’ role                 Project
                              to Enhance Skills         and Reuse                                                      Measurement and
                                                                                                      and process                      Management
                                                                                                                       Tracking
                                                         Iterative
                                                         Development                                  Multi-site                           Testing(*)
                                                                   Process Innovation                 Development    Quality Focused
                                                                                Cross Product House                  Software
                                                           Test                 Cooperation                          Development
                                 Customer-Focused          Automation (*)
                                                                                           Deployment of CTO        R&D Cost           Predictability
                                 Development Process                                       Standards                Tracking


Low
                                                                                                                                 Front End Planning




                (*) There are separate arrows for Test
                Automation and Testing


                         Low                                                                                            High
                                                                      Usage

                                                                                                                                                        40
Summary
 Find problems of fundamental interest and of importance to the country
– Estimate parameters and their measures important to business
  • Customer satisfaction, predictability, time and resources needed to create
    products
 Estimate capabilities and needs to understand areas for improvement
  • What problems do we need to solve to improve?
  • What is the impact of introducing new technology, methods?
 Personal, Business, Country, World
 Evaluate progress on a regular basis in a consistent way
– For particular projects
  • When will it be ready? How many architects, developers, testers will we
    need?
– For the entire organization
  • Are we improving? In what areas do we need to improve? What are recommendations
    for improvement?
 Characteristics of industrial measurement
  • Change data as a key information source
  • Automatibility, nonintrusiveness


                                                                                      47

ICSE 2011 Panel - David Weiss

  • 1.
    INSIDE SOFTWARE ENGINEERING David Weiss*, Audris Mockus, John Palframan, Randy Hackbarth, Zhou Minghui, et al {audris,palframan,randyh@avaya.com}, weiss@iastate.edu, zhmh@sei.pku.edu.cn * Lanh & Oanh Nguyen Professor of Software Engineering Iowa State University 1
  • 2.
    Motivation: Applications Edison Pasteur Bohr Motivation: Science 3
  • 3.
    Avaya Resource Centerfor Software Technology (ARC) Business Value Vision: Make Software a Strategic Weapon for Improve State of the Practice in Avaya Software Avaya. Development and Know It Software is critical to Improved time to market, and software quality and Avaya’s products and to decreased software cost keeping its customers happy and expanding its market Approach place. Assess the current state of software in Avaya, identifying The Avaya code base common problems, create action plans, create dashboards tripled between 2000 and and report on status to Avaya executives. 2006 (see graph) Investigate and Introduce new software technology and adapt industry proven techniques to improve Avaya’s software production processes Help build a community of software competence in Avaya Selected Deliverables and Milestones (2008) Continually improve our approaches of partnering with Tailored software improvement programs Avaya organizations Iterative Development Effectiveness in Avaya Key Avaya Software Trends Predictability Report Update Cross-division arch reviews (define/participate) Legend Automated Build Management No change in 2007 Test Forum High Improving in 2007 Report on 2008 State of Avaya Software Product Innovation Worsening in Contact Effectiveness 2007 Product Understanding of Customers by R&D Management and R&D Teaming ARC: David Weiss, weiss@avaya.com Opportunities for R&D Staff Program and to Enhance Skills Component Integration and Reuse Architects’ role Measurement and Project Management Web site: http://inside.research.avayalabs.com/arc/index.html Dashboard and process Tracking Iterative Development Multi-site Development Quality Focused Testing(*) Sample – Process Innovation Test Cross Product House Cooperation Software Development Avaya R&D is Driving Customer-Focused Automation (*) Deployment of CTO R&D Cost Predictability Development Process Standards Tracking Low Down Front End Planning Customer Affecting (*) There are separate arrows for Test Automation and Testing Problems Low High 5
  • 4.
    One Year Trends All Critical Areas Legend Automated Build No change Management in 2007 High Improving in 2007 Product Innovation Worsening in Effectiveness 2007 Product Understanding of Management and Customers by R&D R&D Teaming Opportunities for R&D Staff Program and Component Integration Architects’ role Project to Enhance Skills and Reuse Measurement and and process Management Tracking Iterative Development Multi-site Testing(*) Process Innovation Development Quality Focused Cross Product House Software Test Cooperation Development Customer-Focused Automation (*) Deployment of CTO R&D Cost Predictability Development Process Standards Tracking Low Front End Planning (*) There are separate arrows for Test Automation and Testing Low High Usage 40
  • 5.
    Summary Find problemsof fundamental interest and of importance to the country – Estimate parameters and their measures important to business • Customer satisfaction, predictability, time and resources needed to create products Estimate capabilities and needs to understand areas for improvement • What problems do we need to solve to improve? • What is the impact of introducing new technology, methods? Personal, Business, Country, World Evaluate progress on a regular basis in a consistent way – For particular projects • When will it be ready? How many architects, developers, testers will we need? – For the entire organization • Are we improving? In what areas do we need to improve? What are recommendations for improvement? Characteristics of industrial measurement • Change data as a key information source • Automatibility, nonintrusiveness 47