steinermatt

11 Posts

"Stay hungry. Stay foolish!"

[Steve Jobs]

 

I guess most if not all of you have heard that famous quote from Steve Jobs last year. And besides all the controversial opinions on his personality there's one thing that few doubt about him - that he was passionate! Maybe up to an extreme level, yet he had passion for what he did - and it showed!

I think that was the fascinating side of him as a human being and one that many found inspiring.

 

Somehow that notion of doing something you love has been resonating well with me all these years. And fortunately I've been in this comfortable position for as long as I remember.

 

I'm not saying I'm dancing to work everyday, but all-in-all I can safely say that the last ten years at SAP has been both interesting and rewarding. But we talked about this last time...

 

It's the adventurous side of me that enjoyed evaluating and incubating emerging tech and releasing them to the wild by designing and developing custom applications on top of them. It's for sure been exciting and challenging - and also addictive to go where few have gone before...

 

Guess it's simple to see why I consider it "interesting times for developers" (hat-tip to Vishal Sikka!) and seeing all that cool tech everywhere - it's a problem of riches for techies all around.

 

For me, coming from a web-developer and Java background the shiniest new toy has become SAP NetWeaver Neo. Some of you may have heard me speak about it here or there already. As I stated in my announcement post from SAPPHIRENOW last year, the cloud seems to be(come) the catalyst for everything else, as it's the cloud that makes the data more accessible and lowers the entry barrier for developers to go out and play.

 

It sounds like simple math indeed: the platform that will be able to attract the most/best developers will be king. PERIOD.

 

And this is where Neo comes into play... for me it was like love at first sight: a Java-based open platform build on top of open-source frameworks. Just my cup of tea...

 

So, of course I had to test-drive it ... and ever since then I have been sharing my experiences with the world, getting the word out about the platform and its capabilities. Yet, my job as a development architect for SAP Custom Development demanded a much broader view on technology and many other things; so Neo was just one topic among many. So, for the last few weeks I was merely watching from a distance...

 

And then... just recently I got the once-in-a-lifetime opportunity to join the SAP NetWeveaver Neo team as a Cloud Platform Evangelist very soon! Yeah, it's cloud no #9


But before I leave for the cloud, there's one thing left to say and that's: THANK YOU! It's been ten great years at SAP Custom Development that I wouldn't want to miss. I've had the privilege to work with some of the smartest and most genuine people I've ever met. Even found friendship and mentors willing to challenge and guide me. Thanks to all of you - you know who you are! We'll stay in touch...

 

[PS: The name has recently changed to SAP NetWeaver Cloud.]

Has it really been ten years already? WOW...

 

...when I look back at my time at SAP I can say that it has been a very interesting and exciting time as well as a great learning experience. Coming from a start-up in the B2B-commerce market I joined SAP Custom Development early in 2002 - just after the web bubble bursted ...

 

Dang, that's been more than decade ago. Guess this milestone is worth taking a moment to recap on 10 years at SAP.

 

Originally I was hired for my Java EE background I guess. Yet, as it goes sometimes, my first project at SAP happened to be an extra-large CRM project for an US-based company. My task was to develop the CRM-ERP middleware communication part: triggering goods movements or starting purchasing processes once a service technician was assigned to a service order.

 

The next project was yet another integration scenario. Again, ABAP-based. This time it was SRM and ERP and related to catalog and purchasing contracts to be exchanged in the oil & gas space.

 

Looking back now these 2 years of ABAP development were a blessing in disguise as I got to know several Business Suite applications, some of their core modules and components as well as all the development tools & techniques in the R/3 world. So yeah... in retrospect I have to say that "getting to know the other side" was probably the best thing that could have happened to me back then.

 

And while the two projects were both challenging and rewarding, yet my heart was still beating for Java and the evolving Open-Source movement and so I was cheering for Shai's vision of SAP NetWeaver...

 

So then (luck at the 3rd time?) I finally got staffed for a Java project; yet no ordinary application, but one (if not the) first custom build enterprise Composite. Rumor has it Shai himself closed the deal on the golf court, but it could equally well just be a geek joke that was told so many times that people started to take it for real.

 

Either way, it was a quite a ride, but ultimately we made it. The story was first presented at SDN Meets Labs in Palo Alto a year later. Page 14 nicely captures some of my contributions to the project and one that can be considered a personal milestone: the first live implementation of an extensibility concept. (That very topic should take a central role in the next few years, but we get back to that later.)

 

One remarkable thing I have to mention before I move on is how Shai took responsibility for the project : he made it happen by giving us fast-lane direct access to the individual development groups, he arranged for logistics and support and he brought in the right people. Walking the talk may summarizes it best... and it was indeed very inspiring and motivating. My first project on emerging tech certainly had me back for more...

 

And I did not have to wait for long... a complex banking application on top of NetWeaver Web Application Server was next on the list. Having made the step to the architect level by then I was given the responsebility for the technical frameworks across all layers from persistence (JDO) to Services (Beans) to UI (JSP-based MVC pattern.)

 

Oh Boi, another challenging project. Not because my fellow co-architects and me didn't know how-to design and develop such an application, no... it was something completely non-technical: it has been one of our first non-ABAP development projects that we executed in as a distributed team within Custom Development.

 

It's when I realized that technical skills alone won't get one far in such first-of-a-kind projects; that inter-cultural awareness, communication and teaching skills are equally (if not more) important if one wants to be a good - or even great - architect. It was when it clicked to me that being an architect also implies leading a team, guiding a team. That it implies being able to explain technical concepts to the individual team members and coordinate the ramp-up of skills. It also made me aware of inter-company politics and the importance of networks, big deals and the responsebility to speak as the representative of the development team in executive meetings.. . but let's keep it to that

 

Looking back now I think the fact I enjoyed the most was that I had been able to apply the design patterns and architectual concepts I had picked up from the open-source communities on the web. I'd say that it has been communities around projects like Struts, Hibernate and Spring, which have unleashed my passion for modern application design.

 

My favorite code snippet from that project is most definitely the gracefully-degrading AJAX-based tree control I had developed. (LOL they actually wanted IE5 support back then and I had to install NT as VMWare to be able to adapt the code and verify it runs properly. Ah, the good old days of the browser wars...)

 

Around this time a small, special team was formed within our organization; a team dedicated to evaluate and test-drive emerging technologies at SAP. The first topic the so-called NetWeaver Center of Excellence (CoE) took up was Service Oriented Architecture or SOA in short (well, we called it ESA first and then later switched to eSOA and ultimately we abandoned the enterprise in front altogether. But let's not start the naming topic right now, ok?)

 

We tackled it from three different angles: Service Provisioning on both the ECC and the ByDesign platform, as well as Service Consumption and Orchestration on NetWeaver Composite Environment (NW CE.) That was about the time I got green light to start sharing our experiences on SCN. My first blog post on SCN tells that story.

 

I guess it's safe to say that the early days of working for the NW CoE mark the next milestone in my professional life. Not only because it was indeed an challenging and high-fidelity time developing such a completly new kind of applications (Composite Applications, Composites), but also because it was the first time my colleagues and I got the freedom to work more strategically and not directly related to a customer project and all the implications it brings. Last, but not least ...it simply was a great team to be part of!

 

And if it wasn't for my manager back in the days ... who knows if I would ever have started to consider doing public lectures at TechEd or started technical writing? Who knows if I would have picked up interest for the bigger picture, org charts, executive briefs and hidden agendas? Who knows where I would be now?

 

In a way, meeting my first mentor has had quite an impact and it had shown me what a difference a single person can make - both on individual and on corporate level.

 

In the months to follow we spend quite some time doing architectual blueprints, prototypes and evaluations while helping with the SOA roll-out. The most remarkable proof of concept I recall would be the universal composite that could be connected to either ECC or ByDesign. Not to forget our work on what we called the backend abstraction layer (BAL) and seamless ESB/PI integration concepts.

 

For me, the time between 2007 and 2009 were the days of my automotive projects paired with lots of internal work acting as a knowledge multiplier and technical advisor. I had started to blog regularly and I had even managed to write my own book (✓) about extensibility concepts.

 

2009 was the year we delivered one of my all-time favorite projects for a big German car manufacturer, for whom we had developed a master composite template and a pilot scenario for their SOA roadmap.

 

After the summer break I then got assigned to yet another enterprise Composite in the public sector. This distributed team with up to 25 developers and architects at a time has been the largest project I have been responsible for up to today. Again, we made... just in time, but we made it. The project required full attention and as such I had to pause all other activities for that period. The only thing I was not able to put down was the blogging as it helped me to critically reflect on what it is like to be an architect. (In fact, this is how the development architect's diary series was started - here are the two posts about coaching and modi operandi.)

 

The key take-away from this project would be team spirit and comradeship. It's only when you work together very intensively over a long period of time that you really get to know people you work with and when colleagues turn into friends.

 

As the application we have developed was the result of many years of experience it has been the most advanced design of them all. I compiled our findings and best practices and presented them at TechEd 2010. A bit later we also shared our very positive experience with using a development landscape in the cloud: Improving Development Productivity by leveraging Cloud Computing.

 

2010 has been the next milestone for yet another reason: it's been the year that social networking clicked for me and when I started interacting on Twitter. Nowadays I can hardly remember the time I have not been following the SAP twitter community and I can't imagine doing the job without it anymore.... here's my stance on social networks these days.

 

Which brings me to the next chapter, which happened in Fall 2010  - it's when I got selected to run with the SAP Mentors tribe. The opportunity to learn from and with the other Mentors (and Mentorettes of course!) has been the most influential and humbling experience in my professional life so far. It's hard to put the mentor magic into words... so I'll leave it up to the no.1 mentor herder himself to do so: Culture Jamming SAP.

 

And then ... last year was all about technology innovation on a broader scale. At the beginning of the year we were busy internally with numerous teams building prototypes based on their own ideas. It's been a memoriable time indeed and we have not even seen all ideas come to life yet?!?

 

Since then I spent quite some time messin' with my new favorite topic: onDemand/the Cloud and our Platform-as-a-Service offering aka SAP NetWeaver Neo in particular. It's by far the coolest thing I've seen from SAP... ever!

 

I feel very priviledged and honored to have been given access to the platform at an early stage and being trusted with sharing my experiences at TechEd and other community events such as SAP Inside Tracks. Neo is currently in BETA... "we're almost there!"

 

So, that's that (sure took me long enough!) ... as I said in the beginning: it's been 10 great years all-in-all ... and for someone who has spent the majority of his career working on emerging tech the current situation at SAP is ... like a geek dream come true: technology and innovation are in focus and technical people are in demand more than ever. In the times of the new SAP - well, developers are the new kingmakers (and who doesn't want to be king?!?)

 

Guess the future looks bright indeed - so let's reach for the cloud(s)... "this one is to the next 10 years!"


[Composite Apps - MM] QR-Code

Introduction

As always, I've been sketching out this blog post on my way back from the HQ. Those of you who know the German Autobahn may agree with me, that - at the right times - the driving experience can still translate with "Fahrvergnügen." In more ways than not driving the 250km from Walldorf to Cologne reminds me of my days of endurance sports (mostly swimming and running.) If you do that regularly you manage to get into the zone - a state where your body has switched to auto-pilot and just keeps doing its thing. Then, your thoughts can truly lift off and you start reflecting, analyzing and positive projection.

Maybe it has been my attempt to turn this disadvantage (regurlar long-distance drives) into something positiv - maybe even quality time. It was not something I started intentionally, yet this habit of reflecting and analyzing during the road time has ever been highly rewarding for me. Maybe it's just that such process patterns has also moved to auto-pilot and my brain just falls back into a known pattern that has a proven record of success automatically. So, while thinking about patterns, I realized that there's even a pattern that I apply to derive a pattern. At the end of the story... what is the one thing that each architect should do all the time?

Punchcard 2

Punchcard 2 by Alpha six, on Flickr

Searching for Patterns

Yes, searching for patterns is an architect's daily business. There are patterns everywhere: in data structures (inheritance in OOP), algorithms, processes, communication and even on the User Interface level (UI). In software design for example, you ultimately would want to seperate that pattern into a re-usable component (Separation of Concerns) . Once you are able to see and identify known patterns and can recall the best practices on how-to address them you're on your way to success.Yet, I'm not only taking about design patterns as made popular by GoF et al.

There are as well patterns in real-life processes and communication. Humans tend to act in well-known patterns. The ability to self-reflect and question our motivation and actions and the pattern that let to them is really what separates us from the famous trained monkey. This is what I was refering to in A Day in the Life being an Architect - Coaching - much more important than teaching a particluar subject/topic/technique/pattern is teaching how this learning has been derived - the analytical way of thinking required to obtain the insight. Once that clicked for you - you are ready :)

So, ultimately an architect should always be keeping an eye out for patterns - in all aspects of his/her job. Master the craft and then spread the word. Patterns greatly help in finding quick counter measures as you may have successfully resolved a very similar situation in the past. The most classic pattern every serious developer should be familiar with is debugging/error resolution:

Something is not working as expcted...

  • do you know already the root cause of the problem?
  • if not - reduce the complexity of your concrete scenario and try to isolate the root problem
  • if you can pin-point the error and still have no clue
  • double-check the syntax, the documentation (which you read already, right?) and have a peer cross-check
  • still not any wiser? if you have similar scenarios that do work - try to isolate the differences
  • contact the team lead/experts/community to get more help...

The Power of Doubt

I blame it on being a Libra, who - despite what people may believe - are rarely in balance. The opposite, the Libras I got to know (plenty!) - we are more about extremes and always striving for that balance. Whatever it may be, I just have to face the fact that this is how I work. I'm passionate about what I do and strive for excellence - within the given constraints. Being passionate results in high expectations - in yourself as well as others. Both can be the source of disappointment and frustration. However, if one of these high exptactions is met you are reminded that this job can really be fun!

While I could safely argue that now that I have identified that pattern I should be able to flatten the curve eventually, yet I'm not so sure whether I really want to do that. Sure, it may result in a lot of frustrations and doubts, yet the heights are higher as well. Now, no illusions... the downs are more frequent (by a fair mairgin), yet the heights make it all worth it at the end. So, striving for excellence implies to search for the ultimate solution and verify its feasability (again - within the given constraints). The ultimate would be the maximum height and the minimum low - isn't it?

To be honest, I'm not convinced. Are you? Well, I think that the downs are important. The only tricky part is to get over them. And here, I feel that the pattern analysis jumps in for me. Once I realized that I get myself down again by failed expectations or the feeling of fighting wind mills, I try to get out of that pattern. A little self-reflection and the right medicine and one learns to recover quite fast and then one is back on track/mission again with new momentum and maybe a slight change of direction or speed. That's what downs are good for... usually we tend to get more introverted and silent. We start to reflect and analyze. They make us (re-) think.

So, the next time you are down (again), you may want to check for patterns and formulate/describe them... Stick to the ones you deem positive and try to train yourself to be cautious when negative patterns fall in... #notetomyself

So, after the great success of the  SCNotty Awards last year, the SCN team decided to take it to the next level turning it into:
THE 2010 SCN CHOICE VIDEO AWARDS
I just felt like testing out if iMovie for the iPhone could do the trick and recorded the following two videos:
  • google search | matthias steiner
    My 35s Search Story about myself by Matthias Steiner | Category: 30s of Recognition
  • SCN Video Intro | Matthias Steiner
    The 3min introduction video on how SCN has been helping me in my professional career by Matthias Steiner | Category: How SCN has helped me
Kind of was a strange experience talking to a video camera about my SCN experience. Not sure how many takes I needed, but it was definitely not done in just 20 minutes (as originally estimated/reserved ;))

Back in the days

I clearly remember working in my very first DDP (distributed development project) back in 2004. It was a strategic, XXL, mission-critical new breed of application that laid the path for Composites at SAP. That was in the early days of SAP NetWeaver and as such we brought together a diverse bunch of people to make it happen. We had people from the US, Germany, India and Israel on our roster. It surely was an ambitious goal resulting in a very busy time, yet also very rewarding and interesting at the same time. Looking back now, I tend to think that it also started my thinking about cultural awareness....

One of the things I clearly remember are the great discussions and conversations I had with some genuine colleagues from the NW Advisory Office: Amit, Nir, Avi, Itai... as we spend quite some time togther being locked up in our war room - sooner or later we exchanged more than just professional topics. At one point the time the question came up when I would come to see Israel...

It's been my first time working with Israelis and the way I got to take them was as very analytical, passionate, motivated and straight-foward people. All characteristics I appreciate a lot and feel comfortable with. So, my answer was that I would love to do that, yet a feeling of insecurity would be there. Ouch...

They were gentle on me and kindly switched topic. Yet, a day later I got the following email and it gave me great insight. I think, such a guide for all involved regions and cultures in every DDP would surely help. Sure, it's only a guidance and some sense for international socialising is still required. Yet, coming from an Israeli it sure helps you in setting a playing field.

So, here is - Thanks again to Amit for re-sending it!!!

Tips for establishing effective relationships and communication with people from Israel

Present ideas clearly and concisely, getting right to the point and using clear logic. Expect to be cut off regularly during a presentation. Israelis prefer to ask questions and discuss issues immediately rather than wait until the end of a presentation, and it is best to pause and respond to them. Be prepared with plenty of supporting facts to support your position. Keep presentations shorter than what you may normally give to allow for questioning and side discussions.

Israelis are generally fond of debate and will typically discuss any topic very passionately, and visitors are often taken back by the tone or loudness of the discussion. In most cases, this passionate expression should not be mistaken for anger, but viewed rather as a culturally appropriate form of expression.

It is best not to bring up politics in Israel, but if the topic arises, listen, be respectful, and avoid antagonistic responses. Be sensitive to the fact that most people have experienced some tragedy related to the political conflict in Israel. Safer topics of conversation are travel and popular sports such as swimming, soccer (which is called football) and basketball. It is appropriate to discuss your personal life in conversation but try to limit the details to general information. Polite inquiry about the family of your Israeli counterpart, however, shows an interest and is generally welcomed.

Introduction

I hope that some of the fellow readers can relate to when I say I have a hard time trying to explain what I do for a living. "Software Architect"... for a lot of people out there that means nothing at all and they just assume I'm sitting in front of a computer all day. But that's about it... I usually try to map it to the job of a real estate construction architect, which I indeed find a good comparision. Yet, I leave that primer for another blog post - this time I would like to tell a few tales from school :)

So, what do I do as a Software Architect? Well, it's indeed many-folded, which makes it that challenging and interesting at the same time. For me the following roles/responsebility make a good architect:

  • Mentor/Coach
  • Coordinator/Moderator
  • Organizer/Communicator
  • Teammate/Peer
  • Leader/Multiplier

From my experience in all those distruputed development projects I have worked in (India, Shanghai, Israel, Eastern Europe, Brazil, Americas...) I've came to realize that soft skills are at least as important as superior technical knowledge to successfully lead a team. The bigger the project, the truer the statement! Since almost a year, I have the priviledge to lead an XL Composite development project in a distributed environment spreading multiple locations in India and Germany. At peak time, there are about ~40 people involved in the program - and they all need to talk to the architect. He's the central node and needs to be able to speak both languages: tech talk to his team and management abbreviations... two different mind sets altogether sometimes ;)

Related Dilbert 

No. 1 Communication

Communication skills are absolutely required: fluent English in word and in writing, precise and aqdequate communication and Cultural Awareness. Efficient communication technqiues and personal management are essential, which ultimately leads to...

Related Dilbert 

No 2 - Time management

Yes.There are emails, phone calls, meetings, discussions, inquiries... plenty. Last year around December I had a throughput of around 100-150 emails per day. You need to be aware of timezones. Prepare smooth hand overs... DDPs can work around the clock, yes... they need to be coordinated/synced on a global level. So, you need ways to effciently organize your time... especially if you want to preserve at least somewhat you can call a private life.

Related Dilbert

Tips: Apply Outlook rules. Introduce catch words in email subject lists. Introduce abbreviations and ensure viral adoptation!

Time management and communication skills are really the basis. So, ensure to establish communication paths (and not only within your application, BUT also in real life)...maybe this is the social aspect of SOA ?!?

Exclusively communicate on these paths. Leverage all suitable channels (email, phone, messenger, twitter, ....) Decide on which ones to use to reach out to whom. Try to establish a living documentation... it requires a critical mass to see the platform of your choice manifest as the "single point of truth" for the entire development team.

Tips: Create Distribution Lists. Leverage multi-channel. Establish a WIKI. Use a single communication language in all written communication (you sure don't want to add translation to your role!)

No 3 - Coaching/Mentoring

That is the main part of the job. The inspiring one, the creativite one. The rewarding one. See, looking back at school I can safely say there have been been good and bad teachers. Yet, there were a handful, that taught me something for live... they had an impact on my life, they gave me direction. I think that's the rewarding part of coaching: the few students that actually listen and pick up on what you tried to teach them. The few you can really reach out to... where you can make a difference. The primary focus of a good architect is or at least should be the coaching and mentor role. Easy maths: If you teach people to work on their own, they take a share on the responsebility. Which is the ultimate goal. So, what makes a good coach, a good mentor? A good mentor/coach should...
  • ... aim to not only provide insight on technical topics, but also teach the reasoning behind it and the process of aquiring that insight - the mindset required to cope with a similar situation again. So to speak he acts as a knowledge multiplier.
  • ... should provide safe-guarding and assistance, yet empower the team to be able to execute on their own
  • ... should be close to the team; speak on behalf of the team, know the team... each team member, his/her background, his/her strengths, his/her weaknesses. In DDPs it is vital that the team really feels as one - periodic meetings face-to-face are important. A one-time kickoff meeting a must have.
  • ... clearly formulate his expectations and operation modes to the team - define a common playing ground, rules, interaction models
  • ... be a great leader. The ultimate way of leading is by example.... so, practice what you preach!
  • ... should never loose ground. Make sure to leave just a littlebit of coding to yourself! Leave your footprint. It forces you to review code. You should know how your development team works. Network lags... working environments... privacy...
  • ... should look out for good students! Ultimately, every mentor should look for his apprentice, the one, to teach it all you've learned during your life-time in a nutshell to your successor. At the end, the apprentice will always be stronger than his master! ;)

No 4 - Empowerment

Listen to the needs of your dev team. Their concerns. If they complain about unsufficent hardware, make the productiity loss transparent to management e.g. move to the cloud! Leverage new ways of thinking. If management tries to bail out... say the magic word: "lean!" ... Play by the rules of the management. Let them make the 'right decisions'! Clear, transparent communication and reporting is your ally and line of defense. Fight for your development team and its needs - that's your primary objective: ensure they have a SMART target!

Related Dilbert

No 5 - Organization/Moderation

What's the biggest asset of every team? Its members. Make sure they can concentrate on what they do best: development. If you succeed in the first four topics than your job should get easier and has reduced to organization and moderation. Once your team has the right knowledge, the emporment to execute, the state of mind to analyze challenges and discuss on solutions... you're almost there.

See, all the great architects I had the privilidge to work with share a common characteristic: they all loooove technical discussions! Put five geeks in a room for a day, feed them and they come out completly stoked at the end of the day... :)

This is your ultimate goal... raise the next generation of architects. Make sure that you are aware of the chemistry within the team and that you leverage each team member best accordinging to their individual strengths/weaknesses and skillset.

See, I learned all about leading a team from competitive team sport. If you want to win, you need a team that acts as one, which pushes each other and maintain a constant friendly competition about who is in the starting line-up. Identify your key players (who take the extra portion of responsebility), mix them up with the second tier so that they inspire/push/challenge each other... I've written about challenges already in my response to Thorsten Franz's blog about coaching here.

Conclusion

This is where I'm at these days... the team just does its job! I mean, I knew this is the best team I ever had a while, yet these days my job is really not that much about coaching any longer. But moderating... I try to speak as little as possible these days... just providing questions and food for thoughts... (a littlebit playing the devil's advocate here and there...) So to speak it all comes down to a tweet I read the other day, which was containing the following quote:
"Judge a man by his questions rather than by his answers" - Voltaire

What I'm doing all day? Usually on the phone in the mornings to sync with my colleagues in India. Emails etc. at noon. Prepare the next steps in the afternnon. That's it...

oh... and Blogging at night. :)

Introduction

Ever since I took over the technical lead for an XXL Composite last August I've been required to focus on a single project exclusively and I have been required to put all my other interest aside for a while. While that makes perfect sense from a project's point of view (and I feel more than just challenged to accomplish my mission) I still feel that iching in my fingers when I am sketching out another blog post on my way back from work (= in the rush hour traffic yam.) So, and while the rest of the SCN community is taking a break from all the #sapphirenow excitement and the great news that have been spread last couple of days (e.g. sybase, gateway, BYD, etc. ) I decided to take the opportunity to come up with a 'lighter' blog post - some easy reading - with low calories ;)

As I said above, I've been concentrating on my sole project/mission these days and hence I was really excited when I heard that our Chief Development Architect was planning a trip to SAP Research in Dresden. I had been in close contact with SAP Research while writing a specification for a very intersting Composite application early in  2009 and I have been really amazed by some of the stuff they develope in their lab. Of course, I jumped on the chance to finally witness it with my own eyes and enjoy a pleasant climate change at the same time.

The Future is Now

The night before the trip I was chatting with my office room mate and declared "The Future is Now" as my personal motto for this excursion/business opportunity... and rightfully so. Now,  I know that the community over here @ SCN probably has a stronger affinity to technology and gadgets than the average person on the street and as such the "WOOOW" effect of today's blog post may be somewhat reduced in magnitude. Either way... experiencing it first-hand is a completely different story as I'm about to point out. So, this is how it all started... 

Travelling in Style

I ordered my flight and the hotel a couple of days back (via transaction TP01) and so I headed to work w/o any sort of ticket, planning on printing it out in the office. While I was booting up my system (why does it have to take that long - BUMMER) I was checking my private mail on my iPhone. I spotted an email from Lufthansa - my carrier for the flight - labeled 'online check-in'. I opened it up and saw today's flight details and a link to check-in via mobile phone (see Screenshot 1.)

"OK, let's try that out.", I thought. Clicked on the link saying 'mobile' and Safari popped up showing a nicely rendered web page on my iPhone (Screenshot 2.)

After pressing the 'Check-in' button I was forwarded to the next page where I was able to pick my seat. (Screenshot 3)

I confirmed my choice and got the next page asking for my mobile number in order to reeive my etix (e-Ticket) as shown in Screenshot 4.

A final summary page (Screenshot 5) was displayed and submitted by me and then I already received an incoming message (Screenshot 6) containg a link to my mobile boarding card.

 


So, that's that... no need to stay in a single line! And even if one is travelling with luggage there are designated counters only for people with boarding tickets already.)

When I got to the airport I passed security showing (off) the boarding pass on my iPhone and during boarding I was just holding it over the scanner. (Then I turned flight-mode on and enjoyed the flight listening to my favorite music...)

"Can it possibly be any easier than this?"

Conclusion

Sure, that's nothing new and some of you may have been travelling in style like that for some time now. Yet, only now it's becoming mainstream. One does not have to be a geek (or a nerd), nor a techie or the like anymore. Anyone can do it...

Sure, smartphones with such capabilities are still too pricey to be considered a commodity affordable to everyone, however we all know too well how fast paced such things develop and manifest themselves. So, as application developers we face the opportunity of suddenly being apple to reach out to a much bigger audience with an always shrinking entry barrier. 

Sure, nobody does really need that nor depend on such apps. We've been travelling w/o apps just fine all our lifes. Yet, does it make our lifes easier and more convenient? Sure they do! Do we want to miss the convenience once experienced? Naw ;)

I really believe that the simplicity and the ease of accessing information anywhere, anytime, on-demand and location based - it is just the next logical step of connecting the world. Being among those who saw the net growing, evolving, changing the world,  it is still fascinating (and sometimes even scaring) for me to see it reaching the next level. Interesting times we live in - indeed....

About SAP Research Dresden

SAP Research DresdenFuture Factory

As much as I would love to talk a little bit about the outcome of our trip to Dresden. It's neither the right time nor the right place for it (yet). The trip was a blast and seeing the Future Factory was inspiring - to say the least. Again, right now the things we develop in the research labs may be cutting edge, yet it will turn into mainstream sooner or later... until then, I guess I have to stick to an ol' German saying:
"Der Gentleman schweigt und geniesst!" => A gentleman never talks about his amours! ;)

Introduction

Who would have thought that I'd ever blog about an ABAP feature... well, not me! ;)

Anyway, during this year's SDN Community Day at TechEd'08 in Berlin I witnessed a very interesting podium discussion about 'ABAP, the future, the downport and the tools' (check out Craig Cmehil's blog ABAP at Community Day Berlin).

In the Q&A part of the session, SDN Mentor Gregor Wolf asked the question if transaction SE37 would support nested structures and special datatypes as typically required when trying to test function modules in SAP CRM (check out his blog SAP Community Day: ABAP rockt).

I spoke to him after the session and he then he revealed a little-known secret about transaction SE37: the possibility to chain multiple RFCs/BAPIs within one transactional bracket.

 For more details about this functionality please refer to:

Now, that may be one of the features that they teach in ABAP 101 and even though I had my good share of ABAP development in the past I'd not call myself an expert. Yet I personally know a lot of seasoned ABAP developers that were not aware of it and who used to write small test reports to execute a 'BAPI_TRANSACTION_COMMIT' after calling a BAPI. These days are now officially gone (I hope)... so, without further ado...

How-to chain multiple RFCs/BAPIs in transaction SE37

 

  • 1. Execute the particular BAPI:

    image

  • 2. Select 'Other Function module' from the 'Function modules' menu:


    image

  • 3. Select 'BAPI_TRANSACTION_COMMIT' (or any other BAPI/RFC) to be executed next:


    image

Outro

Those of you who yawn now and say that they have known this for a long, long time - shame on you for not spreading the word! /JK ;) Well, there may be developers out there (like me) who did not know about this time-saving feature and who appreciate it... if I just reach one of them -> mission accomplished!

PS: Very special thanks to Gregor for taking his 'job' as SDN Mentor so seriously... keep up the good work!!!

image
Featured article

Being featured on SDN's main Java page and the resulting visibility of this article to the SDN Community I would like to encourage everybody to comment and post his thoughts as I truly belive that the feedback of the Community would be a valuable addition!

Related documents 

There have been some recent additions to the list of related material, so here are some more links:

to be continued...

Introduction

Welcome to my blog. I thought for quite a while about what topic I should pick for my first real blog, since obviously I want to make a good first impression to encourage readers to come back. Then I came to the conclusion that good manners actually dictate that I briefly introduce myself (for more information please take a look at my bio) and the department that I work for, and then set the tone for my blog series.

So… my name is Matthias Steiner and I’m working as a Solution Architect for SAP Custom Development; more precisely for the SAP NetWeaver Center of Excellence (CoE) within that organization. As the name indicates, the biggest part of the work we do is custom application development; where we enhance SAP’s standard solutions and build new ones to fit specific single-customer requirements. Hence, we have a very sophisticated understanding of the challenges customers face when trying to adapt SAP products to fit their needs. One could say that we actually play the role of a (not so) Independent Software Vendor (ISV).

But that’s not all… as mentioned above, I work for a part of SAP Custom Development called the SAP NetWeaver CoE, which offers a broad portfolio of services related to SAP NetWeaver and enterprise SOA. As such, we are in close contact and alignment with our colleagues from the SAP NetWeaver core development team and get our hands on upcoming releases early to validate the readiness of SAP’S composition tools; supporting SAP’s mission towards enterprise SOA.

Blog topics

So, based on the experience I’ve gained on the many projects I’ve been involved in so far, I’d like to “tell tales out of school”; sharing with you some solutions for specific problems challenges the people that I work with and I have faced in real-life projects. If it worked for us, there’s a big chance it’ll work for you too … right?

So standing in the front row in custom composite development and facing the same challenges that our customer and partners encounter in real life, I’m confident that we can share with you some knowledge, expertise and experiences that can be useful in your jobs as well. This blog is where I’ll share all that with you…

Related articles

Prior to this blog I wrote a few articles in the WIKI expert section of SDN that are related to the topic of this blog, so I’d like to take the chance to do some advertising and provide links to these articles:

  • Java BAdIs describes how the Business Add-in (BAdI) concept (for those who might be unfamiliar with the term, it’s frankly speaking a concept to setup pre-defined extension points where customers can modify the processing in a modification-free manner) known from the ABAP stack can be implemented on the Java side.

    Part II of this article is already in the works. It will apply the concepts discussed in part I as we port the solution to the SAP NetWeaver Composition Environment and re-factor it into a reusable framework.
  • The Anatomy of Java-based Enterprise Services provides some insight on the technical design of Java-based Enterprise Services and some guidelines on how application services should be modelled when planning to publish them within a SOA landscape.

Actions

Filter Blog

By date:
By tag: