Welcome!

Related Topics: @CloudExpo

Article

Enterprise Client Strategy, Windows 10 & Beyond

Windows 10, Xamarin & Universal Apps

Enterprise Client Landscape
For several years enterprises were given some easy options when it came to client strategy.

  • Since the exit of mainframe terminals, most enterprises have successfully deployed Microsoft Windows-based desktops as their clients
  • Most enterprises adopted web-based applications, where by the desktop clients helped more in connecting to the applications through the browser and executing them
  • Client Server strategy is still utilized for specific applications like Office Productivity applications, emails and some multimedia-centric applications.

With the above strategies, enterprises never really worried about the programming platform and architecture of client-side applications. During the mainframe era it was all COBOL and server-side architecture and later it was all Java, C# and other multi-tiered architectures. For a brief period some of the 4GL platforms like PowerBuilder, Delphi, VB6, and Oracle Forms played a role in client strategy and they gradually ran out of steam.

Cloud/Client Architecture Opportunities and Challenges
As per Gartner , in the cloud/client architecture, the client is a rich application running on an Internet-connected device, and the server is a set of application services hosted in an increasingly elastically scalable cloud computing platform. The cloud is the control point and system of record and applications can span multiple client devices.

This means multiple factors like,

  • Shifting of preference toward Cloud/Client architecture
  • More demanding end users who wanted rich user experience and high performance
  • Enterprises changing their policies towards BYOD

Pushes the enterprises towards the new model of computing where the Client devices have to be fully thought of and delivered as per the needs of end users.

There are a lot of benefits for enterprises in adopting the Cloud/Client architecture.

Reduction of the Server Footprint
There is always a need for enterprises to reduce their excessive data center footprint and become more optimal. While the cloud platform enables enterprises to adapt to on-demand usage, they continue to process for client needs. The earlier era web frameworks like ASP, JSP, Servlet, etc., have all spent lot of server-side energies taking care of the needs of the clients. However the Cloud/Client strategy shifts much of the processing needs from the server to client. Think of a enterprise which encourages BYOD in their IT strategy, this means enterprises no longer spending their energy for doing some client specific processing which can be better handled in the client itself.

Think of an agent who wanted to provide the best quotes to the customers with the usage of a calculation model that performs a CPU-intensive calculation and come up with a quote, in the earlier era the entire processing is done on the server utilizing the data center resources. However, in the Cloud/Client architecture the model can be pushed to the client with the appropriate metadata and parameters and the entire processing is done from the client without occupying server resources.

Apart from this there are obvious benefits like improving the efficiency of end users, enabling knowledge workers and bringing new business models.

But this approach does comes with several challenges for the enterprises.

No Unified Platform of Desktop & Mobile Devices
Desktop computing will continue to exist in the enterprise and no enterprise can afford to discount them in their future client strategy and till now they did not have a unified approach for both desktop and mobile devices.

No Convergence Between Mobile Devices
It is in the best interest of mobile device original manufacturers to distinguish their device in terms of usability features that will provide them the much needed differentiation in the market. This means in the short term (or probably never) there will be no convergence of user interface features of mobile devices. This makes enterprises worry about a unified strategy among various mobile devices.

Enterprises Cannot Afford Throwaway Code
Enterprise class code has to live long and has to be maintainable over a period. If we look at the history, COBOL lived for more than 40 years and continue to be maintained, Java, PLSQL, VB, SQL,C++ languages do have a long history at least 20+ years and they continue to be used. However, suddenly enterprises have to live with the choice of HTML5 & JavaScript as their programming platform of choice for clients. This may be fine for a few quick enablers and go-to-market applications; however; enterprises needed a solid client platform strategy.

However, all is not bad for enterprises and there are a few directions that enterprises can adopt to come up with a robust client strategy that will not only help them to span devices and also enable the creation of applications that are long living and easy to maintain.

Windows 10 & Universal Apps
Windows 10 is an upoperating system from Microsoft Corporation for servers, desktop PCs, laptops, tablets, phones, and other connected-devices (i.e., Internet of Things). Windows 10 'skips' Windows 9 for its name for various reasons, including it being such a big update that it moves beyond just a single number upgrade.

Microsoft introduced the universal apps model in April, enabling developers to reuse the bulk of their code when porting an app between phones, tablets, PCs, and the Xbox One. As per this universal apps context, develop once for all Windows devices using a unified Windows runtime and VS tools that allow you to both support experiences unique to a device in XAML, HTML, and DirectX, and share the code that supports those experiences across all devices using C++, C#, or JavaScript. When your work is finished you can you can produce the app packages that you will submit to the Windows Store and Windows Phone Store with a single action to get your app out to customers on any Windows device.

As evident from the above post, Microsoft provides the fullest support for developing universal apps using the modern objected-oriented high-level language in the form of C#, which means that the code can be developed using the proven object-oriented methodologies while the resulting application is fully maintainable.

Extending to Other Devices Using Xamarin
While the above concept of universal apps will help enterprises have a single code base in C# across desktops, Windows phones and other Windows devices, what about non-Microsoft mobile platforms especially the Apple iOS and Android platforms. We have a good solution in the form of Xamarin. With Xamarin, you write your apps entirely in C#, sharing the same code on iOS, Android, Windows, Mac and more. Xamarin apps are built with standard, native user interface controls. Apps not only look the way the end user expects, they behave that way too. Xamarin apps leverage platform-specific hardware acceleration, and are compiled for native performance. Use the same language, APIs and data structures to share an average of 75% of app code across all mobile development platforms. Build user interfaces with Xamarin.Forms and share nearly 100%.

Xamarin.Forms allows you to build native user interfaces for iOS, Android and Windows Phone using 100% shared C#. Xamarin.Forms includes more than 40 controls and layouts, which are mapped to native controls at runtime.

By adopting Windows 10, Universal Apps and Xamarin, an enterprise can follow a unified client strategy based on objected-oriented, strong typed programming language C# while writing applications across devices in a single code base. This approach should be worthwhile for enterprises considering the long-term maintenance needs than adopting the weekly typed language or other interpreted scripting frameworks.

Extending to the Back End as a Service Platform
The above discussions can help enterprises position C# as a unified language and platform for developing universal applications; however, as per the Cloud/Client strategy each client application requires a cloud service to augment it. There are always multiple choices for enterprises to develop server-side services. But there also enterprises have a few choices to enable a unified platform across all tiers.

ASP.NET Web API is a framework that makes it easy to build HTTP services that reach a broad range of clients, including browsers and mobile devices. ASP.NET Web API is an ideal platform for building RESTful applications on the .NET Framework. Here also C# is the language of choice when it comes to developing Back end services.

Summary
Enterprises are moving toward cloud/client computing; however there are lot of choices in terms of JavaScript frameworks, HTML5 and other options. Enterprises would be better off in adopting a unified client strategy which is built on a high level object oriented language like C# and hence the above mentioned strategy of using Windows 10 based universal apps and extending them Xamarin will be of interest to enterprises.

More Stories By Srinivasan Sundara Rajan

Highly passionate about utilizing Digital Technologies to enable next generation enterprise. Believes in enterprise transformation through the Natives (Cloud Native & Mobile Native).

Latest Stories
DX World EXPO, LLC, a Lighthouse Point, Florida-based startup trade show producer and the creator of "DXWorldEXPO® - Digital Transformation Conference & Expo" has announced its executive management team. The team is headed by Levent Selamoglu, who has been named CEO. "Now is the time for a truly global DX event, to bring together the leading minds from the technology world in a conversation about Digital Transformation," he said in making the announcement.
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily own their code into production, but want to use platforms instead of raw automation. That’s changing the landscape that we understand as DevOps with both architecture concepts (CloudNative) and process redefinition (SRE). Rob Hirschfeld’s recent work in Kubernetes operations has led to the conclusion that containers and related platforms have changed the way we should be thinking about DevOps and...
SYS-CON Events announced today that Conference Guru has been named “Media Sponsor” of the 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to gre...
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develop...
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, led attendees through the exciting evolution of the cloud. He looked at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering m...
Companies are harnessing data in ways we once associated with science fiction. Analysts have access to a plethora of visualization and reporting tools, but considering the vast amount of data businesses collect and limitations of CPUs, end users are forced to design their structures and systems with limitations. Until now. As the cloud toolkit to analyze data has evolved, GPUs have stepped in to massively parallel SQL, visualization and machine learning.
The next XaaS is CICDaaS. Why? Because CICD saves developers a huge amount of time. CD is an especially great option for projects that require multiple and frequent contributions to be integrated. But… securing CICD best practices is an emerging, essential, yet little understood practice for DevOps teams and their Cloud Service Providers. The only way to get CICD to work in a highly secure environment takes collaboration, patience and persistence. Building CICD in the cloud requires rigorous ar...
"Evatronix provides design services to companies that need to integrate the IoT technology in their products but they don't necessarily have the expertise, knowledge and design team to do so," explained Adam Morawiec, VP of Business Development at Evatronix, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
"ZeroStack is a startup in Silicon Valley. We're solving a very interesting problem around bringing public cloud convenience with private cloud control for enterprises and mid-size companies," explained Kamesh Pemmaraju, VP of Product Management at ZeroStack, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Enterprises are adopting Kubernetes to accelerate the development and the delivery of cloud-native applications. However, sharing a Kubernetes cluster between members of the same team can be challenging. And, sharing clusters across multiple teams is even harder. Kubernetes offers several constructs to help implement segmentation and isolation. However, these primitives can be complex to understand and apply. As a result, it’s becoming common for enterprises to end up with several clusters. Thi...