Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
MattHarding
Active Contributor

I’ve been reviewing a lot of code lately; much of this based on changes to Floorplan Manager (FPM) applications or development of new Floorplan Manager apps. And do you know what I have not come across yet? I have not come across a Floorplan Manager app that I think is a good clean, simple design. Don’t get me wrong. Some of what I see is very good based on what is available, but when you think about software concepts like separation of concerns and variations of UI patterns like Model-View-Controller (MVC) - there seems to be one or two things that always stick out as limitations. It’s like your elegant design having a party and this small piece of bad design shows up uninvited...Awkward!


So there’s a lot of good in FPM, so let me highlight my theory about what was architected to be great:

  • The ability to get a consistent style of interface, especially with Global User Interface Building Blocks (GUIBB’s).
  • GUIBB’s providing the ability to create UI’s with small amount of code in a feeder class (which is mostly very similar each time); and some configuration.
  • The whole FLUID editor (and the improved workbench in the latest releases)
  • Reuse of UIBBs within a UI in different applications
  • Plus lots more


The biggest feature though is the ability to provide configuration based enhancements/adaptions or personalisation capabilities for SAP developed content without modification and in many cases without even coding. And this is what I feel is the main point of FPM. To benefit customers, and not necessarily make life as easy as possible for developers (though it doesn't go out of it's way to not do this either).


Note - At my current customer, we saw the benefits and committed to FPM rather than straight Web Dynpro because we know it’s the future of Web Dynpro development (note I didn’t say future of UI development). After spending more time with it, and realising the above, we're less certain this was the right approach for custom developments.


So where it becomes tainted is when you need to develop one of these from scratch. In essence, my concern is for all of SAP’s developers who are developing non-Fiori/BO/Mobile business suite applications with FPM and customers wanting to develop their own apps.


My issues are:

  • Poor examples of enterprise design being trained/highlighted.

  • Lack of consistency by SAP themselves in using it.

  • Reliance on singletons, highly structured wires, or events containing data that don’t provide any real controller to your application.

  • Lack of realisation within many consulting companies that FPM is not just Web Dynpro and that training is required.

  • The Fear Uncertainty Doubt (FUD) that goes with UI development and FPM causing simple UI’s to become very expensive.


Let me explain further below but first may I also say one thing that is really great is the FPM Developers Guidelines/Cookbook. It truly is a cookbook in terms of size. e.g. Imagine you have a large recipe book and you go and try eat all the recipes in one go - Futile right? I think I’ve gone back to the FPM Cookbook hundreds of times to get more recipes out of it. It is a great reference, but be warned, it will overwhelm most people if they try to learn FPM from the developer guidelines (which I tried to do initially).


Anyway, let me explain the issues and being a helpful consultant I’ll provide a recommendation to SAP/yourselves to get around this issue.

Please note: This all assumes you don’t want to move to HTML5/Gateway development for business applications just yet :grin:

Issue #1: Poor examples of enterprise design being trained/highlighted.

A common bugbear I have with many training courses is when training goes as far as showing you how to do simple examples, but provides no information to you to do something in an enterprise way. Imagine learning all the HTML/JavaScript/CSS language and then being given a job at Google to build their next gmail web app. Realistically, there is a lot of work still required to get that job at Google, but at the very least if you did get that job somehow, there are some good enterprise like patterns out there to learn from and lots of example that put you in a good position to at least not get fired on the first day.


With FPM, the training appears to cover the basics from what I can tell but doesn’t get into design patterns per se. I didn’t get any response to my question specifically asking about this so can't be certain:

peter.walters/blog/2013/08/10/new-features-for-floor-plan-manager-for-web-dynpro-abap
.

14 Comments
Labels in this area