Can Abstraction Be Taught? Refactoring-based Abstraction Learning

Naoyasu Ubayashi, Yasutaka Kamei, Ryosuke Sato

2018

Abstract

Can the notion of abstraction be taught to students? It is a very difficult question. Abstraction plays an important role in software development. This paper shows that refactoring is effective for students to learn the notion of abstraction. We focus on design abstraction, because it is one of the crucial parts in teaching the essence of software engineering. To explore for a well-balanced separation of concerns between design and code, it is not avoidable to go back and forth between them. To help a student find an appropriate abstraction level, we introduce abstraction-aware refactoring patterns consisting of MoveM2C (Move concerns from Model to Code) and CopyC2M (Copy concerns from Code to Model). The patterns enable a student to refine abstraction while preserving not only external functionality but also traceability between design and code.

Download


Paper Citation


in Harvard Style

Ubayashi N., Kamei Y. and Sato R. (2018). Can Abstraction Be Taught? Refactoring-based Abstraction Learning.In Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-283-7, pages 429-437. DOI: 10.5220/0006604804290437


in Bibtex Style

@conference{modelsward18,
author={Naoyasu Ubayashi and Yasutaka Kamei and Ryosuke Sato},
title={Can Abstraction Be Taught? Refactoring-based Abstraction Learning},
booktitle={Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2018},
pages={429-437},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0006604804290437},
isbn={978-989-758-283-7},
}


in EndNote Style

TY - CONF

JO - Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - Can Abstraction Be Taught? Refactoring-based Abstraction Learning
SN - 978-989-758-283-7
AU - Ubayashi N.
AU - Kamei Y.
AU - Sato R.
PY - 2018
SP - 429
EP - 437
DO - 10.5220/0006604804290437