A couple of recent studies assessed the state of model-driven engineering (MDE) and the UML in practice. Hutchinson et al. (ICSE2011) noticed for example that a lot of MDE success is actually hidden and that MDE adoption is often rather driven by evangelists than hard business considerations. Petre (ICSE2013) focused on the UML and found for 50 software professionals that 70 percent do not use the UML. Unfortunately, most of the studies known to me have some methodical flaws, such as improper selection of the sample population. Maybe it is time for a systematic review and comparison of all the available empirical studies and approaches in industry?
ABB uses model-driven approaches in various areas, e.g., architecture documentation, code generation for PLC software, simulation, and even testing. Also, ABB Corporate Research has quite some history of experimenting with model-driven techniques:
- platform-independent model and code generation with ArcStyler, based on the MDA initiative (Interactive Objects success story, 2002)
- UML models to describe higher-level design for safety critical embedded systems (Empirical Software Engineering Journal, 2006)
- work on the OPC UA information model (Springer Book, 2009)
- model-based testing of embedded systems (EU-Project D-MINT, 2010)
- program transformation with srcML (ICSM, 2011)
- reliability prediction based on Markov Models (ISSRE, 2010)
- performance prediction for an industrial control system, based on the Eclipse modeling framework (ICSE, EU-Project Q-ImPrESS, 2011)
- DSL for constructing OPC UA Queries and Event Filters (ECMFA, 2012)
- model transformations for analytical purposes (MASCOTS 2012, ICPE 2013)
- model-based design space exploration for distributed systems (ICPE, 2012)
Current research in this area concerns for example architecture decision modeling (collaboration project with University of Groningen) or using IEC 61499 for modeling control logic.
ABB is currently investigating cloud computing and big data technologies in the context of power and automation. Cloud computing is already common for customer relationship management systems or human resource management systems, but industrial automation is still in the process of moving to the cloud. As an early example, ABB’s SCADA system for oil&gas applications, SCADAvantage, can now be purchased as hosted version in a GlobaLogix data center.
Big data processing amongst other things involves crossing structured and unstructured data to create new insights for customers. Unstructured data can for example be video streams or social media output. ABB’s Asset Health Center is one of the first solutions for processing big data for smart grids. ABB is executing several research projects on cloud computing and big data, providing great opportunities for scientific and industrial research beyond the buzzwords. We are hiring PhD-level professionals!
Here are the slides from my recent talk at ICPE 2013 in Prague on “Rapid Performance Modeling by transforming Use Case Maps to Palladio Component Models”. Please also see the full paper PDF. Photos from the conference are now online. Many thanks to Chris Vogel for his work on this tool!
We got a paper accepted at the Industry Track of the 17th International Software Product Line Conference (SPLC2013) to be held August 26th-30th in Tokyo, Japan: In the paper, we describe how we applied existing domain analysis approaches for software product line engineering and tailored them to include a feature analysis as well as architecture evaluation. We report our experiences from applying the approach in two subdomains of industrial automation.
Architecture maps reconstructed from several industrial software systems during a domain analysis.
The Software Engineering Institute (SEI) Architecture Technology User Network (SATURN) Conference will take place at the Marriott City Center in Minneapolis from April 29 to May 3, 2013. Olaf Zimmermann and me served as program co-chairs this year. The conference features an exciting program with keynotes from Stephan Murer (Credit Suisse), Scott Berkun, and Mary Poppendieck as well as more than 30 talks from renowned industrial speakers. Early registration runs until April 1st!
Yesterday, I gave the industrial keynote at the Workshop on Managed Software Evolution of the DFG Priority Programme 1593. It was held in conjunction with SE 2013, the german multi-conference on software engineering. Slides will be posted soon.
Abstract: Long-living software systems are a necessity in the industrial automation domain, where automation devices are typically operated for decades. Thus, it is a major challenge to design, implement, and maintain such software-intensive systems. This talk presents the case of an industrial control system called MicroSCADA, which has an evolution history of already more than 30 years. We analyze several technical and organizational factors that contributed to the successful evolution of the system since the 1980s. By this, the talk argues for more empirical research in the area of long-living software systems. The talk concludes with an overview of some recent approaches for sustainable software architectures at ABB Corporate Research.
Together with Ian, Jenny, Anne, and Mazeiar, I am organizing SE4SG’13, the 2nd International Workshop on “Software Engineering Challenges for the Smart Grid” at the International Conference on Software Engineering (ICSE) 2013 in San Francisco, US. This 2nd workshop will focus on understanding and identifying the unique challenges and opportunities for SE to contribute to and enhance the design and development of the smart grid. Thanks to all members of the program committee for providing great reviews to the paper submissions. The workshop will be held on May 18th and will feature five paper presentations and a working session.
ABB’s breakthrough developing an HVDC circuit breaker now led to an inclusion to MIT Technology Review’s list of 50 disruptive companies 2013 along with companies such as Apple, SpaceX, and Facebook. The HVDC breaker enables building direct current grids, whereas before only point-to-point lines were possible. This may lead to widespread use of renewable energy.
Yesterday, I gave a talk at the Web Performance Meetup Karlsruhe on Performance Modeling at ABB. The presented case study demonstrates the capabilities of various modern performance modeling tools and a design space exploration tool (i.e., PerOpteryx by Anne) in an industrial setting, provides lessons learned, and helps other software architects in solving similar problems. The meetup group targets web developers and is held roughly once per month. There have already been talks from Facebook and SoundCloud.com.
Paper accepted at ICPE 2013: We introduce a novel model transformation from Use Case Maps (UCM) to the Palladio Component Model (PCM), which enables performance modeling based on an intuitive notation for complex information flows. The resulting models can be solved using existing simulators or analytical solvers. We validated the correctness of the transformation with three case study models, and performed a user study. The results showed a performance prediction deviation of less than 10 percent compared to a reference model in most cases.