Loading…
SATURN 2017 has ended
Registration is open every day from 7:30 a.m. until the close of the day’s sessions.
Breakfast will be served starting at 6:30 a.m. for conference registrants in the Columbine Restaurant.
30-minute refreshment breaks are at 10:00 a.m. and 2:30 p.m. daily.
Lunch is 12:00-1:00 p.m. daily in the Columbine Restaurant.

Sign up or log in to bookmark your favorites and sync them to your phone or calendar.

Tech Tutorial [clear filter]
Tuesday, May 2
 

1:00pm

Failure as Success: The Mindset, the Methods, and the Landmines

Failing fast, failing forward, and learning from failure are all the rage in the software and technology industry right now. Tech company "unicorns" talk endlessly about how they reframe failure as success. Yet many of us are still required to design and implement backup system capabilities, redundancies, and controls into our software and operations processes. And when those fail, we cringe at the conversation with management that will ensue. So is all this talk of reframing failure as success within our organizations just that—talk? In this interactive session, we'll cover

  • the history of incident/accident modeling
  • what safety science research has to do with IT and large-scale Internet operations
  • helping your organization embrace and learn from failure
  • conducting "blameless postmortems" after an operational incident
  • introducing resilience engineering into organizational and technical design and operations
  • various pitfalls that organizations fall into when reframing failure

Speakers
JP

J. Paul Reed

J. Paul Reed has over 15 years’ experience as a build/release engineer, working with such storied companies as VMware, Mozilla, Postbox, Symantec, and Salesforce. In 2012, he founded Release Engineering Approaches, a consultancy incorporating a host of tools and techniques to help... Read More →


Tuesday May 2, 2017 1:00pm - 2:30pm
Conference Room C

3:00pm

Continuously Validating Architectures in an Agile-Centric World

As the pace of innovation increases, IT groups are using agile approaches and short release cycles to deliver systems rapidly. As a result, IT architectures evolve quickly, and validating architectures a few times is not enough. We present a new approach for continuously validating architectures. The objective of this architecture validation technique is to ensure that the future system meets its business objectives and quality attribute requirements, without slowing down the pace of continuous delivery. This presentation describes how to use our approach to validate architectures in any type of project. First, we define what we mean by Architecture Validation. Then we focus on when to conduct Architecture Validations. We then discuss the roles required in an Architecture Validation. We finally detail how we conduct architecture validations by describing some industry-recognized techniques such as questionnaire-driven approaches, scenario-based approaches, and decision-based approaches. To illustrate the concepts introduced in this presentation, we will use a real-life example of Continuous Architecture Validation, showing how various approaches can be combined to effectively validate a project.

See the slides.

Watch the video.


Speakers
avatar for Murat Erder

Murat Erder

Deutsche Bank
Murat Erder is a Director in the Chief Data Office for Deutsche Bank. In this role Murat focuses on the architecture and delivery for Data Engineering capabilities. Prior to this role, Murat was the Domain Architect for Reference Data responsible for all aspects of the architecture... Read More →
avatar for Pierre Pureur

Pierre Pureur

Pierre Pureur is Vice President and Chief Enterprise Architect for Travelers, where he leads the Enterprise Architecture group that includes Solution Architecture, Infrastructure Architecture, Security Architecture, and Disruptive Technologies. Prior to his current role, Pierre was... Read More →


Tuesday May 2, 2017 3:00pm - 4:30pm
Conference Room C

3:00pm

Crowdsourcing Software Architecture: The Distributed Architect

Software architects need to have it all: exceptional technological know-how, up-to-date programming experience, good people skills, ability to abstract, knowledge of important architectural styles and tactics, and visionary leadership. It has always been difficult to find all of these aspects in a single person. Modern development efforts set in highly dynamic, agile contexts and the emergence of polyglot technological environments make it even more challenging. This talk introduces alternatives to the classic role of the software architect that showed a boost in delivery speed, overall product quality, and organizational flexibility in real-life projects of various domains. The alternatives work well in an agile project setup and embody a distributed approach of handling architectural concerns. The talk covers important factors for choosing between the approaches as well as the core concepts that make them effective even in more complex environments, including low-viscosity design, architecture communities, and tests of quality attributes.

See the slides.

Watch the video.


Speakers
avatar for Stefan Toth

Stefan Toth

Stefan Toth is a software architect and the Chief Executive Officer of embarc Software Consulting GmbH, based in Hamburg, Germany. He focuses on the design of medium- to large-sized software solutions, the evaluation of software architectures, and the connection of these topics to... Read More →


Tuesday May 2, 2017 3:00pm - 4:30pm
Conference Room A
 
Wednesday, May 3
 

10:30am

Microservices in the Cloud Using Kubernetes, Docker, and Jenkins

Designing, developing, and deploying microservices is changing dramatically with the introduction of container technology like Docker. Individual microservices are deployed via immutable containers, and with a growing number of containers the need to manage them becomes critical. Kubernetes is an open-source specification as well as a reference implementation for container orchestration. Applications can be built, tested, and deployed via continuous integration and delivery pipelines using an integration of Kubernetes and Jenkins pipelines. This presentation will give an introduction to Docker and Kubernetes and then dive into microservices development and deployment using CI/CD pipelines. The open-source nature of the full stack allows deployment to public as well as private clouds. One of the demos will run on a cloud-in-a-box mini private cloud running on ARM64-based open-source hardware.

See the slides.

Watch the video.


Speakers
avatar for Kurt Stam

Kurt Stam

Kurt Stam is a principal software developer at Red Hat, where he works on the Fabric8/Fuse iPaaS project and Cloud-in-a-Box. He is passionate about open-source software and hardware. He holds a PhD in Computational Mechanics, and in his spare time he kayaks along the East Coast of... Read More →


Wednesday May 3, 2017 10:30am - 12:00pm
Conference Room C

10:30am

Functional Programming Invades Architecture

A few decades ago when the first architecture books were being written, today's large-scale web systems were an oddity, but now they are mainstream. Our architecture pattern languages have changed as have our development, deployment, and operating procedures. During this transition, one source of ideas has been the functional programming (FP) community. FP itself mostly happens within a module, and many software architects treat it as an implementation choice, unrelated to architecture. But some ideas from the FP community are helpful in architectural design: statelessness, immutability, and pure functions. They underlie DevOps practices and are at the core of many distributed systems patterns in our architectures. Although functional programming ideas have been around for a long time, conditions are ripe for applying them now. This talk surveys how modern web systems are built with FP patterns, shows how they work, and considers why they are increasingly popular. We will dig into one client-side example and demonstrate how FP ideas can simplify tasks.

See the slides.

Watch the video.


Speakers
avatar for George Fairbanks

George Fairbanks

George Fairbanks has been teaching software architecture and design since 1998, is the author of the book Just Enough Software Architecture, has a PhD in Software Engineering from Carnegie Mellon University, and is a software engineer at Google.


Wednesday May 3, 2017 10:30am - 12:00pm
Conference Room A

1:00pm

Deep Learning for Software Development

Most of the AI breakthroughs in the past 4 years have resulted from deep learning. Can deep learning help software developers? Most work in this field has been devoted to metrics and estimates. Metrics are shadows of snowflakes, and thus not particularly informative for understanding the purpose of a system or the behavior of a component. Improving estimation, while an interesting application and a laudable goal, likewise does not directly help developers create better software faster or manage the growing complexity of real-world systems. Can we apply machine learning (ML) in ways that help guide development, inform software archaeology, and reduce effort for developers? If so, can it help us take on the systems-of-systems-of-systems of the future, where million-line code bases will be considered quaint? After a brief survey of existing work in the area, we'll investigate the question "what does software look like?" and examine the more interesting question of "what does good software look like?" Then we’ll use these insights to explore how ML can enable developers to create and manage ever-larger software systems. No ML experience required. Lots of pretty pictures.

Watch the video.


Speakers
avatar for Steven A. Lowe

Steven A. Lowe

Steven Lowe writes software, science, and fiction. Sometimes all at once. Lowe is a principal consultant and object mechanic at ThoughtWorks with over 30 years’ experience creating innovative yet practical solutions for hard problems. He is obsessed with helping clients achieve... Read More →


Wednesday May 3, 2017 1:00pm - 2:30pm
Conference Room D

3:00pm

An In-Depth Look at Event Sourcing with Command Query Responsibility Segregation

Although Event Sourcing has been around for many years, it remains outside the mainstream paradigm of software development. But it is an approach to building software with a long track record of success. With Event Sourcing, we place the highest value on the simple capture of essential business events without attempting to interpret them. By placing business concepts at the heart of our code, we can decouple systems into small services that can be quickly built, changed, and replaced. The resulting systems have single responsibilities and are decoupled from each other, which makes them simple to modify. Event Sourcing can enable us to move faster by supporting rapid experimentation with new perspectives, new user interactions, and new insights into our business. This talk will show you how.

See the slides.

Watch the video.


Speakers
avatar for Sebastian von Conrad

Sebastian von Conrad

Sebastian heads the software architecture efforts at Envato, where he helps solve difficult technical problems for some of Australia's largest websites. He is a former development manager and developer, and he was recently president of Ruby Australia. He's spoken at conferences in... Read More →


Wednesday May 3, 2017 3:00pm - 4:30pm
Conference Room C

3:00pm

The Life and Times of an Architecture: Architectural Decision Making Throughout the Solution Life Cycle

Over the last decade, the architecture discipline has matured from up-front design to a stream of architectural decisions that address concerns related to ever-evolving software systems. The word stream implies a continuous process, but in real life that stream is far from homogeneous. Architects make decisions that have widely varying impact, based on information with differing levels of uncertainty, throughout the life of a software solution. The way these decisions and their impact are communicated evolves as the audience and focus of the architectural communication change. In this tutorial, we explore the metaphor of a human lifetime to illustrate aspects of architectural decision making throughout a software solution’s lifecycle. Amid the stream of design decisions, we will look for anchor points with common concerns to address recurring communication needs. We will see how the nature of architectural decisions changes from birth (the first architectural outline) to graduation (making the business case), and find guidance on communicating the architecture at times of life-defining milestones like marriage (committing to the architecture) and revolutionary changes to the solution. The points will be illustrated by real-life examples from an interesting case study. The tutorial is based on Risk- and Cost-Driven Architecture, but no prior knowledge of it is required.

See the slides.

Watch the video.


Speakers
avatar for Eltjo Poort

Eltjo Poort

Eltjo Poort is Distinguished Solution Architect at CGI in The Netherlands. In his 30-year career in the software industry, he has fulfilled many engineering and project management roles. In the 1990s, he oversaw the implementation of the first SMS text-messaging systems in the United... Read More →


Wednesday May 3, 2017 3:00pm - 4:30pm
Conference Room A
 
Thursday, May 4
 

10:30am

Going Serverless: Building Production Applications Without Managing Infrastructure

This talk introduces serverless computing, a new paradigm for deploying applications in the cloud that requires no server administration and which scales transparently in both function and cost. With the release of AWS Lambda and API Gateway, it has become possible to build RESTful interfaces without managing a server infrastructure. Leveraging these and other AWS services, you can build entire business applications in a secure, scalable fashion, without provisioning virtual machines or taking on the system administration tasks that entails. There has since been a lot of buzz around “serverless” development, with entire frameworks and tooling built to support such an approach. In this talk, I will discuss the tradeoffs of taking such an approach, how to technically execute such an approach within AWS, and what my own experiences have been in building and running serverless applications in production. My goal is to equip attendees with enough knowledge to be comfortable trying this approach.

See the slides.

Watch the video.


Speakers
avatar for Christopher Phillips

Christopher Phillips

Christopher Phillips has seven years of experience in traditional software application development across a variety of languages and technologies. He has written distributed, highly available, resilient systems for CNN, including the system used to schedule and perform all of their... Read More →


Thursday May 4, 2017 10:30am - 12:00pm
Conference Room C

1:00pm

Making the Switch to "Serverless" Full-Stack Development

“Serverless” is a newly popular buzzword and, as with many technology buzzwords, is a complete misnomer (“cloud,” anyone?). In this session, we will discuss what serverless really means, what the differences are among various providers, why you would consider using a serverless architecture, and how you would implement one. We’ll discuss greenfield development as well as a migration path for existing web applications. Other topics will include how the development workflow will change and why, what testing will look like in a serverless world, and some pitfalls to avoid. While a serverless approach can be applied to applications written in a variety of languages, JavaScript will be the language used for this talk, so we will examine some popular serverless JavaScript frameworks, including apex.js, claudia.js, and serverless.js. If you’re interested in full-stack development, DevOps, microservice architecture, containers, cutting operational costs, or just keeping up with the latest application architecture approaches, this talk is for you. For this 90-minute, interactive, participatory workshop, you will need a laptop, a GitHub account, and an Amazon AWS account.

See the slides.

Watch the video.


Speakers
avatar for David Aktary

David Aktary

David Aktary is an ex-IBMer who has been writing software for nearly 20 years. His eclectic background has taken him on detours through Wall Street, Hollywood, and collegiate head coaching, but software development and architecture have been constants since graduating with his BS... Read More →


Thursday May 4, 2017 1:00pm - 2:30pm
Conference Room B

1:00pm

Ultimate Architecture Enforcement: Write Your Own Rules and Enforce Them Continuously

The software architecture discussed and carefully created is often not entirely followed in the implementation. In this session, we'll look at an easy-to-use, automated solution to improve architecture conformance. This solution has been successfully applied in a mid-size organization for the past six years. It uses free open-source tools and helps raise architecture knowledge across the development team. Through examples and guided exercises, you'll learn the basics of a free open source static analysis tool for creating custom checks in Java for architecture conformance. We'll also discuss strategies for how to enforce the architecture continuously by integrating the custom checks to your CI infrastructure and how to make this setup effective. In this session you'll do some basic coding. To execute the activities, bring your laptop loaded with JDK 1.7+ and Apache maven 3+. 

See the slides.

Watch the video.


Speakers
avatar for Paulo Merson

Paulo Merson

Brazilian Federal Court of Accounts (TCU)
Paulo Merson has been programming in the small and programming in the large for over 30 years. Paulo is a software developer at the Brazilian Federal Court of Accounts. He is a Visiting Scientist with the Software Engineering Institute (SEI), a certified instructor for Arcitura, and... Read More →


Thursday May 4, 2017 1:00pm - 2:30pm
Conference Room A