James Ivers
Software Engineering Institute
Publications by James Ivers
-
Refactoring for Software Isolation
November 11, 2022 • Presentation
James Ivers
This project extends a refactoring assistant that automates the majority of the work required for software isolation.
read -
Preview of Refactoring for Software Isolation
November 07, 2022 • Video
James Ivers
This short video provides an introduction to a research topic presented at the SEI Research Review 2022.
watch -
Where Software Architects Make a Difference
June 13, 2022 • Video
James IversShane McGraw
In the episode, Shane McGraw, Outreach Lead, interviews James Ivers, lead of the SEI’s software architecture team, about openings for software architects and software architecture researchers.
watch -
Industry's Cry for Tools That Support Large-Scale Refactoring
April 11, 2022 • Conference Paper
James IversRobert NordIpek Ozkaya
This paper introduces an industry survey that assessed which tools developers use in large-scale refactoring efforts and how well those tools support refactoring.
read -
Extensibility
April 06, 2022 • Technical Report
Rick KazmanSebastián EcheverríaJames Ivers
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for extensibility.
read -
Robustness
March 16, 2022 • Technical Report
Rick KazmanPhilip BiancoSebastián Echeverría
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for robustness.
read -
Untangling the Knot: Enabling Architecture Evolution with Search-Based Refactoring
March 15, 2022 • Conference Paper
James IversChris SeifriedIpek Ozkaya
This paper describes a search-based algorithm that recommends a series of refactorings that isolate specified software from its architectural dependencies.
read -
Untangling the Knot: Automating Software Isolation
November 07, 2021 • Presentation
James Ivers
Our prototype tool combines advances in search-based software engineering with static code analysis and refactoring knowledge for cost-effective software improvement.
read -
Untangling the Knot: Automating Software Isolation
November 05, 2021 • Video
James Ivers
This short video provides an introduction to a research topic presented at the SEI Research Review 2021.
watch -
AI for Software Engineering
August 04, 2021 • Presentation
James IversIpek Ozkaya
This talk describes the state of research in AI applied to improving software development efficiency and the SEI's recent progress in search-based refactoring.
read -
Untangling the Knot: Enabling Rapid Software Evolution
December 15, 2020 • Video
James Ivers
This project uses AI techniques to recommend refactorings that can improve the structure of software in significantly less time than it takes to manually refactor.
watch -
Maintainability
December 01, 2020 • Technical Report
Rick KazmanPhilip BiancoJames Ivers
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for maintainability.
read -
Next-Generation Automated Software Evolution Refactoring at Scale
November 30, 2020 • Conference Paper
James IversIpek OzkayaRobert Nord
This paper describes a vision for creating the next generation of industry-relevant tools for automating software evolution and automated refactoring at scale.
read -
A Playbook for Early Architecture Analysis
November 13, 2020 • Presentation
John KleinPhilip BiancoRick Kazman
This talk describes a playbook to analyze early architecture artifacts' support for development-time quality attributes that affect long-term system success.
read -
Untangling the Knot: Enabling Rapid Software Evolution
November 04, 2020 • Presentation
James Ivers
This project uses AI techniques to recommend refactorings that can improve the structure of software in significantly less time than it takes to manually refactor.
read -
Poster - Untangling the Knot
November 04, 2020 • Poster
Robert NordIpek OzkayaJames Ivers
This project uses AI techniques to recommend refactorings that can improve the structure of software in significantly less time than it takes to manually refactor.
read -
Untangling the Knot: Recommending Refactorings
May 07, 2020 • Presentation
James Ivers
The Untangling the Knot project uses AI techniques to recommend a set of refactorings that isolates functionality from dependencies with the rest of the system.
read -
Becoming a Better Software Architect
March 13, 2020 • Webinar
Ipek OzkayaJames IversPhilip Bianco
In this session, a panel of architects discussed their personal paths to becoming software architects and how they have helped others on that journey.
watch -
Integrability
February 07, 2020 • Technical Report
Rick KazmanPhilip BiancoJames Ivers
This report summarizes how to systematically analyze a software architecture with respect to a quality attribute requirement for integrability.
read -
Can AI Close the Design-Code Abstraction Gap?
January 27, 2020 • Conference Paper
James IversIpek OzkayaRobert Nord
This paper argues that the software engineering community can use AI/ML techniques to advance automation in design analysis and to make design improvements.
read -
Untangling the Knot: Recommending Component Refactorings
November 11, 2019 • Video
James Ivers
Watch SEI principal investigator Mr. James Ivers discuss research on applying AI techniques to rapidly increase the pace of making structural changes to software code bases.
watch -
Untangling the Knot: Recommending Component Refactorings
October 28, 2019 • Presentation
James Ivers
This presentation describes work to improve the ability to evolve software efficiently.
read -
Untangling the Knot: Recommending Component Refactorings
October 28, 2019 • Poster
James Ivers
This poster describes early research intended to outperform refactoring recommendations based only on quality metrics.
read -
Applying AI to Reduce Software Improvement Costs
September 30, 2019 • Fact Sheet
Ipek OzkayaJames Ivers
This fact sheet summarizes several SEI projects seeking collaborators with whom to apply AI techniques that automate labor-intensive software engineering activities.
read -
Evaluating a Partial Architecture in a ULS Context
May 13, 2011 • Presentation
Len BassJames IversRick Kazman
This presentation from SATURN 2011 discusses the application of architectural principles to analyzing an architectural landscape.
read -
Architecture Evaluation without an Architecture: Experience with the Smart Grid
April 30, 2011 • White Paper
Rick KazmanLen BassJames Ivers
This paper describes an analysis of some of the challenges facing one portion of the Electrical Smart Grid in the United States - residential Demand Response (DR) systems.
read -
Documenting Software Architectures: Views and Beyond, 2nd Edition
October 05, 2010 • Book
Paul C. ClementsFelix BachmannLen Bass
This book provides the most complete and current guidance on how to capture a software architecture in a commonly understandable form.
read -
Results of SEI Independent Research and Development Projects (FY 2009)
December 01, 2009 • Technical Report
Len BassLutz WragePaul C. Clements
In this report, the authors describe the SEI independent research and development (IRAD) projects conducted during fiscal year 2009.
read -
Model-Driven Construction of Certified Binaries
October 05, 2007 • Presentation
Sagar ChakiJames IversPeter Lee
Sagar Chaki and others describe in this presentation an implementation of the approach that targets the Pin component technology, and presents experimental results on a collection of benchmarks.
read -
Certified Binaries for Software Components
September 01, 2007 • Technical Report
Sagar ChakiJames IversPeter Lee
In this report, the authors present an approach to certify binary code against expressive policies to achieve the benefits of PCC and CMC.
read -
Results of SEI Independent Research and Development Projects (FY 2006)
July 01, 2007 • Technical Report
Christopher J. AlbertsEileen C. ForresterSuzanne Garcia-Miller
This report describes the IRAD projects that were conducted during fiscal year 2006 (October 2005 through September 2006).
read -
Lessons Learned Model Checking an Industrial Communications Library
September 01, 2005 • Technical Note
James Ivers
This 2005 report describes the application of a reasoning framework to the design of an industrial communications library and the problems that were found.
read -
The ComFoRT Reasoning Framework
August 10, 2005 • Presentation
Sagar ChakiJames IversNatasha Sharygina
Presented: August 2005
read -
The ComFoRT Reasoning Framework
July 01, 2005 • White Paper
Sagar ChakiJames IversNatasha Sharygina
Model checking is a promising technology for verifying critical behavior of software. However, software model checking is hamstrung by scalability issues and is difficult for software engineers to use directly. ComFoRT addresses both of these challenges.
read -
Reasoning Frameworks
July 01, 2005 • Technical Report
Len BassJames IversMark H. Klein
This report describes a vehicle for encapsulating the quality attribute knowledge needed to understand a system's quality behavior as a reasoning framework that can be used by nonexperts.
read -
Pin Component Technology (V1.0) and Its C Interface
April 01, 2005 • Technical Note
Scott HissamJames IversDaniel Plakosh
This 2005 report describes the main concepts of Pin and documents the C-language interface to Pin V1.0.
read -
Overview of ComFoRT: A Model Checking Reasoning Framework
April 01, 2004 • Technical Note
James IversNatasha Sharygina
This 2004 report describes ComFoRT, a reasoning framework that packages the effectiveness of state-of-the-art model checking in a form that enables users to apply the analysis technique without being experts in its use, and its incorporation in a PECT.
read -
Documenting Component and Connector Views with UML 2.0
April 01, 2004 • Technical Report
James IversPaul C. ClementsDavid Garlan
This 2004 report explores how changes in UML 2.0 affect UML's suitability for documenting component and connector views.
read -
Predictable Assembly of Substation Automation Systems: An Experiment Report, Second Edition
September 01, 2003 • Technical Report
Scott HissamKurt C. WallnauWilliam G. Wood
This 2003 report describes the results of an exploratory PECT prototype for substation automation, an application area in the domain of power generation, transmission, and management.
read -
Preserving Real Concurrency
July 01, 2003 • White Paper
James IversKurt C. Wallnau
In this 2003 whitepaper, the authors make use of information provided by components and extracted from static assembly topologies to faithfully model real concurrency. The result is more effective analysis.
read -
Documenting Software Architectures in an Agile World
July 01, 2003 • Technical Note
Paul C. ClementsJames IversReed Little
This report compares the Software Engineering Institute's Views and Beyond approach for documenting software architectures with the documentation philosophy embodied in agile software-development methods.
read -
Snapshot of CCL: A Language for Predictable Assembly
June 01, 2003 • Technical Note
Kurt C. WallnauJames Ivers
This 2003 report presents a snapshot of the construction and composition language (CCL) by examining a small example CCL specification.
read -
PECT Infrastructure: A Rough Sketch
December 01, 2002 • Technical Note
Scott HissamJames Ivers
This 2002 paper investigates the nature of PECT infrastructures, summarizes the activities that a PECT infrastructure should support, and proposes a design for the tools that make up a PECT infrastructure.
read -
A Basis for Composition Language CL
September 01, 2002 • Technical Note
James IversNishant SinhaKurt C. Wallnau
This report describes the composition language CL and its rudimentary graphical syntax, and defines and illustrates the compositional semantics for CL using Hoare's CSP.
read -
Documenting Software Architecture: Documenting Interfaces
June 01, 2002 • Technical Note
Felix BachmannLen BassPaul C. Clements
This report provides guidance for documenting the interfaces to software elements.
read -
Documenting Software Architecture: Documenting Behavior
January 01, 2002 • Technical Note
Felix BachmannLen BassPaul C. Clements
This report describes ways to document the behavior of systems, subsystems, and components of software architecture.
read -
Documenting Software Architectures: Organization of Documentation Package
August 01, 2001 • Technical Note
Felix BachmannLen BassPaul C. Clements
This comprehensive handbook outlines how to produce high-quality documentation for software architectures.
read -
SEI Workshop on Software Architecture Representation, 16-17 January 2001
May 01, 2001 • Special Report
Felix BachmannPaul C. ClementsDavid Garlan
This report summarizes the discussions from the 2001 Architecture Representation Workshop, where five leading software architects and practitioners were invited to discuss aspects of the architecture representation with senior members of the SEI technical staff.
read -
Software Architecture Documentation in Practice: Documenting Architectural Layers
March 01, 2000 • Special Report
Felix BachmannLen BassJeromy Carriere
The 2000 report lays out our approach and organization for the book-in-planning titled Software Architecture Documentation in Practice, and provides guidance for the layer diagram.
read