Domain engineering: A "radical innovation" for software and systems engineering? A biased account

ISSN: 16113349
4Citations
Citations of this article
7Readers
Mendeley users who have this article in their library.

Abstract

Some facts: Before software and computing systems can be developed, their requirements must be reasonably well understood. Before requirements can be finalised the application domain, as it is, must be fairly well understood. Some opinions: In today's software and computing systems development very little, if anything is done, we claim, to establish fair understandings of the domain. It simply does not suffice, we further claim, to record assumptions about the domain when recording requirements. Far more radical theories of application domains must be at hand before requirements development is even attempted. In this presentation we advocate a strong rôle for domain engineering. We argue that domain descriptions are far more stable than are requirements prescriptions for support of one or another set of domain activities. We further argue, that once, given extensive domain descriptions, it is comparatively faster to establish trustworthy and stable requirements than it is today. We finally argue that once we have a sufficient (varietal) collection of domain specific, ie. related, albeit distinct, requirements, we can develop far more reusable software components than using current approaches. Thus, in this contribution we shall reason, at a meta-level, about major phases of software engineering: Domain engineering, requirements engineering, and software design. We shall suggest a number of domain and requirements engineering as well as software design concerns, stages and steps, notably: Domain facets, including domain intrinsics, support technologies, management & organisation, rules & regulations, as well as human behaviour. Requirements: Domain requirements, interface requirements, and machine requirements. Specifically: Domain requirements projection, determination, extension, and initialisation. We shall then proceed to "lift" our methodological concerns to encompass the more general ones of abstraction and modelling; of informal as well as formal description; of the more general issues of documentation: Informative, descriptive/prescriptive, and analytical; and hence of the importance of semiotics: Pragmatics, semantics, and syntax. The paper concludes with a proposal for a 'Grand Challenge' for computing science [62,89,19]. © Springer-Verlag Berlin Heidelberg 2003.

Cite

CITATION STYLE

APA

Bjørner, D. (2004). Domain engineering: A “radical innovation” for software and systems engineering? A biased account. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2772, 100–144.

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free