Bruce Chapman presented on building a mobile application for DotNetNuke. He demonstrated how to build a mobile app called "Dnn Dash" that uses the DotNetNuke service layer to access dashboard data and display it on mobile devices. The service layer exposes key DNN API features and allows building custom endpoints. The presentation covered understanding the service layer, extending it for modules, writing mobile apps that authenticate and request data from services, and considerations for mobile app design using a CMS backend.
Impact 2014 1147 - Bridging Business Process Management and Integration use c...Brian Petrini
IBM Integration Bus makes it easy to integrate connectivity logic with business processes. This session explains everything teams need to know about using IBM Integration Bus in conjunction with IBM Business Process Manager Standard and Advanced. Presenters also provide insight into how this easy-to-use technology will evolve.
Impact 2014 1147 - Bridging Business Process Management and Integration use c...Brian Petrini
IBM Integration Bus makes it easy to integrate connectivity logic with business processes. This session explains everything teams need to know about using IBM Integration Bus in conjunction with IBM Business Process Manager Standard and Advanced. Presenters also provide insight into how this easy-to-use technology will evolve.
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
Proper planning and following some of the top practices are key to ensure a successful upgrade and migration of BPM system. In this session, we will talk about how to plan an easier and quicker migration, including a comprehensive consideration and plan based on your source environment, validations before migration, handle special requirements when move to a very different target environment, estimate your migration window and evaluate the business impact, plan your tests on regression and new features etc. Also we will introduce migration utility key improvements in BPM v8.5.x which can significantly reduce your migration failure, downtime and post-migration actions.
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easyBrian Petrini
Upgrading to the latest version of IBM BPM has never been easier. Ever since the release of IBM BPM 8500 in 2013, customers has been able to move to the latest release with an in-place upgrade without the need for data migration. This session will discuss the top practices in planning a painless upgrade to the latest BPM continuous release version?whether you are running BPM 85x or an older version. We will also discuss the options available if you want to move your BPM program to the cloud. In addition, we will also discuss ways to design your applications to ensure an easy upgrade every time.
Impact 2012 1640 - BPM Design considerations when optimizing business process...Brian Petrini
Whilst it is not always possible to remove and automate human tasks in a process, if it can be done, it often leads to the most dramatic optimization, leading to fully straight through processing. The challenge is that if straight through processing is the goal, we may need to design the process differently from the beginning, with automation in mind. This lecture uses tried and tested techniques for assessing processes to establish whether they are likely to be able to evolve to full automation, and recommends design patterns to be used to simplify the progression from manual to decision supported to completely automated.
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Brian Petrini
Where did my SOA budget go? I just spent 80% of it on integration and I still haven't got an SOA! We used to call it Enterprise Application Integration (EAI), now we call it service exposition. EAI is still there, it's still hard, and it still takes the vast majority of implementation time on SOA projects. Most companies hadn't finished their EAI when SOA came along. This session discusses how to capture and model the true complexity of an integration interface, and how to relate that to product capabilities. We'll show new techniques for how models can be used to improve estimating, aid product selection, assist designers with common integration patterns, and ultimately generate artifacts. We will discuss common integration patterns such as re-tries, healthcheck, flow control, store-forward, event sequencing and note how these are typically achieved using the current product suite, with particular reference to products such as WebSphere Process Server and WebSphere ESB.
Impact 2013 2971 - Fundamental integration and service patternsBrian Petrini
Every integration architect requires a fundamental set of patterns to describe their use cases. This lecture builds on the known patterns and adds a more complete set of patterns that have not before been published, especially in the lower level interactions. After introducing the usage patterns, we will put them in the context of the service integration maturity model and how these fundamental patterns can build on each other to create mature services for an SOA. Lastly interface characteristics will be described that can be used to precisely articulate the complexity of the integration. This a must-see session for any Enterprise Architect seeking to build on successful integration strategies. Please join these popular speakers who have been IBM experts in integration for many years.
Impact 2010 1162 - How to say less, yet communicate more, in solution designs...Brian Petrini
Ever felt that designers need to know too much about BPEL and WPS to be able to prepare their solutions. This session, based on experiences from countless implementations, explains the most common "process implementation types", along with examples, and key caveats regarding the anti-patterns that lurk nearby. It provides a "pattern language" that allows designers to communicate their requirements to WPS implementations accurately and succinctly without needing to know the depths of the product. It also therefore provides implementers with a set of tried and tested building blocks such that you can implement in a more consistent, and repeatable way.
How to put domino in a docker container and live happy. This are my slides from last IBM Connect 2016 lightning talk. Update will be available soon on my blogs, www.msbiro.net , blog.msbiro.net
InterConnect 2015 1930 - Top practices to ensure a successful IBM Business Pr...Brian Petrini
Proper planning and following some of the top practices are key to ensure a successful upgrade and migration of BPM system. In this session, we will talk about how to plan an easier and quicker migration, including a comprehensive consideration and plan based on your source environment, validations before migration, handle special requirements when move to a very different target environment, estimate your migration window and evaluate the business impact, plan your tests on regression and new features etc. Also we will introduce migration utility key improvements in BPM v8.5.x which can significantly reduce your migration failure, downtime and post-migration actions.
InterConnect 2017 HBP-2884-IBM BPM upgrade and migration made easyBrian Petrini
Upgrading to the latest version of IBM BPM has never been easier. Ever since the release of IBM BPM 8500 in 2013, customers has been able to move to the latest release with an in-place upgrade without the need for data migration. This session will discuss the top practices in planning a painless upgrade to the latest BPM continuous release version?whether you are running BPM 85x or an older version. We will also discuss the options available if you want to move your BPM program to the cloud. In addition, we will also discuss ways to design your applications to ensure an easy upgrade every time.
Impact 2012 1640 - BPM Design considerations when optimizing business process...Brian Petrini
Whilst it is not always possible to remove and automate human tasks in a process, if it can be done, it often leads to the most dramatic optimization, leading to fully straight through processing. The challenge is that if straight through processing is the goal, we may need to design the process differently from the beginning, with automation in mind. This lecture uses tried and tested techniques for assessing processes to establish whether they are likely to be able to evolve to full automation, and recommends design patterns to be used to simplify the progression from manual to decision supported to completely automated.
Impact 2008 1994A - Exposing services people want to consume: a model-driven ...Brian Petrini
Where did my SOA budget go? I just spent 80% of it on integration and I still haven't got an SOA! We used to call it Enterprise Application Integration (EAI), now we call it service exposition. EAI is still there, it's still hard, and it still takes the vast majority of implementation time on SOA projects. Most companies hadn't finished their EAI when SOA came along. This session discusses how to capture and model the true complexity of an integration interface, and how to relate that to product capabilities. We'll show new techniques for how models can be used to improve estimating, aid product selection, assist designers with common integration patterns, and ultimately generate artifacts. We will discuss common integration patterns such as re-tries, healthcheck, flow control, store-forward, event sequencing and note how these are typically achieved using the current product suite, with particular reference to products such as WebSphere Process Server and WebSphere ESB.
Impact 2013 2971 - Fundamental integration and service patternsBrian Petrini
Every integration architect requires a fundamental set of patterns to describe their use cases. This lecture builds on the known patterns and adds a more complete set of patterns that have not before been published, especially in the lower level interactions. After introducing the usage patterns, we will put them in the context of the service integration maturity model and how these fundamental patterns can build on each other to create mature services for an SOA. Lastly interface characteristics will be described that can be used to precisely articulate the complexity of the integration. This a must-see session for any Enterprise Architect seeking to build on successful integration strategies. Please join these popular speakers who have been IBM experts in integration for many years.
Impact 2010 1162 - How to say less, yet communicate more, in solution designs...Brian Petrini
Ever felt that designers need to know too much about BPEL and WPS to be able to prepare their solutions. This session, based on experiences from countless implementations, explains the most common "process implementation types", along with examples, and key caveats regarding the anti-patterns that lurk nearby. It provides a "pattern language" that allows designers to communicate their requirements to WPS implementations accurately and succinctly without needing to know the depths of the product. It also therefore provides implementers with a set of tried and tested building blocks such that you can implement in a more consistent, and repeatable way.
How to put domino in a docker container and live happy. This are my slides from last IBM Connect 2016 lightning talk. Update will be available soon on my blogs, www.msbiro.net , blog.msbiro.net
DNN Connect - Mobile Development With XamarinMark Allan
Find out how you can use C# and .NET to write fully native apps for iOS, Android, Mac and Windows, not to mention Apple Watch and Android Wear. Also add Xamarin.Forms to rapidly develop native UI using XAML.
Add Mobile Device Dimensions to Your Web Analytics with 51Degrees and DNNDNN
Understanding how physical screen size, touch screens and geographic location impacts web site return on investment has never been more important.
Analytics tools need to be enhanced to support them. In 15 minutes we’ll show you how to upgrade your CMS.
Mobile App Development Using Appcelerator and DNN WebAPIsDNN
Want to get a jump start on doing mobile development with DNN?
Ash Prasad, who built native mobile app "dnnmobi" for DNN using Appcelerator and DNN Web APIs, presents a deep dive into the code and what it takes to build a mobile app:
Mobile logins, permissions, creation of simple list views, dialogs, interacting with DNN's native web APIs, and actionable tips that you can put to use immediately
There has been a lot of information available about accessing DNN WebAPI from within a module, however, there isn't a lot of info on how to access those APIs securely from another client, say Windows Client or Mobile. I've developed sample apps in Win Forms to access Core or Custom Web APIs keeping in mind Anti-Forgery and Module / Tab Permissions. Join me to get tips and tricks on writing WebAPIs in DNN that can be securely accessed (using Anti-Forgery and obeying Module Permission) from DNN Modules as well as outside.
Microsoft « aime » officiellement l'Open Source ! A ce titre, Sébastien Véniel a présenté lors d'une interview le CMS DotNetNuke et ses avantages compétitifs dans le monde d'internet de 2011.
Learn the basics of DNN module development. See how to get your module started, what DotNetNuke provides you as a developer, and some of the ins and outs of writing code for DotNetNuke. Starting basically from scratch, we will examine what is required from DotNetNuke modules, and what DotNetNuke offers that you won't want to miss. Presented by Brian Dukes of Engage Software.
DNN Connect 2014 - Enterprise Ecommerce and DotNetNukeThomas Stensitzki
Introducing a new Enterprise Ecommerce solution for DotNetNuke.
The presentation has been shown at the DNN Connect 2014 conference in Italy.
Stay connected at:
http://dnnconnect.nikos-one.eu
Learn why DotNetNuke has become the CMS of choice for many businesses, and how Landscapes In Motion can deliver a web 2.0 dynamic and modern website based on your budget and needs.
Visit: http://www.landscapesinmotion.com.au/webconstruction
Email: sales@landscapesinmotion.com.au
There are literally millions of people using DotNetNuke in various ways. With that many people in the world also potentially releasing blogs, modules, skins, and other resources, it's nearly impossible to keep up. Will Strohl is one of the original Sales Engineers at DotNetNuke Corporation. In this position, he helps companies of all shapes and sizes find just the right puzzle pieces to put in place to create the masterpiece that is their DotNetNuke website. This session will show you the secrets that he uses to keep up with the latest and greatest DotNetNuke trends, updates, and some of his favorite extensions out there. Don’t miss your chance to pick-up the trade secrets that enable him to help even Fortune 1000 companies implement successful DotNetNuke solutions.
Automatic Data Processing (ADP) is one of the world's largest providers of business outsourcing solutions. One of the biggest benefits offered by ADP India is the levels of confidentiality and security for payroll information. Payroll is not just about paying people, but well managed payroll processes reduce costs and mitigates compliance risk. Also ADP will update on any amendments or changes in the salary components and payroll processing by Indian statutory and taxation laws. ADP will ensure that salaries are disbursed to individual employee accounts every month.
Read More at: http://www.adp.in/payroll-outsourcing.aspx
How to build mobile experiences for any platform using Azure, with capabilities like data storage, offline data sync, authentication with Azure Active Directory and push notification?
Faster and more efficient processes by combining BPM and Mobile – yes we can!Sebastian Faulhaber
Faster and more efficient processes by combining BPM and Mobile – yes we can!
A lot has happened in the area of mobile since Apple kicked off the revolution by announcing the first iPhone. However, the overall mobile market still has to be considered as young and especially unstandardized. This really puts a lot of organizations in front of huge challenges concerning the efficient development of mobile applications and the secure integration into backend IT systems. - But there is no way around mobile in the next years! The smart combination of mobile techniques (mBaaS, microservices, etc.) and business process management approaches will definitely drive process efficiency and speed to a whole new level.
In this presentation I will outline the floating icebergs you should look at when implementing mobile and BPM in your enterprise. In addition to that you will learn how other companies have successfully implemented mobile to optimize their processes.
#######
Schnellere und effizientere Prozesse mit Mobile und BPM - aber sicher!
Auch wenn es iOS, Android und co nun schon seit einigen Jahren gibt; der Markt ist immer noch unübersichtlich und wenig standardisiert. Die Entwicklung von mobilen Applikationen und die sichere Anbindung an die Enterprise IT stellen viele Organisationen immer noch vor große Herausforderungen. Dennoch lohnt sich der Aufwand! - Die Kombination von mobilen Ansätzen mit Business Process Management verspricht noch schnellere und effizientere Prozesse Im Unternehmen.
In diesem Vortrag zeigen wir Ihnen, welche Eisberge es beim Einsatz von Mobile und BPM zu umschiffen gilt. Anhand von mehreren Case Studies erfahren Sie, wie andere Unternehmen erfolgreich mobile Ansätze zur Optimierung ihrer Prozesse eingesetzt haben.
VMworld 2013: Cloud Service Automation with NSX and vCloud Automation Center VMworld
VMworld 2013
Gargi Keeling, VMware
Valentina Reutova, VMware
Learn more about VMworld and register at http://www.vmworld.com/index.jspa?src=socmed-vmworld-slideshare
Convertigo Mobility Platform | Mobile Application Development for Enterprises...Convertigo | MADP & MBaaS
Convertigo is a privately held company recognized as a "pure player" in the enterprise Mobility market and the first software vendor to distribute its cloud based or on premise Mobile Application Development Platform (MADP) as Open Source. Convertigo is delivering a secured and scalable disruptive all-in-one solution integrating rapid cross platform mobile development tools and a powerful MBaaS covering challenging backend enablement, featuring a middleware optimized for mobility.
With more of 60.000 installations of its community edition, Convertigo technologies have a proven track record with secured and scalable implementations deployed in global fortune 500 companies in EMEA and North America.
More info on http://www.convertigo.com
Presentation from DDD Sydney, May 28th, 2016
Buzz word! More buzz words! And another buzz word!! Now that that's out of the way, if you're thinking of heading down the microservices path, then how do you do it? How do you build the services? What do you need to think about if you're starting from scratch? What if you're converting a legacy app? How do we deal with versioning? Do we have to use a NoSQL solution, just because Netflix does? Do we need to use docker/containers? What about the code? Show me the code! Well, that's what this session is all about. Designing and building microservices in .NET and then handling a bunch of other concerns that a microservices approach will force you to think about. Sounds interesting, doesn't it? You betcha.
2. Presentation Agenda
Brief Introduction to Mobile Applications +
DotNetNuke
Demonstrate how to build a Mobile Application
that uses Service Layer of DotNetNuke to
interact
– Understanding the Service Layer
– Building Service Endpoints
Example Application : “Dnn Dash” – allows
access to the Dashboard of any 6.2+
DotNetNuke site
– Building Mobile Application
3. Mobile Applications
Purpose built (device specific) Mobile
Applications are a superior way to deliver a
mobile experience
Html 5 can provide a rich experience, but cannot
match purpose built at this point
The theme of Mobile App vs Mobile Site is
currently a hot topic of debate
4. Html 5 vs Native Apps
Html 5 Native App
Conclusion
• Write once – run anywhere • App per platform
•Choose
• Server-side code easily according to require lengthy
• May
changed requirements release process
• Sandboxed, no access to • Full access to device
features •Services layer may features – camera, GPS
be largely
• • In-device discovery +
No App Store Presence in either case
the same purchase
• Speed dependent on
connection • Faster + more stable
• Direct monetization more • Monetization by app or in-
difficult app purchase easy
5. Mobile Applications and DotNetNuke
DotNetNuke 6.2 introduced the Services
Layer, which exposes key DNN API
features
DNN Services layer is easily extended for
module specific purposes
An entire new field of DotNetNuke
application development has been
created
6. Mobile Application Types
Corporate development : customising
apps for in-house use on mobile + tablet
platforms
Commercial development : new
applications that provider web + mobile
experience
Open Source development : providing
applications + back end processes
9. Understanding the Service Layer
6.2 – Uses the MVC Service Layer
7.0 – Uses the Web API for the Services Layer
Two aspects to layer:
– Built-in DNN API
– Extension for Third-party modules
Provides authentication based on DotNetNuke
user accounts and profiles
Provides simple pattern to design service
endpoints
Flexibility in format (Json/Xml/others)
10. Extending the Service Layer
2 Basic Components to API Extensions
1. Controller
Definition of Methods and layer on top of
business logic
Inherits from DnnController
2. RouteMapper
Defines what Urls map to which
Controller methods
Inherits from IServiceRouteMapper
11. Example Service Layer Call
Url to call:
http://example.com/DesktopModules/DnnDash/API/Dash/Ping
12. Deconstructing Services Layer Url
http://example.com/DesktopModules/DnnDash/API/Dash/Ping
http://example.com => domain name
/DesktopModules => fixed part of Url, denotes module Url
/DnnDash => specifies module
/API => fixed, denotes services layer
/Dash => specifies controller [ DashController ]
/Ping => method name [ Public string Ping() ]
NOTE: /DesktopModules/DnnDash doesn‟t
necessarily have to exist
13. RouteMapper registers Url Routes
MapRoute configures what Urls will work:
– “DnnDash” /DesktopModules/DnnDash
– “{controller}/{action}” Class/Method
/API/Dash/Ping DashController.Ping()
No other configuration required
15. Services Authentication
Authentication:
– Identifying & Authorising User accounts
– Preventing Unauthorised Access
– Avoiding opening exploitable holes
– Providing „context‟ for current user within
service calls
Web-browser based services call use cookie-
based authentication (ie AJAX calls)
Mobile devices use digest authentication to
provide authentication
– Username/password pair provided with each
call
16. Services Authentication cont.
Services methods access level can be marked
with:
– AllowAnonymous – no authentication
– RequiresHost – if true, must be SuperUser
– StaticRoles – named DotNetNuke roles
All „regular‟ DNN objects are available in context
for service calls:
– Portal Settings (current portal, alias, settings)
– UserInfo (authenticated user)
17. Tips for Writing Services
Use RESTful method / parameter naming
principles
Stick to common return format in project
(Json/Xml/String – whatever)
Plan for infrequent service calls in Application
Design
Be frugal with data going backwards and
forwards – this may require custom serializing of
objects
18. Installing Services with your Module
A service-only module only has an Assembly
Install with ordinary Module install package
DotNetNuke manifest file used to specify
configuration and safe uninstall
19. Writing a Mobile Application
„DnnDash‟ application on Windows Phone
Reads installed DotNetNuke dashboard
components for display on mobile devices
Uses DnnDash services layer to send back Xml
of dashboard information
Host-level access required to run
DnnDash module/phone app available from
dnndash.com
20. Accessing Services from Windows Phone
Uses System.Net.HttpWebRequest
– Asynchronous method
– Check Http status code to monitor correct
authentication (401 returned when not
authenticated)
Each call from the device provides user
authentication username/password pair
Uses Xml from Service call to create UI
22. Authenticating Phone User
Username/Password supplied
with each call
Defaults to Digest
Authentication –
Username/password not
plaintext
23. Requesting Data from Service
Mobile requests data using Asynchronous Web
Request.
Response body is read from
Response.GetResponseStream()
Once response is received, conversion to the
response format
Example uses both Xml and Json responses
24. Posting Data to a service
Posting is much the same as retrieving data
Post generally means changing server state
Posts should be idempotent
Failure should allow for re-submit without losing
client state
25. Considerations for Mobile App Design
Store-posted apps can have lead-times for
changes in design
DotNetNuke modules can be changed + patched
immediately
Therefore, introduce flexibility into design that is
data-driven, side-stepping requirements to re-
release mobile clients
26. Conclusions
Mobile Internet usage will soon overtake fixed
line, if it hasn‟t already
Hardware sales growth in mobile devices
outstrips desktop computing
DotNetNuke provides a perfect bridge between
mobile devices and your data, especially if you
want to put it in the cloud
Building modules for the services layer is simple
and fast
Mobile Apps are the next big thing in
DotNetNuke
27. Questions
Dnn Dash application code available from
http://dnndashservice.codeplex.com/
Slides available at
http://www.slideshare.net/brchapman