When building SAP NetWeaver Cloud, we at SAP are working according to Lean and Agile principles. And we want you to know that 🙂 You can imagine how challenging is to deliver such a big product each two weeks with the expected quality and new functionalities. We do our best to achieve this.
In this blog post I will not cover our internal processes. We will elaborate on them in further posts, if interested. Now I will describe just one small success story which, however, is emblematic for how we are working here.
It is about the Logging topic – to enable all logging operations in SAP NetWeaver Cloud Developer Studio. It was delivered incrementally, step by step, starting from the most important functionality and then garnishing with nice but not so critical features. We did not miss any single system update (occurring each two weeks) for five times in a row – each time adding new and new functionality. Let’s see the summary of facts in their chronological order.
Everything started back in May as a question from one of our trial customers:
At that point in time we were not providing any functionality to manage application log levels. Neither from the IDE, nor from any other tool. We just had it in our big Product backlog.
Two months later, with the update on 5th of July, this functionality was introduced first in the Command Line tool (Fig. 1). Indeed, not very convenient but useful enough.
Fig. 1 Manage log levels via Command Line tool
We knew what we had to do from then on – to include all Logging functionality in SAP NetWeaver Cloud Developer Studio so that it is easy and convenient to use for all customers.
After the holiday season the story started. With the platform update on 30th of August, we were ready with the first delivery – log levels could be managed from within the Eclipse-based Developer Studio (Fig. 2).
Fig. 2 Manage log levels inside Developer Studio
With the next update (13th of Sept), it was now possible to browse log files and view their contents directly within the Developer Studio. Before that, this was only possible via the Account page, which is web-based. This was another great step towards our goal to bring together all development operations – coding, configuration and testing, inside one and the same tool. It is shown on Fig. 3.
Fig. 3 View log files inside Developer Studio
So just after a couple of 2-week sprints the team delivered the main functionalities. It was the time to start polishing the stuff. Again, incrementally.
Next update (27th of Sept) brought filtering. It was now possible to filter Loggers list so that it was easier to find Loggers which you were interested in – Fig. 4.
Fig. 4 Filtering
Next system update on 11th of Oct was skipped due to technical issues with the product (you know, drop scope not quality). However, the team was ready with yet another increment – more options to navigate to Server Logs. Depicted on Fig. 5.
Fig. 5 Server Logs links
Two weeks later, the update on 25th of Oct came with three more increments – live streaming of log files in Eclipse console (Fig. 6), Refresh button for Loggers and Server Logs views (Fig. 7), and sorting in both views (Fig. 8).
Fig. 6 Streaming
Fig. 7 Refresh button
Fig. 8 Sorting
You can follow the complete story in our Release Notes thread as well:
Now the Logging topic is considered fully operational. Of course we have more ideas for improvements in our pipeline but for now we concentrate on other more important features.
What we think is essential for achieving such incremental deliveries is the pursuit to shape the user stories to be doable in one sprint by one team, while any one of them taken alone still adds real value for the customers. We use different techniques for this, with having Specification by Example very popular practice here recently. We are soon starting with Design Thinking and probably other custom approaches so that we continue to add new value each two weeks!
Why we made this blog? Yes, we know the Logging topic itself is not a big deal. But still we are proud of what we achieved as a team following the best practices in iterative development. We want to pay attention to it once again so that this great example leads us ahead. We hope this subtle piece of detail from behind the scenes is nice for you to know as well. Hope you enjoyed it!