Portraits in Practice Software Engineering Research & Development Challenges at Siemens Juergen Kazmeier

Portraits in Practice
Software Engineering Research & Development
Challenges at Siemens
Juergen Kazmeier
Brian Berenbach
Dan Paulish
Marlon Vieira
Page 1
Copyright 2007 © Siemens Corporate Research
Siemens has a long tradition of technological innovations.
Page 2
Copyright 2007 © Siemens Corporate Research
The rate of innovations is increasing.
Share of sales
with products…
… 5 years
and younger
… 6 to 10
years old
55%
48%
75%
30%
29%
19%
22%
16%
… more than
10 years old
1980
Page 3
1985
6%
2005
Copyright 2007 © Siemens Corporate Research
Siemens is one of the world’s largest software companies.
Page 4
►
Siemens has more than 30,000 software developers.
►
60% of Siemens’ business is based on software.
►
Siemens spends more than 3 billion euros per year on
software development.
Copyright 2007 © Siemens Corporate Research
But, Siemens is not recognized as a software company,
since most of our software is embedded.
Examples:
Automation devices
Industrial control systems
Automotive components
Communication systems
Rail systems
Medical devices
Page 5
Copyright 2007 © Siemens Corporate Research
Siemens at a Glance
Information and
Communications
Automation
and Control
Power
Transportation
Medical
Lighting
Communications
Automation and
Drives
Power Generation
Transportation
Systems
Medical Solutions
Sylvania
Siemens Business
Services
Industrial
Solutions and
Services
Power
Transmission and
Distribution
Siemens VDO
Automotive
Annual Worldwide Sales
Siemens Building
Technologies
Net Income: $2.8B
World’s 21st largest
company
Siemens AG: Worldwide figures for fiscal 2005 1 (U.S. GAAP2)
1Fiscal Year October 1 – September 30
2Average annual exchange rate for FY 2005: €1.00 =$1.273
Page 6
47,000 employees
$98.2 billion
$6.6B dedicated
to global R&D
75% of total sales are from
products and services
developed in the last five years
Copyright 2007 © Siemens Corporate Research
Global presence of Research and Development
More than 47,000 R&D employees at 150 locations
Page 7
Copyright 2007 © Siemens Corporate Research
Corporate Technology:
About 2,300 Researchers and Developers Worldwide
Berlin
St. Petersburg
Moscow
Romsey (RMR)
Princeton
Siemens
Corporate Technology
Beijing
A Global Network
Shanghai
Berkeley
Tokyo
Bangalore
Erlangen
Munich
Page 8
Copyright 2007 © Siemens Corporate Research
Much of our research is done in collaboration
with universities.
Page 9
Copyright 2007 © Siemens Corporate Research
Software Engineering Challenges at Siemens
 Functionality previously realized in electrical or electro-mechanical
systems is now being realized in software => bigger, more complex, &
more software projects (hundreds of developers, millions of lines of
code).
 Meeting functional and non-functional requirements is important to
business success => restricted hardware resources, real-time
performance, safety critical applications.
 Multisite development projects.
 High quality (i.e., thoroughly tested, reliable) software is important to
business success.
Our software engineering methods and technologies
must address the increasing scale and complexity of
emerging software systems.
Page 10
Copyright 2007 © Siemens Corporate Research
There are three major levers for optimizing
software development.
Processes
• Simplification
• Standardization
• Stabilization
Synergies
• Architecture
• Platforms
Structure
• Offshoring/
Outsourcing
• Site strategy
Page 11
Copyright 2007 © Siemens Corporate Research
We address software engineering challenges in R&D programs.
Today’s Portraits in Practice focus: Requirements Engineering,
Architecture Practices, Testing
Processes & Project Management
Requirements Engineering
Assess and improve software
development processes and
project management Process
From business needs to
software design faster, with
better quality and transparency
for project control and
Assessment &
oversight
Improvement
Requirements
Engineering
(Brian)
Project
Management
SCR SE
Quality
Engineering
Ensure high quality
Testing
software based
(Marlon)
systems by Testing,
Code Quality Management and
Performance Engineering
System & Software Quality
Page 12
Architecture
Practices, GSD
(Dan)
SW Platform
Technologies
Building
coherent, interoperable and
future-proof systems
Architecture & Platform Technologies
Copyright 2007 © Siemens Corporate Research
Thank you!
Contact:
Juergen Kazmeier
Department Head, Software & Systems Engineering
[email protected]
Phone +1 (609) 734-3610
Page 13
Copyright 2007 © Siemens Corporate Research
Requirements Engineering
@ Siemens
Brian Berenbach
[email protected]
Page 14
Copyright 2007 © Siemens Corporate Research
The Challenge
To provide effective requirements
development and management processes
for a set of extraordinarily disparate
Siemens companies.
To raise the level of expertise in
requirements engineering throughout
Siemens.
Page 15
Copyright 2007 © Siemens Corporate Research
For Example… Siemens Automotive
Chassis & Car body
Fleet Management
Infotainment
Interior
Marine Solutions
Special OEM Solutions
Power Train
Public Transport Solutions
Replacement Parts
Page 16
Copyright 2007 © Siemens Corporate Research
Customers Provide the Requirements
Stakeholder requests from
customers
in PDF documents
& Excel tables
Manual
Processes
Difficulty Managing Change!
Page 17
Requirements
Database
Copyright 2007 © Siemens Corporate Research
Requirements as State Tables
Again, Difficulty Managing Change!
Page 18
Copyright 2007 © Siemens Corporate Research
Customer
Siemens
Page 19
Copyright 2007 © Siemens Corporate Research
Unique OEM Problems
Customers deliver their requests in varying media
Everything is priority 1
Customers feel under no obligation to limit change requests
Change requests come in the form of new documents
(PDF) and state tables (Excel) with no change matrix. How
do you manage change and traces?
Requests may be vague because customers expect that
“Siemens will figure it out”.
Page 20
Copyright 2007 © Siemens Corporate Research
Providing Integrated Medical
Solutions Leads to Many
Requirement Dependencies
Page 21
Copyright 2007 © Siemens Corporate Research
“V” Model for Traceability
Impact analysis
System
requirements
Subsystem
requirements
Component
requirements
Derivation analysis
Stakeholder
requirements
Are all requirements
covered by the layer
below?
Acceptance
test plan
Derivation analysis
Impact analysis
System
test plan
Integration
test plan
Component
test plan
Are all requirements covered by tests?
Page 22
Copyright 2007 © Siemens Corporate Research
“V” Model leads to tag based tracing
Page 23
Copyright 2007 © Siemens Corporate Research
Tag based training has issues
No rationale for traces
Difficult to cluster traces
Effort rises geometrically with project size
Difficulty managing cascading or crosscutting changes
Page 24
Copyright 2007 © Siemens Corporate Research
Companies such as Siemens Building Technology build
products with distributed (worldwide) stakeholders and
development teams.
Page 25
Copyright 2007 © Siemens Corporate Research
How to capture functional and
non-functional requirements?
Desired Single Customer View but…
 Multiple Regions
 Multiple Business Units
 Everything must plug and play TOGETHER
Page 26
Copyright 2007 © Siemens Corporate Research
Global Challenges for Siemens
Conversion of products to product lines
Capturing requirements across regions and across
business units
Raising the RE skill level of staff world-wide
Page 27
Copyright 2007 © Siemens Corporate Research
 Challenges
One size does NOT fit all!
Effectively Controlling Change
Managing Scale
Managing Customers
Page 28
Copyright 2007 © Siemens Corporate Research
…and Some Possible Solutions
Traceability
Dynamic Tracing
Rich Traces
New Modeling Languages
Complexity, Scale (>10K
Requirements)
Model-Driven RE
RE Skills
Basic RE Courses
Advanced Tools.
Skill Certification
Page 29
Copyright 2007 © Siemens Corporate Research
Thank you!
Contact:
Brian Berenbach
RE Center of Competence Head
[email protected]
Phone +1 (609) 734-3395
Page 30
Copyright 2007 © Siemens Corporate Research
Methods & Processes for
Global Software Development
Dan Paulish
[email protected]
Page 31
Copyright 2007 © Siemens Corporate Research
Agenda
Motivation for Global Software Development
(GSD)
Challenges
An Approach
Lessons Learned
Open Issues and Research Questions
Page 32
Copyright 2007 © Siemens Corporate Research
Global Software Development (GSD):
Motivation
Lower development costs
• Low-wage countries
Capitalizing on a pool of trained workforce
• Quest for talent
Increased output, reduced time
• Improve time-to-market
• Round-the-clock development
Original motivation
was reduced
development cost,
but there are other
reasons for GSD.
Market proximity
• Specific local expertise
• Market acquisition effort
Governmental policies and incentives
Page 33
Copyright 2007 © Siemens Corporate Research
But, Global Software Development is Difficult.
Physical distance
Time Difference: 11.5
hours
Page 34
Copyright 2007 © Siemens Corporate Research
Global Software Development
Siemens has more than 15 years experience developing software products
globally.
Today, most Siemens business groups develop software in low-cost countries.
Organization and process model for global development divides responsibility
between a central headquarters organization & remote development teams.
Requirements
Domain
expertise
Management
&
Process
expertise
Software
Technology
engineering
expertise
expertise
Architecture
& design
Supplier Managers
Software
engineering
expertise
Development
experience
Development
plan
Acceptance
tests
Central team
Verified by
Remote development
teams
Component requirements
Component design
Integrated by
Code
Verified by
Tests
Page 35
Copyright 2007 © Siemens Corporate Research
Global Studio Project (GSP)
Experimental global software development project using university student teams and
researchers.
Shadows real Siemens global development project, process, & organization.
Document processes, best practices, and understanding of how to successfully execute
global projects.
University of Limerick,
Harvard Business School,
Ireland
USA
Carnegie Mellon University,
Technical University of
USA
Munich, Germany
Siemens Corporate
Research, USA Monmouth University,
USA
Pontifical Catholic
University of Rio de Sul,
Brazil
Page 36
International Institute of
Information Technology,
Bangalore, India
Copyright 2007 © Siemens Corporate Research
GSP Research Goals
Identify and document best (and worst) practices for
global software development.
Identify the prerequisites for successful global software
development.
Test a global software development reference process.
Determine artifacts for commissioning a remote
development team.
Identify communications necessary for effective global
development.
Page 37
Copyright 2007 © Siemens Corporate Research
Social Network Analysis (SNA)
Affiliations (Sites)
SCR Central Team
Tech. Univ. Munich
CMU Sapphire
IIITB
Monmouth #5
Monmouth Codicons
Monmouth TCT
Limerick ArdnaCroise
Roles
Developer
Team Leader
Function Manager
Remote Supp. Manager
Central Supp. Manager
Executive
Page 38
Copyright 2007 © Siemens Corporate Research
Some Lessons Learned
Amount of Required Communications
Cultural Differences among Teams
Start-up Time for Remote Teams
Supplier Managers as the interface to Remote Teams
Team Size
Agility
Page 39
Copyright 2007 © Siemens Corporate Research
Open Issues and Research Questions
1. Given that the technical artifacts that are delivered to the
remote component development teams are not adequate
in specifying the precise work to be done, in what ways
are they deficient?
2. What strategies do the remote teams employ to
compensate for the deficiencies found in the received
technical artifacts?
3. What are the early warning signs that an issue is
imminent? Can communication patterns, for example,
between the central and remote teams be used to predict
future component integration problems?
Page 40
Copyright 2007 © Siemens Corporate Research
Thank you!
Contact:
Dan Paulish
Distinguished Member of Technical Staff
[email protected]
Phone +1 (609) 734-6579
Page 41
Copyright 2007 © Siemens Corporate Research
Issues and Best Practices in Testing Automation
- An Industrial View -
Marlon E. Vieira
[email protected]
Page 42
Copyright
2007. AllResearch
rights reserved.
Copyright
2007©©Siemens
SiemensAG
Corporate
Agenda
 Motivation and Some Challenges
 Observations on Automation of Testing for Diverse
Siemens Projects
 Some Observable Best Practices
 Our Research Focus
 Suggestions on Research Topics
 Final Comments
Page 43
Copyright 2007 © Siemens Corporate Research
Automation of Testing: Motivation
Motivation
• Pressure to release software to the
market (with quality and on time)
• Some tests cannot be run without
automation
• Test teams have time to address
bigger test issues
• Improve tester job satisfaction
Page 44
Copyright 2007 © Siemens Corporate Research
Automation of Testing:
Some Challenges to Adopt It in Practice
Some Challenges
• Global Development
• Investment in the automation itself (ROI calculation)
• Testers with development skills
• Industrial scale solutions
Page 45
Copyright 2007 © Siemens Corporate Research
Automation of Testing:
Observations (Diverse Siemens Projects)
The test process and its automation in practice (Tools)
Plan
plan tests
test
Design tests
Test Management Tools
MBT Tools
Unit
High *
Page 46
Component
Medium *
* Automation level (usage)
Execute tests
Analyze results
Capture-Replay
Test Analysis Tools
Simulators/emulators
Defect Classification
Custom Frameworks
Integration
Medium *
Metrics Analysis
Validation
Low *
Copyright 2007 © Siemens Corporate Research
Other Observations:
Best Practices
 Observable Best Practices
• Dealing with testing automation as a
software development process
• Designing tests first before deciding to
automate
– Test creation (or generation)
separated from execution
• Applying an incremental approach
– Start small and grow - Provide
frameworks (libraries) and exercise
tests with different data
– Not everything is automated (allow
exploratory tests)
Page 47
Copyright 2007 © Siemens Corporate Research
Other Observations:
Emerging Strategies
 Emerging Industrial Strategies
• Test-driven development (Unit Testing Frameworks)
• Model-based testing
• Keyword-driven automation
Page 48
Copyright 2007 © Siemens Corporate Research
Our Research Focus on Automation of Testing
Model Based Testing
• Test case generation based on UML Analysis Models
• UML 2.0 Models – Use Case, Activity, Sequence and
Statechart diagrams
• U2TP (UML 2 Testing Profile)
Data driven test case generation
• Category-Partition Method
Architectural issues on flexible/robust testing frameworks
• Customizable framework to execute tests in a specific domain
Page 49
Copyright 2007 © Siemens Corporate Research
Suggestions for Research:
Improvements for Industrial Scale Problems
Testability
• Design changes (dynamic)
• Different environments
• Failure treatment (restart and
remote test execution)
• Visibility and Control (stimulus
and result verification)
Event-Triggered Real-time
Systems
• Non-deterministic execution
orders
• Impact of the execution
environment
Page 50
Copyright 2007 © Siemens Corporate Research
Final Comments
Automation of Testing must fit within
project and organizational context.
The industrial automation approach
needs to be affordable.
1. Usable and Scalable
2. Allow early results
3. Easy Evolution
A broad range of academic research is
currently being used in the software
industry.
Examples:
– Assertions
– Model-Based Testing
– Model Checking
Page 51
Copyright 2007 © Siemens Corporate Research
Thank you!
Contact:
Marlon Vieira
Program Manager, Software Testing
[email protected]
Phone +1 (609) 734-3313
Page 52
Copyright 2007 © Siemens Corporate Research