Smart Software Strategies 2015
We should learn from the past – to use what we learn for the next problem.
What can we learn from the experiences of Y2K? There are some lessons about software design and software maintenance that we might apply to the next wave of software and technology:
- Y2K bugs: In the late 1990s, software developers and managers were furiously working to analyze and fix potential “Y2K bugs.” We all knew that there were software applications that might fail on January 1, 2000, but no one was sure how we would manage to fix all of these defects in time.
- Today’s “smart” technologies: Fifteen years later, we are at the threshold of a new era of software – smart phones, wearable technology, digital currency, smart automobiles, smart power grids, smart appliances. How should we prepare for this wave? Should we be thinking ahead, should we be anticipating some of the potential risks and latent defects in our smart applications and smart support software for a software-driven future world?
What advances in software analysis, design, coding, and testing will we need to do reduce our exposure to defects, unintended side effects, and malicious mischief? We might look to the past – to the biggest concentrated effort to clean up and modernize software on a worldwide scale. Are there some lessons we can learn from “Y2K remediation activities” of the 1990s?
This workshop will explore questions about software development’s past and the future. Here are some possible discussion topics:
- Complexity: Y2K remediation was hard. How can we make our new software-driven world more robust?
- Differences between companies and industries: insurance companies were prepared for Y2K, utilities were not. In the future, who will be taking more risks, and who will be prepared?
- Tower of Babel: Y2K remediation had to address applications written in everything from assembler to Cobol to 4GLs to Java. Will we have the same level of programming language variation in our generation?
- Data communications: Many things have changed (and maybe improved) in data communications technologies in 15 years. Will this make things easier?
- The impact of big and old: Many big projects naturally have a lot of “technical debt” – what are the best ways to attack old code?
- Management issues: Can managers have an impact on software quality? How does the increased “global” nature of the software industry make things easier or harder than 15 years ago?
- Future: Will software risks be a bigger issue five years from now than it is today?
Who should participate?
- Methodologists: industry and academic practitioners who are formulating the methods and processes to be used by others in developing software products.
- Lead developers in industry: technical professionals who are “learning ahead of their teammates.”
- Academic: researchers who want to learn from the past and have an impact on the future.
The workshop will be a roundtable discussion of issues and ideas… an initial brainstorming session followed by discussions of the main ideas and questions from the workshop participants.
Position papers are not required, but it is OK to send a short position paper (with technology ideas, questions, experiences) to the workshop committee in advance – email@example.com. We will use the position papers to help prepare the discussion.
For more information on the workshop, see the workshop website: