Home // ICSEA 2017, The Twelfth International Conference on Software Engineering Advances // View article


Unifying Definitions for Modularization, Abstraction, and Encapsulation as a Step Toward Foundational Multi-Paradigm Software Engineering Principles

Authors:
Stephen Clyde
Jorge Edison Lascano

Keywords: software engineering principles; modularity; encapsulation; abstraction

Abstract:
The concepts of modularity, abstraction, and encapsulation have been an integral part of software engineering for over four decades. However, their definitions and application vary between software development paradigms. In some cases, conflicting definitions exist for a single paradigm. This paper first defines the concept of a principle for software-engineering, in general, and then provides a template for documenting principles so they can be easily referenced and taught. Next, it proposes initial unified definitions for modularity, abstraction, and encapsulation that are applicable to multiple programming paradigms. It then shows that these unified definitions for modularity, abstraction, and encapsulation are non-redundant but complimentary of each other. Finally, it discusses future work for refining and validating these unified definitions through a series of empirical studies.

Pages: 105 to 113

Copyright: Copyright (c) IARIA, 2017

Publication date: October 8, 2017

Published in: conference

ISSN: 2308-4235

ISBN: 978-1-61208-590-6

Location: Athens, Greece

Dates: from October 8, 2017 to October 12, 2017