Abstract

A major, but too-little-considered problem for Software Engineering (SE) is a lack of consensus concerning Computer Science (CS) and how this relates to developing unpredictable computing technology. We consider some implications for SE of computer systems differing scientific basis, exemplified with the International Standard Organisations Open Systems Interconnection (ISO-OSI) layered architectural model. An architectural view allows comparison of computing technology components facilitating a view of computing as a continuum. For example, at one layer of computer architecture, components written in Turing-complete machine language can be seen as deterministic and consistent with a theoretical paradigm of CS. At another layer, components (applications) closer to the human sphere have been seen as non-deterministic and inconsistent with theoretical CS. We compare unpredictable development of computing technology against the cyclic legacy of technological advance and scientific discovery, and suggest that SE indicates an enabling cycle, discernible in previous scientific revolution(s), is stalled or possibly hidden. The CS consequence of divorcing technological advance from scientific consensus is particularly concerning. For example human/computing events could be seen as unpredictable virtual phenomena that somehow extend the ontology of CS. Our approach challenges practical and philosophical boundaries by investigating if applying scientific method (SM) resolves any SE/Science dichotomy.

Highlights

  • In this paper, we try to address three initial fundamental “technical” (“Technical” as in programming and, more in general, as in all techniques software engineers adopt in their practice) issues in software engineering (SE) that occur when computing technology is developed.The first issue is about establishing what SE problems are

  • We outline computing as having a “nature” which is occurring within SE processes and in the

  • Adopting and/or adapting scientific method (SM) to gain an understanding of the role of dichotomy in SE and computing (Figure 3) seems reasonable

Read more

Summary

Introduction

This, in turn, leads into a third issue: why it is possible for SE to be building less predictable technology than other engineering disciplines. These questions lead into a discussion on the epistemological and metaphysical status of SE in relation to the artefacts built, e.g. software. We outline computing as having a “nature” which is occurring within SE processes and in the “architecture” of the technological outcomes. This discussion explores a connection we see between. Hypothesis testing in CS, are outlined, put into a wider context and further discussed in the fourth and last section of this paper

A “Technical” Problem for Software Engineering
Conclusions

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.