• No results found

SAC 2015 Tutorial Proposal Software Reuse and Reusability Involving Requirements, Product Lines, and Semantic Service Specifications

N/A
N/A
Protected

Academic year: 2021

Share "SAC 2015 Tutorial Proposal Software Reuse and Reusability Involving Requirements, Product Lines, and Semantic Service Specifications"

Copied!
5
0
0

Loading.... (view fulltext now)

Full text

(1)

SAC 2015 – Tutorial Proposal

Software Reuse and Reusability Involving Requirements, Product Lines,

and Semantic Service Specifications

Dr. Hermann Kaindl, Professor

Vienna University of Technology, ICT Gusshausstr. 27-29

A-1040 Vienna, Austria Phone: +43 1 58801-38416 Fax: +43 1 5 99666-938416 Email: kaindl @ ict.tuwien.ac.at

(2)

SAC 2015 – Tutorial Proposal

Title

Software Reuse and Reusability Involving Requirements, Product Lines,

and Semantic Service Specifications

Presenter

Dr. Hermann Kaindl, Professor

Vienna University of Technology, ICT Gusshausstr. 27-29

A-1040 Vienna, Austria Phone: +43 1 58801-38416 Fax: +43 1 5 99666-938416 Email: kaindl @ ict.tuwien.ac.at

Web: http://www.ict.tuwien.ac.at/kaindl

Hermann Kaindl joined the Institute of Computer Technology at the Vienna University of Technology in early 2003 as a full professor, where he also serves in the Senate. Prior to moving to academia, he was a senior consultant with the division of program and systems engineering at Siemens AG Austria. There he has gained more than 24 years of industrial experience in software development and human-computer interaction. He has published five books and more than 170 papers in refereed journals, books and conference proceedings. He is a Senior Member of the IEEE, a Distinguished Scientist member of the ACM, a member of the AAAI, and is on the executive board of the Austrian Society for Artificial Intelligence. He has previously held tutorials at CAiSE’00, RE’01, RE’02, HICSS-36, INCOSE’03, RE’03, CADUI-IUI’04, INCOSE’04, RE’04, HICSS-38, IRMA’05, INCOSE’05, AAAI’06, HCI’06, OOPSLA’06, HICSS-40, ICONS’07, INCOSE’07, AAAI’07, IFIP Interact’07, OOPSLA’07, HICSS-41, ICCGI’08, RE’08, ICSEA’08, ICIW’09, IFIP Interact’09, SMC’09, HICSS-43, ACHI’10, ACM EICS’10, ICSEA’10, TdSE’10, HICSS-44, ACM SAC’11, INCOSE’11, AAAI’11, RE’11, ICSEA’11, HICSS-45, ACM SAC’12, ACM CHI’12, PROFES’12, BCS HCI’12, IEEE APSEC'12, HICSS-46, ACM SAC’13, NexComm’13, PROFES’13, ICSOFT’13, IEEE Africon’13, IEEE APSEC’13, HICSS-47, ACM SAC’14 and WEB’14.

Some of these tutorials were related to the one proposed here, most strongly one given at IEEE APSEC’13.

Duration Half day Abstract

Software reuse and reusability is often just addressed at the level of code or low-level design. In contrast, this tutorial explains them starting from requirements. It integrates and presents three approaches co-developed by the presenter over more than a decade, which also involve product line technology, case-based reasoning and semantic service specification.

One approach deals with requirements reuse and reusability in the context of product

lines. It makes the relations among product line requirements explicit, so that single system

(3)

variability across different products. This tutorial shows how requirements for a product line can be modeled, selected and reused to engineer the requirements for innovative new

products. Another approach for software reuse involves case-based reasoning. Instead of explicit relations between requirements (or other artifacts), similarity metrics are employed for finding the most similar software case in a repository to a given set of requirements. This even works when a single envisioned usage scenario is specified yet, and it allows reusing also requirements from retrieved cases. The major point, however, is to facilitate reusing software design (including architecture) and code from similar software cases. In fact, these two approaches can be usefully combined. Yet another approach involves semantic service

specification, which facilitates automated generation of service composition. In the context of

business software reuse and reusability, this formal specification facilitates automated verification, and validation including business rules as well.

These approaches have different key properties and trade-offs between costs of making software artefacts reusable and benefits for reusing them. These will be particularly explained in this tutorial.

Motivation, target audience, and interest for the SAC community

The primary motivation for giving this tutorial is to improve software development in practice regarding the difficult and important issue of reuse and reusability.

The target audience is software development practitioners, such as requirements engineers, software designers and project leaders. Also educators will benefit from this tutorial. The assumed attendee background is primarily some interest in requirements or software reuse and reusability based on services.

The application area of this tutorial is clearly software development. It closely relates to the SAC 2015 Tracks RE and SE as well as partly to SOAP and even to SWA.

Outline

This outline is adopted from previously held tutorials, primarily from one given at APSEC’13:

 Introduction and background o Requirements

o Use cases / scenarios o Business processes

o Software reuse and reusability

 Requirements reuse and reusability in product lines o Product lines

o Modeling requirements for a product line o Selecting single-system requirements for reuse o Verifying consistency

 Software reuse involving case-based reasoning o Software cases

o Requirements-based reuse utilizing similarity o Partial requirements specification / scenario o Reuse and reusability of requirements  Reusing business knowledge and software

o Business use case — business process

o Automated adaptation based on business rules o Semantic service specification

(4)

o Business process verification and validation  Contrasting these approaches

o Reusable artifacts o Reuse approaches o Trade-offs

 Summary and conclusion Specific goals and objectives

This tutorial has the primary objective to provide the participants with a better understanding of reuse and reusability. They will learn about different approaches to address them involving requirements, product lines, and semantic service specifications. They will also learn about their respective trade-offs between costs of making software artefacts reusable and benefits for reusing them.

Expected background of the audience

The assumed attendee background is basic familiarity with issues of reuse and reusability in software systems development. There are no pre-requisites such as knowledge on specific approaches, however.

Audio Visual equipment needed for the presentation

For the instructor, a computer screen projector (to be connected with my laptop computer) will be needed, capable of at least 1024 x 768. In addition, a flip-chart with pens of various colors is required.

For the course attendees, paper for the flip-chart and a sufficient number of pens are needed for the group exercises.

Selected publications of the proposer related to this tutorial

C. Gutschier, R. Hoch, H. Kaindl, R. Popp, A Pitfall with BPMN Execution, Proceedings of

The Second International Conference on Building and Exploring Web Based Environments (WEB 2014), Chamonix, France, 2014.

R. Hoch, H. Kaindl, R. Popp, D. Ertl, H. Horacek, Semantic Service Specification for V&V of Service Composition and Business Processes, in Proceedings of the 48th Hawaii

International Conference on System Sciences (HICSS-48), 2015.

H. Kaindl, M. Smialek, W. Nowakowski, Case-based Reuse with Partial Requirements Specifications, in Proceedings of the 18th IEEE International Requirements Engineering

Conference (RE 2010), 2010, pp. 399–400.

H. Kaindl, D. Sventinovic, On confusion between requirements and their representations.

Requirements Engineering, vol. 15, 2010, pp. 307–311.

H. Kaindl, P. Wagner, A Unification of the Essence of Goal-oriented Requirements

Engineering, in Proceedings of the Fourth International Conference on Software Engineering

Advances (ICSEA 2009), Porto, Portugal, 2009, IEEE.

M. Mannion, H. Kaindl, Using Parameters and Discriminants for Product Line Requirements.

Systems Engineering, vol. 11, no. 1, 2008, pp. 61–80.

Mannion, M., Keepence, B., Kaindl, H., and Wheadon, J., Reusing Single System

Requirements from Application Family Requirements, in Proc. Twenty-first International

Conference on Software Engineering (ICSE’99), Los Angeles, CA, May 1999, 453–462,

(5)

Mannion, M., Lewis, O., Kaindl, H., Montroni, G., and Wheadon, J., Representing Requirements on Generic Software in an Application Family Model, in Proc. Sixth

International Conference on Software Reuse (ICSR-6), Vienna, Austria, June 2000.

Springer-Verlag, Berlin, Germany, 153–169.

R. Popp, H. Kaindl, Automated Adaptation of Business Process Models Through Model Transformations Specifying Business Rules, Online Proceedings for Scientific Workshops Vol-1164 CAiSE Forum, Thessaloniki, Greece, 2014.

K. Wolter, M. Smialek, D. Bildhauer, H. Kaindl, Reusing Terminology for Requirements Specifications from WordNet, in Proceedings of the 16th IEEE International Requirements

References

Related documents