scispace - formally typeset
Search or ask a question
Topic

Programming complexity

About: Programming complexity is a research topic. Over the lifetime, 1255 publications have been published within this topic receiving 21371 citations.


Papers
More filters
Proceedings ArticleDOI
23 May 2007
TL;DR: Model-Driven Engineering (MDE) is typically used to describe software development approaches in which abstract models of software systems are created and systematically transformed to concrete implementations as discussed by the authors, but full realizations of the MDE vision may not be possible in the near to medium-term primarily because of the wicked problems involved.
Abstract: The term model-driven engineering (MDE) is typically used to describe software development approaches in which abstract models of software systems are created and systematically transformed to concrete implementations. In this paper we give an overview of current research in MDE and discuss some of the major challenges that must be tackled in order to realize the MDE vision of software development. We argue that full realizations of the MDE vision may not be possible in the near to medium-term primarily because of the wicked problems involved. On the other hand, attempting to realize the vision will provide insights that can be used to significantly reduce the gap between evolving software complexity and the technologies used to manage complexity.

1,155 citations

Book
22 Oct 2010
TL;DR: A set of properties of syntactic software complexity measures is proposed to serve as a basis for the evaluation of such measures, and several are found to fail to possess particularly fundamental properties; this failure calls into question their usefulness in measuring synthetic complexity.
Abstract: A set of properties of syntactic software complexity measures is proposed to serve as a basis for the evaluation of such measures. Four known complexity measures are evaluated and compared using these criteria. This formalized evaluation clarifies the strengths and weaknesses of the examined complexity measures, which include the statement count, cyclomatic number, effort measure, and data flow complexity measures. None of these measures possesses all nine properties, and several are found to fail to possess particularly fundamental properties; this failure calls into question their usefulness in measuring synthetic complexity. >

846 citations

Journal ArticleDOI
TL;DR: The article presents 10 techniques that can help reduce the flaws in your code and improve the ability of software developers to predict and control efficient software projects.
Abstract: Software's complexity and accelerated development schedules make avoiding defects difficult. We have found, however, that researchers have established objective and quantitative data, relationships, and predictive models that help software developers avoid predictable pitfalls and improve their ability to predict and control efficient software projects. The article presents 10 techniques that can help reduce the flaws in your code.

766 citations

Journal ArticleDOI
TL;DR: It is shown that the search for general software complexity measures is doomed to failure and the theory does help to define and validate measures of specific complexity attributes, and is able to view software measurement in a very wide perspective.
Abstract: Software measurement, like measurement in any other discipline, must adhere to the science of measurement if it is to gain widespread acceptance and validity. The observation of some very simple, but fundamental, principles of measurement can have an extremely beneficial effect on the subject. Measurement theory is used to highlight both weaknesses and strengths of software metrics work, including work on metrics validation. We identify a problem with the well-known Weyuker properties (E.J. Weyuker, 1988), but also show that a criticism of these properties by J.C. Cherniavsky and C.H. Smith (1991) is invalid. We show that the search for general software complexity measures is doomed to failure. However, the theory does help us to define and validate measures of specific complexity attributes. Above all, we are able to view software measurement in a very wide perspective, rationalising and relating its many diverse activities. >

544 citations

Journal ArticleDOI
01 Sep 2011
TL;DR: This work presents Swift's implicitly parallel and deterministic programming model, which applies external applications to file collections using a functional style that abstracts and simplifies distributed parallel execution.
Abstract: Scientists, engineers, and statisticians must execute domain-specific application programs many times on large collections of file-based data. This activity requires complex orchestration and data management as data is passed to, from, and among application invocations. Distributed and parallel computing resources can accelerate such processing, but their use further increases programming complexity. The Swift parallel scripting language reduces these complexities by making file system structures accessible via language constructs and by allowing ordinary application programs to be composed into powerful parallel scripts that can efficiently utilize parallel and distributed resources. We present Swift's implicitly parallel and deterministic programming model, which applies external applications to file collections using a functional style that abstracts and simplifies distributed parallel execution.

421 citations


Network Information
Related Topics (5)
Software development
73.8K papers, 1.4M citations
79% related
Server
79.5K papers, 1.4M citations
75% related
Web service
57.6K papers, 989K citations
74% related
Cache
59.1K papers, 976.6K citations
74% related
Software
130.5K papers, 2M citations
73% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20236
202211
202131
202056
201953
201847