Engineering the Future of Software
April 10–11, 2016: Training
April 11–13, 2016: Conference
New York, NY

Road traffic analysis and agile architectures

Kristoffer Dyrkorn (Norwegian Broadcasting Corporation)
10:45am–12:15pm Tuesday, 04/12/2016
Distributed systems
Location: Beekman Parlor Level: Intermediate
Average rating: ****.
(4.00, 4 ratings)

Prerequisite knowledge

Attendees should have basic experience with agile projects and knowledge of the forces and compromises involved in architectural decisions. Hands-on solution architects and senior developers will gain the most value from the presentation.


The construction and maintenance of roads is expensive. Metrics such as traffic speeds, volumes, patterns, and trends heavily influence how roads should be built and maintained. Improving the data quality of your metrics means you can plan and execute roadwork more efficiently. Kristoffer Dyrkorn outlines an infrastructure consisting of distributed sensors and signal processing devices, a data-ingestion application, and a NoSQL database optimized for analytics. The system registers information about vehicles passing measurement stations located along major roads and provides continuously updated reports and low-latency traffic event information.

While building the system and integrating it with an increasing number of measurement stations, Kristoffer and his team encountered a wide variety of architectural challenges due to a very diverse technology stack, a need for continuously cost-effective scalability, and a desire to keep the architecture simple and agile. Kristoffer discusses some of the challenges his team met, provides the reasoning behind the choices they made, and covers the project’s outcomes—positive and negative, intended and unintended, and direct and subsequent.

Topics include:

  • An overview of the domain and the system goals
  • The first iteration: the principles behind the basic design; the modules, their responsibilities, and how they were integrated
  • Shifting gears: changes made when hitting design limitations
  • Gaining experience: changes and simplifications made due to long-term exposure to and more thorough observations of earlier choices
  • Near disaster: examples of dangerous problems and how the architecture helped solve them
  • Conclusions and summary: agile architectures as series of choices; observed patterns that should be explored further
Photo of Kristoffer Dyrkorn

Kristoffer Dyrkorn

Norwegian Broadcasting Corporation

Kristoffer Dyrkorn works at the Norwegian Broadcasting Corporation. He has been a developer, solution architect and project manager on various large IT projects for 20 years. Kristoffer specializes in pragmatic architectures and performance/scalability and has been a speaker at several developer and usability conferences in Norway, Europe, and the US.