In the summer, John Mcgregor and Simone da Silva Amorim and Eduardo Santana De Almeida of Federal University of Bahia (UFBA, Brazil) collaborated to submit their paper Extensensibility in Ecosystem Architectures: An Initial Study to the 1st International Workshop for Ecosystem Architectures located at the 9th Joint Meeting of the European Software Engineering Conference / ACM SIGSOFT Symposium n the Foundation of Software Engineering.
Organizations that build software-intensive products participate in socio-technical ecosystems that encompass their collaborators, competitors, customers, and suppliers. STREAM, an ecosystem modeling method, provides three views of that ecosystem: business, software, and innovation. In the software view the architecture is the primary structuring element. It is our hypothesis that certain quality attributes of the architecture, such as expressiveness and extensibility, are important factors in the success of the ecosystem. Extensibility is normally presented through the API. We examine the APIs of three platforms, one that is increasing in use, one that is in steady use, and one that is declining in use. We use these initial results to generate hypotheses for further exploration.
In the Spring, Yates Monteith, John McGregor and John Ingram submitted their paper Hadoop and It’s Evolving Ecosystem to the 5th International Workshop on Software Ecosystems hosted at the 4th International Conference on Software Business.
Socio-technical ecosystems are living organisms that grow and shrink, that change velocity, and that split from, or merge with, others. The ecosystems that surround producers of software-intensive products exhibit all of these behaviors. We report on the start of a longitudinal study of the volution of the Hadoop ecosystem, take a look back over the history of the ecosystem, and describe how we will be observing this ecosystem over the next few months. Our initial observations of the early days of Hadoop’s ecosystem showed rapid change. We present these observations and a method for taking and analyzing observations in the future. Our goal is to develop an ecosystem modeling technique that provides practical guidance to strategic decision makers.
In the Spring, John McGregor and Yates Monteith submitted their paper Exploring Software Supply Chains from a Technical Debt persective to the Fourth International Workshop on Managing Technical Debt hosted in conjunction with 35th International Conference on Software Engineering. It was presented by John McGregor in May, 2013.
Software development has evolved from software development organizations building custom solutions for every need and creating a backlog of applications needed by users to specialized organizations producing components that are supplied to other software development organizations to speed the development of their software products. Our objective is to illustrate how a manager might use supply chain information to evaluate software being considered for inclusion in a product. We investigated the Eclipse platform code to illustrate analysis methods that produce information of use to decision makers. The technical debt of the software pieces was measured using the Technical Debt plug-in to SONAR as one input into the evaluation of supply chain quality. The dependency graphs of “uses” relationships among files were analyzed using graph metrics such as betweenness centrality. There was a statistically significant moderate correlation between the technical debt for a file and the betweenness centrality for that file. This relationship is used as the basis for a heuristic approach to forming advice to a development manager regarding which assets to acquire.
In the Spring, John McGregor and Yates Monteith collaborated with Simone Amorim and Eduardo Almeida of University Federal of Bahia (UFBA) in Brazil to submit the presentation Modeling the Contributions of Software Architecture to the Success of an Ecosystem to the SEI Architecture Technology User Network Conference. It was presented by John McGregor during the conference, fro April 29th – May 3rd.
In the Summer 2010, John McGregor and Yates Monteith submitted the paper Integrating Instructional and Study Materials to Tailor a Student-Specific Resource to the 24th Annual IEEE-CS Conference on Software Engineering Education and Training Conference CSEET ’11, colocated at the 33rd International Conference on Software Engineering ICSE ’11. It was presented by J. Yates Monteith on May 23rd, 2011
Keywords: electronic textbook, materials integration, method engineering
Courses about various software engineering practices, e.g. testing and architecture, all ultimately relate to a process for applying the practice. We have used that process as the organizing principle for undergraduate and graduate software engineering courses. The Software Process Engineering Meta-model (SPEM) provides a means for engineering a process for the specific practice being studied and even tailoring that process to the specific needs of a project. We have used the Eclipse Process Framework, an implementation of the SPEM, as a tool to allow instructors to create, modify and reuse a baseline electronic textbook as well as for students to collect, organize, and represent information in a form most meaningful to them. We present examples and data from one undergraduate introduction to software engineering course and two graduate courses in verification and validation and software architecture gathered over several years.
In the Fall, John McGregor, Yates Monteith and Jie Zhang submitted the paper An Experiment in Quantifying Value in Software Product Lines to the 1st International Workshop on Quantitative Methods in Software Product Line Engineering QSMPLE ’11 Workshop at the 15th International Software Product Lines Conference SPLC ’11. It was presented by John D. McGregor on August 26th, 2011
Keywords: real options, software product lines, strategic software design
While any software development effort has uncertain elements, the long time horizon of a software product line magnifies that uncertainty. Many practices, such as scoping the software product line, attempt to reduce uncertainty by specifying many aspects of the product line more exactly than is done in single product development. Variation management helps reduce the uncertainty brought on by the need for variation in the product line. In this paper we present an analysis of the uncertainty in a software product line and relate this uncertainty to the value of the portfolio of options represented by the core asset base.
Notes by Paul Clements
In the Spring, John McGregor, Yates Monteith and Jie Zhang submitted the paper Technical Debt Aggregation in Ecosystems to the Managing Technical Debt MTD 12 Workshop co-located at the 34th International Conference on Software Engineering ICSE 12. It was presented by John D. McGregor on June 6th, 2012
Keywords:ecosystem, technical debt, supply chain, value chain
The members of the ecosystem encompassing our organization are affected by our decisions just as we are affected by their decisions. If an organization takes on technical debt with respect to a specific asset, that decision will affect users of the asset either directly or indirectly. In this position paper we distinguish between incurring technical debt directly and experiencing the effects of technical debt indirectly. We illustrate why two separate concepts are needed for a complete theory and provide examples from ecosystem models we have created for several organizations. The result is a model that produces good explanations for posited scenarios.
John McGregor, and Yates Monteith submitted the paper A Three Viewpoint Model of Software Ecosystems to the IASTED’s Software Engineering Applications conference. It was presented by Yates Monteith on November 14th, 2012.
Keywords:Software Engineering, Software Ecosystems, Meta-modeling, Software Product Lines
An organization that produces software-intensive products participates in a network of relationships with other organizations that supply needed assets, that consume the organizationâ€™s products, and that compete for the same customers. Strategic decision makers in that organization must understand these relationships to make optimal decisions. The modeling approach presented in this paper creates three viewpoints on the network to separate concerns and reduce complexity for decision makers. A case study illustrates the effectiveness of the 3 viewpoints and shows the results of applying analyses in the context of those views.