Positive and Negative Innovations in Software Engineering

Author(s):  
Capers Jones

The software engineering field has been a fountain of innovation. Ideas and inventions from the software domain have literally changed the world as we know it. For software development, we have a few proven innovations. The way software is built remains surprisingly primitive. Even in 2008 major software applications are cancelled, overrun their budgets and schedules, and often have hazardously bad quality levels when released. There have been many attempts to improve software development, but progress has resembled a drunkard’s walk. Some attempts have been beneficial, but others have been either ineffective or harmful. This article puts forth the hypothesis that the main reason for the shortage of positive innovation in software development methods is due to a lack of understanding of the underlying problems of the software development domain. A corollary hypothesis is that lack of understanding of the problems is due to inadequate measurement of quality, productivity, costs, and the factors that affect project outcomes.

2021 ◽  
Vol 46 (2) ◽  
pp. 16-17
Author(s):  
Sherlock A. Licorish ◽  
Christoph Treude ◽  
John Grundy ◽  
Kelly Blincoe ◽  
Stephen MacDonell ◽  
...  

Six months ago an important call was made for researchers globally to provide insights into the way Software Engineering is done in their region. Heeding this call, we hereby outline the position Software Engineering in Australasia (New Zealand and Australia). This article first considers the software development methods, practices and tools that are popular in the Australasian software engineering community. We then briefly review the particular strengths of software engineering researchers in Australasia. Finally, we make an open call for collaborators by reflecting on our current position and identifying future opportunities.


2011 ◽  
Vol 23 (4) ◽  
pp. 64-79 ◽  
Author(s):  
Diane Kelly

The development of scientific software is usually carried out by a scientist who has little professional training as a software developer. Concerns exist that such development produces low-quality products, leading to low-quality science. These concerns have led to recommendations and the imposition of software engineering development processes and standards on the scientists. This paper utilizes different frameworks to investigate and map characteristics of the scientific software development environment to the assumptions made in plan-driven software development methods and agile software development methods. This mapping exposes a mismatch between the needs and goals of scientific software development and the assumptions and goals of well-known software engineering development processes.


Author(s):  
Diane Kelly

The development of scientific software is usually carried out by a scientist who has little professional training as a software developer. Concerns exist that such development produces low-quality products, leading to low-quality science. These concerns have led to recommendations and the imposition of software engineering development processes and standards on the scientists. This paper utilizes different frameworks to investigate and map characteristics of the scientific software development environment to the assumptions made in plan-driven software development methods and agile software development methods. This mapping exposes a mismatch between the needs and goals of scientific software development and the assumptions and goals of well-known software engineering development processes.


Author(s):  
Janis Osis ◽  
Erika Asnina

Experts' opinions exist that the way software is built is primitive. The role of modeling as a treatment for Software Engineering (SE) became more important after the appearance of Model-Driven Architecture (MDA). The main advantage of MDA is architectural separation of concerns that showed the necessity of modeling and opened the way for Software Development (SD) to become engineering. However, this principle does not demonstrate its whole potential power in practice, because of a lack of mathematical accuracy in the initial steps of SD. The question about the sufficiency of modeling in SD is still open. The authors believe that SD, in general, and modeling, in particular, based on mathematical formalism in all its stages together with the implemented principle of architectural separation of concerns can become an important part of SE in its real sense. They introduce such mathematical formalism by means of topological modeling of system functioning.


2018 ◽  
pp. 310-327
Author(s):  
Janis Osis ◽  
Erika Asnina

Experts' opinions exist that the way software is built is primitive. The role of modeling as a treatment for Software Engineering (SE) became more important after the appearance of Model-Driven Architecture (MDA). The main advantage of MDA is architectural separation of concerns that showed the necessity of modeling and opened the way for Software Development (SD) to become engineering. However, this principle does not demonstrate its whole potential power in practice, because of a lack of mathematical accuracy in the initial steps of SD. The question about the sufficiency of modeling in SD is still open. The authors believe that SD, in general, and modeling, in particular, based on mathematical formalism in all its stages together with the implemented principle of architectural separation of concerns can become an important part of SE in its real sense. They introduce such mathematical formalism by means of topological modeling of system functioning.


Sign in / Sign up

Export Citation Format

Share Document