We are pleased to announce our two keynote speakers for the Second International Workshop on Software Architecture and Metrics (SAM 2015) which will be held May 16, in conjunction with ICSE 2015, in Florence, Italy. Radu Marinescu is a professor of software engineering at the Politehnica University of Timisoara, Romania. His research is focused on the areas of quality assurance, software metrics and refactoring. He strongly believes that research must ultimately flow into software products that will change the state of the practice in software companies. In 2014 he received the ICSME Most Influential Paper Award, after having received in 2009 the IBM John Backus Award for "having done the most to improve programmer productivity.” Tim Menzies is a full Professor in CS at North Carolina State University where he teaches software engineering and search-based SE. His research relates to synergies between human and artificial intelligence, with particular application to data mining for software engineering. Prof. Menzies is the co-founder of the PROMISE conference series devoted to reproducible experiments in software engineering.
I had the pleasure of talking about our plans for SATURN 2015 with Bett Correa and Russ Miller, longtime friends of SATURN, on their Architectural Concepts Podcast. Listen to SATURN 2015 and Why You Should Plan to Attend.
We are pleased to announce our three keynote speakers for the 11th annual SEI Architecture Technology User Network (SATURN) Conference 2015. SATURN 2015 will be held April 27-30, at the Lord Baltimore Hotel, Baltimore, Md.
WICSA 2015, the 12th Working IEEE/IFIP Conference on Software Architecture, and CompArch 2015, the 9th federated conference series bringing together researchers and practitioners from Component-Based Software Engineering and Quality of Software Architecture, are launching a unified call for workshops for the 2015 co-located event that will be held in Montréal, Canada, May 4-8, 2015. WICSA/CompArch 2015 workshops provide a unique forum for researchers and practitioners to present and discuss the latest R&D results, experiences, trends, and challenges in the field of software architecture, component-based software engineering, and software system qualities.
In a Huffington Post article titled “What Global Warming, Energy Efficiency and Erlang Have in Common,” Noah Gift says, “Hidden in the discussion of rising energy costs and consumption in datacenters is the selection of software language.” Gift’s emphasis is on how the constraints many languages have limit them to one processor and how the languages used to write software can affect the way that processors use energy. This inefficiency would seem to extend backward from running software to developing software. Nowadays, developers must contend not only with multiple desktop platforms but also with multiple mobile platforms, and do so in multiple languages. This week’s link roundup highlights some tools for simplifying the processes of developing across languages and platforms. Apache Thrift: The Apache Thrift software framework combines a software library with a code-generation engine, and the compiler generates code that can communicate across programming languages, enabling efficient development of scalable backend services. A white paper discusses motivations and design choices.
At SATURN, we hate the idea that a good talk might be rejected because its abstract is unclear or doesn't answer questions that the reviewers might ask. Good talks should not be rejected because the proposal is not absolutely perfect. So last year we introduced an early-acceptance deadline for speaker submissions, and it worked out really well. The quality of presentations was higher than in years past, and we overcame the dreaded Student's Syndrome--everyone waiting until the night before to submit. But this year we asked ourselves, Can we give even more opportunities? Can we make the proposal process even more friendly? For SATURN 2015, we have adopted a rolling-acceptance approach.This means that the review committee is continuously reviewing speaker proposals as they are submitted. When reviewers see a great proposal, it is accepted immediately and added to the technical program. Authors of other proposals get detailed feedback about what the reviewers are thinking and what questions they have, so they can revise and resubmit. No longer will you have to hire a soothsayer to guess what the committee might have been thinking, only to have the feedback too late to do anything about it. We have been accepting speaker proposals since October though the website was lagging a bit. That has been corrected and the full list of speakers accepted is now available.
Second International Workshop on Software Architecture and Metrics Florence, Italy, May 16, 2015 Submission deadline: January 23, 2015 http://www.sei.cmu.edu/community/sam2015/ Software engineers of complex software systems face the challenge of how best to assess the achievement of quality attributes and other key drivers, how to reveal issues and risks early, and how to make decisions about architecture and system evolution. There is an increasing need to provide ongoing quantifiable insight into the quality of the system being developed to manage the pace of software delivery and technology churn. Additionally, it is highly desirable to improve feedback between development and deployment through measurable means for intrinsic quality, value, and cost. While there is body of work focusing on code quality and metrics, their applicability at the design and architecture level and at scale are inconsistent and not proven.
For pioneering leadership in the development of innovative curricula in computer science, Dr. Mary Shaw of Carnegie Mellon University received the National Medal of Technology and Innovation from President Barack Obama during a White House ceremony in November 2014. The SATURN 2015 program committee is pleased to announce that Dr. Shaw will deliver a keynote presentation at SATURN 2015, which will be held at the Lord Baltimore Hotel in Baltimore, Maryland, April 27-30.
Software Engineering Institute (SEI) research forms the foundation for a new one-day course from the SEI, Big Data: Architectures and Technologies. To learn more, see this article about the SEI big-data course on the SEI website. The new big-data course, along with one-day courses on DevOps and technical debt, will be offered at SATURN 2015, which will be held in Baltimore, Maryland, April 27-30.
Minimum Viable Architecture
In his Introduction to Minimum Viable Architecture, Savita Pahuja at InfoQ recalls an older blog by Kavis Technology that described the role of agile methods as serving a balancing function between the minimum viable product and the minimum viable architecture. Below are several recent opinions on this topic and a project that is putting the theory into practice. Less is More with Minimalist Architecture: Ruth Malan and Dana Bredemeyer wrote in the October 2002 issue of IT Professional that you should "sort out your highest-priority architectural requirements, and then do the least you possibly can to achieve them!" Good Enough Is Good Enough: Minimum Viable Architecture in a Startup: In a presentation given at the San Francisco Startup CTO Summit, Randy Shoup encourages startups to ignore the advice he's been giving for a decade on building large-scale systems.
The Watson Explorer The Watson Developer Cloud brings Watson to developers and the cognitive cloud to Internet applications. Watson offers a variety of services for building cognitive apps, including language identification and translation, interpreting meaning based on context, and communicating with people in their own styles. Here are some reviews and links to APIs and sample code. IBM's Watson Supercomputer Gives Developers Access to Cognitive Cloud: George Lawton at TechTarget provides an early review of the Watson Explorer’s unified view of enterprise information. The cloud allows the technology to be accessible for a greater variety of applications and improves the scale and time to market of those applications. IBM Debuts First Watson Machine-Learning APIs: Serdar Yegulalp at Java World previews the eight services that developers can access for building cognitive apps based on Watson’s machine intelligence service. He focuses on visualization rendering as the service least limited by data training.
Deep Neural Networks “At some fundamental level, no one understands machine learning.” —Christopher Olah “Neural networks are one of the most beautiful programming paradigms ever invented.” —Michael Nielsen This week, we round up a few examples on deep neural networks (DNNs), a subfield of machine learning that deals with developing training algorithms and uses raw video and speech data as input. Replicating Deep Mind: Kristjan Korjus is working on a project to reproduce the results of Playing Atari with Deep Reinforcement Learning, by Volodymyr Mnih and colleagues of DeepMind Technologies. Mnih et al. presented a deep learning model that used reinforcement learning to learn control policies from sensory input and outperformed human experts on three of seven Atari games. Deep Learning, NLP, and Representations: Christopher Olah at Colah's Blog looks at deep learning from a perspective on natural-language processing and discusses how different DNNs designed for different language-processing tasks have learned the same things.
We at the SEI are excited about the Team Software Process (TSP) Symposium, which we are holding in Pittsburgh, Pa. November 3-6, 2014. The theme of the symposium is "Going Beyond Methodology to Maximize Performance." By this, we mean that the technical program goes beyond the core methodology of TSP to encompass a broader range of complementary practices that contribute to peak performance on system and software projects. As part of our strategy to expand the scope of the symposium and bring in more architectural thinking to those who have adopted TSP and are using it, we've added several architecture-related sessions to the technical program. We at the SEI have seen how successful combining TSP and architecture-centric engineering approaches can be in the project we undertook with Bursatec, the technology subsidiary of the Mexican stock exchange.
Mobile Wallets This blog post began as a mission to compare and contrast mobile wallet systems. Instead, it became a survey of why mobile wallets are not more popular. The reason is not that we’re lacking choice in the mobile wallet economy. We can choose from Amazon Wallet, Apple Pay, Coin, Google Wallet, LoopPay, and Verizon’s Softcard, among others. Why Aren’t Mobile Wallets More Popular in the US? and The Future Of Mobile Digital Wallet Technology in the UK: Lindsay Konsko at NerdWallet speculates on why the United States lags other countries in adopting virtual wallet technology; then Kristopher Arcand at Forrester explains why the UK lags the US. Why Mobile Wallets Are Failing and Will Keep Failing: Kyle Chayka at Pacific Standard Magazine maintains that mobile wallets won’t be universally accepted by smartphone users until they are universally accepted by merchants.
How has something you learned or saw at SATURN changed how you develop software? Since the first conference in 2004, SATURN has been a place for software developers to share stories about our adventures in building software. Architects, managers, and programmers from across industries and the world came together once a year to share stories about our experiences applying software architecture-centric practices.
Call for Papers, Tutorials and Technical Briefings, and Student Research CompetitionMobileSoft 2015 -- 2nd ACM International Conference on Mobile Software Engineering and Systems http://mobilesoftconf.org/2015/ May 16-17, 2015 Firenze, Italy Co-located with ICSE 2015 May 16-24, 2015 http://2015.icse-conferences.org RESEARCH PAPERS AND SHORT PAPERS ================================ Important Dates ===============
Consensus Algorithms and Distributed Systems Consensus algorithms for distributed systems represent a growing field focused on increasing the efficiency of these systems while decreasing their vulnerability to attack and component failure. These recent blog posts offer some theory and practice on consensus algorithms. The Space Between Theory and Practice in Distributed Systems: Marc Brooker at Marc’s Blog discusses the gap between theory and practice in materials on distributed systems, using consensus algorithms as an example. Much material exists on the theory end of the continuum; much exists on the practice end of the continuum. What’s in the middle?
One of our goals every year with SATURN is to create a solid technical program that is informative, engaging, and lasting. When evaluating proposals for the program, the review committee uses the following guidelines to help decide whether a proposal is a good match for this year’s conference. In these guidelines, the term “session” is used generically to describe any talks, workshops, tutorials, and so on in the conference program. Informative sessions share meaningful insights with lessons that attendees will be able to apply directly with their teams after the conference.
- Is the information proposed relevant to one of the topic themes in this year’s conference?
- Are there succinct lessons supported by real-world examples, research, or direct experience?
- Is the topic of broad or general interest?
- Can the lessons be applied beyond small sub-communities of practice?
The SEI Architecture Technology User Network (SATURN) Conference 2015 will be held at the Lord Baltimore Hotel in Baltimore, Maryland, April 27--30, 2015. We are pleased to announce that the co-technical chairs of SATURN 2015 will be George Fairbanks of Google and Michael Keeling of IBM. Based on your feedback in the hallways in Portland and from post-conference surveys, George, Michael, and the rest of the SATURN technical committee have designed SATURN 2015 to better meet your needs in a practitioner-oriented technical conference. The SATURN 2015 Call for Submissions is now open. As described in the Call, we will immediately begin a rolling-acceptance process for proposal submissions, so submit early to get feedback and improve your chances.
What’s New for 2015
Microservice Architecture Since James Lewis and Martin Fowler published their article on Microservices in March 2014, the microservices architecture pattern has been the subject of much debate in the blogosphere: Is there a good definition for it (or not), is it another form of SOA (or not), is it an answer to the monolith (or not), is it a fad or the next big thing? The following blog posts contribute to the discussion on some of these topics. Failing at Microservices: Please avoid our mistakes!: Richard Clayton’s Unrepentant Thoughts on Software and Management recently included a blog post about his team’s attempt to implement a microservice architecture, four reasons why it failed, and some recommendations for avoiding these problems. Microservices for the Grumpy Neckbeard: Chris Stucchio discusses what he sees as the two camps of the debate about microservices, the hipsters who see their many benefits and the neckbeards who are more suspicious, and describes an architecture that may serve to bring the two camps together.
By Jørn Ølmheim and Harald Wesenberg Statoil ASA We were fortunate enough to be able to participate at SATURN 2014. For Jørn, this was his first time at SATURN, while for Harald it was the fourth SATURN conference. As always, we knew that the quality of the conference content is high, and we were looking forward to a fun week with learning new and interesting ideas from other practitioners. In this group of excellent presentations and tutorials there were many that stood out, but to us George Fairbanks' talk on teaching architecture was definitely one of the greatest. Many of the more experienced participants at the conference recognized George's experiences of trying to teach the importance of architecture to the junior team members with varying degree of success, so we were well motivated for a discussion about how this can be done better. Many of us recognize the challenges of motivation and lack of commitment both from your peers and the company to spend time on such activities.
DevOps: Definitions and Misconceptions This month, Ben Kepes at Forbes reported on ScriptRock’s efforts to raise funding from investors to expand their operations in “To Help DevOps-ify The World.” Kepes opens with an explanation of how ScriptRock must first differentiate its product and services from vendors selling “DevOps in a box.” More agile software development in less time, however, may not fit neatly in that box. Here are some links to definitions of DevOps that include components that exist outside of the box. Defining DevOps Might Be Harder Than Defining Design: In the Under Development podcast series, Bill Higgins and Michael Coté explain DevOps, metrics, and “the processes used by designers vs. software developers vs. management consultants vs. wedding planners.”
Stephany Bellomo of the SEI will be speaking at the Unicom DevOps Chicago Summit on September 18, 2014 on "Design Implications of DevOps." Here is an abstract of Stephany's talk:
Wearable Computing Wearable computing is coming to the masses in the forms of fitness, gaming, and medical devices while non-consumer markets such as defense and aerospace continue to push for advanced wearable technologies to enhance safety, mobility, and efficiency in places most people will never go. Here are some recent examples of the state-of-the-art technology in wearable computing and then some that, with a little tech-know-how, you can make at home: Intel Battles Parkinson’s Disease with Big Data and Wearable Tech: Mike Wheatley at Silicon Angle describes a new project at Intel, in which a Big Data analytics platform combined with a wearable device will produce a better record of symptoms experienced by Parkinson’s patients . The Inside Story of the Oculus Rift: Peter Rubin at Wired reports that, with the Rift, Oculus hacks the visual cortex to make a virtual-reality headset that doesn’t cause “cold sweat syndrome.” The Cardboard Project: Google Developers show how you can build your own basic VR headset with a smartphone and some basic items that you can get at the hardware store. Raspberry Pi GPS Helmet Cam: Martin O’Hanlon at Stuff About Code used his Raspberry Pi-based car cam to develop a helmet cam, takes it snowboarding, and record data about speed, altitude, and temperature.
Test-Driven Development: Dead or Alive? Back in the Spring, a single blog post sparked a debate that on the surface seems absurd. Is TDD actually useful and still relevant? The discourse that followed and is still following this discussion is spectacular and spans Twitter, blogs, and a series of video debates. We thank Michael Keeling of Never Let Down for bringing this debate to our attention. TDD is dead. Long live testing.: David Heinemeier Hansson, the creator of Ruby on Rails, discusses the death of test-driven development and the need to transition from unit testing to system testing. Is TDD Dead?: Martin Fowler engages Hansson and Kent Beck in a series of video conversations on the topic of test-driven development and its impact on software design, including confidence, test-induced design damage, and cost.
Date: September 11, 2014 Time: 1:30 p.m. ET - 2:30 p.m. ET��� � Cost: Complimentary Register. About the Webinar
by Rey Hernandez Sony Network Entertainment International @DeveloperRey Many times in a project, software or otherwise, the people working on the project become so entrenched in the methods they find familiar that they allow roadblocks to get in the way of project completion. All too often those roadblocks lead to missed deadlines, cut corners, general reduction in team morale, and ultimately a product that does not meet customer expectations. In his keynote at SATURN 2014, Joe Justice of Team Wikispeed and Scrum Inc., treated us to a refreshing view of project management that illustrates how teams can be extremely productive, with high morale, and great customer satisfaction.
by Anthony Tsakiris Ford Motor Company Architecture development activities as presented in books, articles, and classes are sometimes “heavy” – that is, they require a lot of time and people resources relative to what is available. That’s my view from an automotive embedded-control-systems environment. An argument can be made that that’s what it takes, but there’s another reality that time and resources are truly in short supply. It’s difficult to get stakeholders who are busy with multiple projects and production concerns to commit big chunks of their time to an activity like a Quality Attribute Workshop for a new project.
by Russell Miller Vice President of Technology Services at Impulse.com Co-host of Architectural Concepts podcast At SATURN 2014 there were a number of excellent sessions on DevOps and Continuous Delivery; one of those was Dianne Marsh’s keynote entitled, “Engineering Velocity: Continuous Delivery at Netflix.” Dianne is the director of engineering tools at Netflix, a company that has led the way in terms of continuous delivery. Dianne’s main objective for the talk was to share details and philosophy from Netflix that the audience could consider for application in their organizations as a means to improve their velocity. She did a great job achieving that objective.
Agile-Related Links There's No Room for Deadlines: Allen Holub at Dr. Dobbs explains why a “culture of deadlines” can defeat an Agile team how the Agile Manifesto principle of working at a constant pace can produce better results. Slow Down to Speed Up - It's All About Delivery: In this video, Matt Anderson of the Cerner Corporation recommends using Lean concepts so that Agile teams can deliver more with less effort. The Hacker Way Meets Agile Architecture: Jason Bloomberg at DevXtra’s Agile Architecture Revolution contrasts “the Hacker Way” with The Enterprise and discusses how Agile architecture can bring them together. What Every Company Should Know About Agile Software Development: Eric Wittman MIT Technology Review’s View from the Marketplace urges organizations that want to maintain a competitive edge to adopt agile software development practices.
Internet of Things Being Forgotten in the Internet of Things: Nick Malik at Microsoft Developer Network’s Inside Architecture discusses a complication in European citizens’ new “right to be forgotten” and proposes a solution. Nest: A Small Company and a Big Disruption Enabled by Cloud: Gery Menegaz at IBM’s Thoughts on Cloud explains how the Nest Learning Thermostat made innovative use of cloud technology to turn a profit, help power companies solve a problem, and satisfy a government mandate. Microsoft Backs Open Source for the Internet of Things: Patrick Thibodeau at Computerworld reports that Microsoft has joined the AllSeen Alliance to help promote an open source code framework to standardize device communications. Internet of Things Done Wrong Stifles Innovation: Frank Palermo at InformationWeek considers the “dark side” of the Internet of Things. How will the IoT address security and privacy?
At the Architectural Concepts Podcast, SATURN 2014 Technical Chair Michael Keeling discusses techniques for exploring and uncovering the shortest path to amazing architectures, mapping the idea of design modes to software architecture. In the podcast, Michael also discusses the rapid software architecture workshop, based on these ideas, that he delivered at SATURN 2014. Listen now.
June 12, 2014—From August 4–6, 2014, educators from leading institutions will gather at the SEI's Pittsburgh headquarters for the 11th annual Architecture-Centric Engineering (ACE) Workshop for Educators. The SEI hosts this annual event to foster an ongoing exchange of ideas among educators whose curricula include the subjects of software architecture and software product lines. The event is free of charge and open to any accredited, college-level educator.
Introducing new software languages, tools, and methods in industrial and production environments incurs a number of challenges. Among other necessary changes, practices must be updated, and engineers must learn new methods and tools. These updates incur additional costs, so transitioning to a new technology must be carefully evaluated and discussed. Also, the impact and associated costs for introducing a new technology vary significantly by type of project, team size, engineers’ backgrounds, and other factors, so that it is hard to estimate the real acquisition costs. This blog post at the SEI blog presents research conducted independently of the SEI that aims to evaluate the safety concerns of several unmanned aerial vehiclesystems using the Architecture Analysis and Design Language (AADL) and the SEI safety-analysis tools implemented in OSATE.
"SATURN has become my favorite annual professional event," says Eltjo Poort at Eltjo's Solution Architect Blog. Read Eltjo's review of SATURN 2014.
Portland, Oregon native and well-known writer and blogger Scott Hanselman spoke at SATURN 2014 this year ("JaveScript, the Cloud, and the New Virtual Machine") and, while there, he interviewed Len Bass for The Hanselminutes Podcast: Fresh Air for Developers. Len is a senior principal researcher at NICTA in Australia. During his long and distinguished career at the SEI, Len was co-author many seminal publications in the field of software architecture including Software Architecture in Practice. In the podcast, Stories of Computer Science Past and Present with Len Bass, Len shares stories from his 40+ year career in software.
Sixth International Workshop on Managing Technical Debt Co-located with 30th International Conference on Software Maintenance and Evolution (ICSME 2014) Victoria, British Columbia, Canada September 30, 2014 http://www.sei.cmu.edu/community/td2014/ Technical debt is a metaphor that software developers and managers increasingly use to communicate key tradeoffs related to release and quality issues. The Managing Technical Debt workshop series has, since 2010, brought together practitioners and researchers to discuss and define issues related to technical debt and how they can be studied. Workshop participants reiterate the usefulness of the metaphor each year, share emerging practices used in software development organizations, and emphasize the need for more research and better means for sharing emerging practices and results.
Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim Transparency: An Architecture Principle for Socio-Technical Ecosystems Felix Bachmann and Linda Northrop, Software Engineering Institute Felix and Linda shared their experience as a team in the XSEDE project. They presented compelling evidence of the need to have transparent architecture and architectural practices in socio-technical ecosystems like XSEDE. XSEDE is a virtual, high-performance computer system that allows interactivity for scientists (e.g., biologists, mechanical engineers, environmentalists) all over the world to run their experiments. Experiments are usually of the types that need super-powerful computing capabilities. The system is distributed over a wide distance, and engineers or developers have different global and local priorities. Due to the size of the project and the high complexity, architectural guidance was necessary to ensure the success of the project. Felix’s and Linda’s team responsibilities are to help the team make the right architectural decisions, coach the team on how to incorporate architectural practices, and research missions.
Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim Can You Hear Me Now? The Art of Applying Communication Protocols When Architecting Real-Time Control Systems Todd Farley, BAE Systems, Inc. BAE Systems deals with architecting real-time control systems. These systems are usually complicated and distributed. Also, the lifetimes of projects are usually very long. So BAE must always answer this question: Which process should they adapt? The problems they face tend to fall into three categories:
- motion control systems (~robots)
- computation-intensive algorithms
- user interfaces
Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim BI/Big Data Reference Architectures and Case Studies Serhiy Haziyev and Olha Hrytsay, SoftServe, Inc. Serhiy and Olha shared their experience with the tradeoff between modern and traditional (non-relational and relational) reference architectures. They looked into the challenges associated with each approach and gave tips from real-life case studies on how to deal with big data reference architecture. As a reminder, they visited some of the known big data challenges:
- Data is generated from many and different sources.
- As data grows, it becomes complicated and heterogeneous (velocity and volume) until it’s no longer manageable.
Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim Under N: Acceptance to Delivery in N Hours Umashankar Velusamy, Verizon Communications, Inc. Umashankar started the presentation with a simple question: Are all deliveries the same? Humans take about 9 months to “deliver” babies. Cats and dogs take about 2 months to do so. So not all deliveries are the same. In the software industry, the same thing applies—different deliveries take different amounts of time. However, we tend to apply a one-size-fits-all solution to everything. Umashankar asked another question: Does it make since to wait 2 weeks or even 2 months for something to deliver, when it takes only 12 hours to deliver? It’s definitely doesn’t make sense, Umashankar answers.
Notes by Scott Shipp, edited by Tamara Marshall-Keim CORBA to Web Services Migration Using Model-Driven Approaches and Offshoring Georg Huettenegger, Credit Suisse Huettenegger discussed challenges and lessons learned from migrating one of the world's largest and most successful CORBA SOAs to a web services SOA. Credit Suisse is an integrated global bank. It delivers all the possible services that a bank could offer. Credit Suisse employs more than 45,000 people from 160 nations. The current Credit Suisse SOA is "nice, yet limited." Where it is headed is not good. It has over 2,500 CORBA service operations, there are 20–30 Mill CORBA calls per day, and there are about 400 consuming applications. With such a large scale and with such widely distributed employees, maybe Agile is not the way to go.
Notes by Scott Shipp, edited by Tamara Marshall-Keim Impact of Architecture on Continuous Delivery Russell Miller, SunView Software, Inc. First, context: This was a greenfield, from-scratch project for a nontrivial social-monitoring tool. It was also their first attempt at the native cloud. It was a pilot for a truly agile project. Go to http://livepulse.co to see a beta version. Miller uses the term “continuous delivery” (CD) as defined in Jez Humble's book Continuous Delivery. It leverages continuous integration, automated testing, and automated deployment. Releases are frequent, small, and predictable. For example, take Amazon drone delivery. It eliminates waste, and customers do not have time to cancel the order. It also provides quicker feedback from the customer. So CD vs. the traditional release model is similar to drone delivery vs. freight train delivery. "This is a good metaphor for lean vs. legacy."
Since 2010, the SEI and IEEE have been conferring two attendee-selected awards at SATURN. The IEEE Software SATURN Architecture in Practice Presentation Award is given to the presentation that best describes experiences, methods, and lessons learned from the implementation of architecture-centric practices. Anthony Tsakiris of Ford Motor Company, Jeromy Carriere of eBay, Inc., Michael Keeling of Vivisimo, and Simon Brown of Coding the Architecture received this award in 2010, 2011, 2012, and 2013 respectively. This year’s award winners were Will Chaparro and Michael Keeling of IBM for their presentation titled Facilitating the Mini-Quality Attributes Workshop.
Notes by Ziyad Alsaeed, edited by Tamara Marshall-Keim Expanding Legacy Systems Using Model-Driven Engineering (MDE) William Smith, Northrop Grumman Kevin Nguyen, Northrop Grumman Kevin Nguyen and his fellow engineers faced a common problem of dealing with legacy systems. At their environment (Northrop Grumman), they are dealing with rigid defense systems. Kevin tried to adapt a model-driven engineering approach in his work to achieve his goals. The team used conceptual software architecture to help understand customer requirements. Next, they refined the requirements into a CSCI architecture of software and hardware. Then, they tried to expand the CSCI architecture into CSC architecture (more detailed and lower level models). Finally, the team tried to convert that into a detailed design for the software unit. They went through these steps following a basic procedure of software-design life cycle.
Notes by Scott Shipp, edited by Tamara Marshall-Keim Creating a Sustainable Architecture Organization William Beshilas, PwC Opening question: How many of you lead or manage architects? (show of hands: about 50%) Agenda:
- Reasons to mature
- Office of architect
- Rollout approach
- Making change stick
Notes by Scott Shipp, edited by Tamara Marshall-Keim Metrics for Simplifying and Standardizing Enterprise Architecture: An Experience Report for an Oil and Gas Organization Alexis Ocampo (Ecopetrol) Jens Heidrich (Fraunhofer IESE) Constanza Lampasona (Fraunhofer IESE) Victor Basili (University of Maryland, Fraunhofer CESE) Some data about Ecopetrol S.A.
- largest petroleum company in Colombia
- One of four largest Latin American oil and gas companies
- 1M barrels will be produced 2015
- Top 40 world oil and gas companies
Notes by Scott Shipp
Past, Present, and Future of APIs for Mobile and Web Apps
Ole Lensmar, SmartBear Software
Ole Lensmar is from Sweden and has been in the API space since the late '90s. He has created one of the most popular API testing tools in the world SoapAPI. He also is the CTO of SmartBear solutions.
Once upon a time, people tried to connect distributed systems with
- COM / DCOM
- J2EE / RMI
The international software architecture community has responded to this year's SATURN technical program with another year of strong registration for the SEI Architecture Technology User Network (SATURN) Conference. SATURN, now in its 10th year, will be held at the Marriott Downtown Waterfront in Portland, Oregon, from May 5 through 9, 2014, and registration is still open. Currently 180 people are registered to attend, and it is likely that this year's conference will come close to or exceed the record attendance of 207 in Minneapolis in 2013. We are excited to inform you about two late additions to the technical program.
SATURN 2014 will be in Portland, Oregon on May 5-9, 2014. Portland: A doughnut shop where you can get married. An ice cream counter that tops sundaes with worms. A museum where vacuum cleaners are out of the closet. A city park that can fit only one person at a time. Costumed adults who ride bikes with banana seats down a 710-foot hill. Read all about it.
We are happy to announce that we have added a fourth keynote speaker to the SATURN 2014 technical program. Dianne Marsh, director of engineering for Netflix in Los Gatos, Ca. will speak about Engineering Velocity: Continuous Delivery at Netflix at 9:00 am on May 8, 2014 in Portland, Oregon.
Date: March 27, 2014
Time: 10:00 a.m. ET - 12:30 p.m. ET
Cost: Free Join SEI researchers in a live virtual event offering insights into how to use architecture practices more effectively to build better systems efficiently and productively. SEI Fellow Linda Northrop will kick off the event with an introduction and overview. Register now.
Topics to be covered:
- Stephany Bellomo on Architectural Implications of DevOps
- Ian Gorton on Software Architecture for Big Data Systems
Post-conference surveys and informal feedback have indicated that SATURN attendees value the opportunity to network and to share experiences and insights with peers and colleagues each year at SATURN. In response, the program committee this year has built into the program an Open Space event, which will run concurrently with the rest of the conference. "Open spaces have no set program or agenda," says Technical Chair Michael Keeling. "The idea is that participants will bring what excites them. This can help participants make the conference what they want it to be. I expect this will be a critical part of the learning experience we have at SATURN."
We are offering a special incentive for students to attend SATURN, the SEI conference on software architecture and design topics. The Carnegie Mellon Software Engineering Institute (SEI) Architecture Technology User Network (SATURN) is a professional network of software, systems, and enterprise architects from around the world, representing industry, academia, and government. Each year the SEI sponsors the SATURN software architecture conference. SATURN 2014 will be held in Portland, Oregon, May 5-9, 2014. SATURN attracts an international audience of practicing software architects, industry thought leaders, developers, technical managers, and researchers to share ideas, insights, and experience about effective architecture-centric practices for developing and maintaining software-intensive systems. SATURN is designed for practitioners who are responsible for producing robust software architectures as well as for those who view software architecture as critical to the achievement of their business or organizational missions.
See this article on the SEI website about the SATURN 2014 software architecture conference.
The SATURN 2014 schedule was officially published to the conference website last week. Creating the program schedule for the core conference turned out to be much more challenging than I expected. I think this was an unintended side effect of having so many great submissions. The biggest problem for me was trying to overcome the impossible task of creating a schedule where I get to see all the talks I want to see! There are just too many amazing presentations. As a conference organizer, I can tell you that this is a great problem to have.
Looking at this year's program, I truly believe that you cannot go wrong with any course of sessions that you pick. So rather than talk about the highlights as I see them (I think the entire program is awesome), allow me to share some strategies for how you might build your perfect SATURN conference experience. Again, you really can't make a bad decision, so ultimately it's all about understanding what you want to get out of the conference.
The SATURN 2014 technical program is now published on the SATURN 2014 website. Themes for the program are Technology, Methods and Tools, and Leadership and Business, and session topics currently planned include
by Neil Ernst, SATURN 2014 Tutorials Chair We have a great tutorial line-up this year that I would like to share. Since tutorials at SATURN are half-day sessions, they provide the presenters time for an in-depth exploration. I think attendees of SATURN 2014 will be particularly impressed by the breadth and depth of our program. On Tuesday, May 6, we have five tutorials scheduled.
- George Fairbanks, Google, and author of Just Enough Software Architecture, will cover “Architecture Hoisting” (T1), techniques for moving responsibility from the code to the architecture.
- Stephany Bellomo and Rick Kazman, from the Software Engineering Institute, in Tutorial T2, will introduce deployability and DevOps techniques, then discuss architectural approaches and patterns to reduce build time and shorten the feedback cycle.
- In the afternoon sessions, Len Bass, of Australia’s National IT Research Centre, will discuss the implications of DevOps on system design (T3). For example, how does moving to a continuous-deployment approach change how the architecture is designed and implemented? This makes a nice complement to the earlier tutorial from Bellomo and Kazman for those desiring a full menu of deployability fare.
- Pradyumn Sharma (@PradyumnSharma) of Pragati Software will cover NoSQL databases (T4). If you’ve been hearing this term for a few years now and need to really get a good sense for the landscape, Pradyumn will cover the fundamentals for you, basing the session on real-world examples.
- Finally on Tuesday, Eltjo Poort (@eltjopoort) of CGI will cover the CGI Risk and Cost-Driven Architecture approach (RCDA) in T5. He will discuss how CGI has used RCDA to implement lean and agile architectures in their global software business. RCDA is a recognized architecture method in The Open Group’s architect certification program.
For the first time at SATURN 2014, which will be held in Portland, Oregon, May 5-9, 2014, the SEI will offer a new one-day course titled Big Data--Architectures and Technologies. The course will be available to SATURN attendees on Tuesday, May 6 and will be taught by SEI instructors Ian Gorton and John Klein. This course is designed for architects and technical stakeholders such as product managers, development managers, and systems engineers involved in the development of big-data applications. It focuses on the relationship among application software, data models, and deployment architectures and how specific technology selection relates to all of these.
Jerome Pesenti, vice president of Watson Core Technology at IBM, will deliver the closing keynote at SATURN 2014 on Thursday, May 8. Jerome was the co-founder 13 years ago of Vivisimo, the innovative search-solutions company. Before Vivisimo, he was a visiting scientist at the Carnegie Mellon University School of Computer Science, carrying out research on document clustering, data mining, and artificial intelligence. He is a Carnegie Science Entrepreneur and Pittsburgh 40 Under 40 awardee. He is an alumnus of the �cole Normale Sup�rieure in Paris. His academic degrees consist of a BS in philosophy from the Sorbonne, an MS in cognitive science from the University of Paris VI, and an MS and PhD in pure mathematics from the University of Paris-Sud. For more information about SATURN 2014 or to register, visit the SATURN website or contact the SEI.
Joe Justice, of Scrum Inc., and Team Wikispeed, which built a 100+ mpg car in less than three months for the X-Prize using Agile, Lean, and Scrum, will discuss this project in a keynote address at SATURN 2014 on Wednesday, May 7. Joe is a consultant at Scrum, Inc., TEDx speaker, and coach for agile hardware and manufacturing teams around the world. He is the founder of Team WIKISPEED, an all Scrum, volunteer-based, green automotive-prototyping company, with a goal to change the world for the better. Justice consults and coaches teams and companies on implementing Scrum at all levels of their organization, in software and physical manufacturing.
UPDATE: Joe provided us with the title and abstract for his talk.
Title: For Maximum Awesome
Bill Opdyke, who is best known for having done the first in-depth study of code re-factoring as a software engineering technique, will deliver the opening keynote address at SATURN 2014 on Wednesday, May 7. Bill is currently an architecture lead/vice president at JPMorgan Chase, where he focuses on architectural issues related to web and mobile retail banking. His doctoral research at the University of Illinois led to the foundational thesis in object-oriented refactoring.
Registration for the tenth annual SEI Architecture Technology User Network (SATURN ) 2013 software architecture conference is now open. SATURN 2014 will take place at the Portland Downtown Waterfront Hotel in Portland, Oregon, from May 5-9 and will feature keynote presentations by leaders in the field of software architecture:
- Joe Justice of Scrum Inc., and Team Wikispeed, which built a 100+ mpg car in less than three months for the X-Prize using Agile, Lean, and Scrum: (see http://tedxtalks.ted.com/video/TEDxRainier-Joe-Justice-WikiSpe)
- Jerome Pesenti, Vice President of Watson Core Technology at IBM and former co-founder of Vivisimo, the innovate search solutions company
- Bill Opdyke, Architecture Lead (Corporate Internet Group) at J.P. Morgan Chase, who is best known for having done the first in-depth study of code re-factoring as a software engineering technique
June 2-3, 2014 Hyderabad, India
Co-located with ICSE 2014 May 31- June 7, 2014
Important Dates !!! EXTENDED !!!
Submission: January 27, 2014
Notification: February 24, 2014
Camera: March 3, 2014
Conference: June. 2-3, 2014
Many types of software systems, including big data applications, lend them themselves to highly incremental and iterative development approaches. In essence, system requirements are addressed in small batches, enabling the delivery of functional releases of the system at the end of every increment, typically once a month. The advantages of this approach are many and varied. Perhaps foremost is the fact that it constantly forces the validation of requirements and designs before too much progress is made in inappropriate directions. Ambiguity and change in requirements, as well as uncertainty in design approaches, can be rapidly explored through working software systems, not simply models and documents. Necessary modifications can be carried out efficiently and cost-effectively through refactoring before code becomes too "baked" and complex to easily change. This blog post at the SEI Blog by Ian Gorton of the SEI, the second in a series addressing the software engineering challenges of big data, explores how the nature of building highly scalable, long-lived big data applications influences iterative and incremental design approaches.