Campus Units

Computer Science

Document Type

Conference Proceeding

Conference

FSE Foundations of Software Engineering

Publication Version

Accepted Manuscript

Link to Published Version

https://doi.org/10.1145/1882362.1882423

Publication Date

11-7-2010

Journal or Book Title

Proceedings of the FSE/SDP workshop on Future of software engineering research

First Page

293

Last Page

298

DOI

10.1145/1882362.1882423

Conference Title

The FSE/SDP workshop on Future of software engineering research (FoSER '10)

Conference Date

Nov. 7-8, 2010

City

Sante Fe, NM

Abstract

Software systems must face two challenges today: growing complexity and increasing parallelism in the underlying computational models. The problem of increased complexity is often solved by dividing systems into modules in a way that permits analysis of these modules in isolation. The problem of lack of concurrency is often tackled by dividing system execution into tasks that permits execution of these tasks in isolation. The key challenge in software design is to manage the explicit and implicit dependence between modules that decreases modularity. The key challenge for concurrency is to manage the explicit and implicit dependence between tasks that decreases parallelism. Even though these challenges appear to be strikingly similar, current software design practices and languages do not take advantage of this similarity. The net effect is that the modularity and concurrency goals are often tackled mutually exclusively. Making progress towards one goal does not naturally contribute towards the other. My position is that for programmers that are not formally and rigorously trained in the concurrency discipline the safest and most productive way to get scalability in their software is by improving modularity of their software using programming language features and design practices that reconcile modularity and concurrency goals. I briefly discuss preliminary efforts of my group, but we have only touched the tip of the iceberg.

Comments

This proceeding is published as Rajan, Hridesh. "Building scalable software systems in the multicore era." In Proceedings of the FSE/SDP workshop on Future of software engineering research, pp. 293-298. ACM, 2010. doi:10.1145/1882362.1882423. Posted with permission.

Rights

"© ACM, 2010. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in the Proceedings of the FSE/SDP workshop on Future of software engineering research.

Copyright Owner

ACM

Language

en

File Format

application/pdf

Published Version

Share

Article Location

 
COinS