Cloud is a distributed ecosystem and differs significantly from on- premise software development platform. Cloud application develop- ment is built upon a service-based architecture, application program- ming interface driven communications, container-based infrastruc- ture and a bias for DevOps process such as continuous improvement, agile development, continuous delivery and collaborative develop- ment among developers, quality assurance teams, security profes- sionals, IT operations and line-of-business stakeholders. Therefore, while building applications on the cloud there needs to be a novel attitude to requirements gathering, software design, development, deployment, debugging, maintenance and testing. The main objective of the workshop is to discuss how Cloud Software Engineering differs from traditional software engineering and the challenges that arise and create a community around the relevant work areas.
While designing a cloud application, architects need to be aware of the infrastructure requirements and deployment strategies upfront. Traditional applications have a static infrastructure and data and services are scaled manually. Cloud-based applications, being auto- matic, can scale data independently. They are designed on Service Oriented Architecture principles and are compatible with dynamic frameworks. Traditional applications are made on three basic tiers known as database tier, presentation tier, and app logic tier and deployed on-premise. Cloud-based applications in addition to the above have other tiers all of which are containerised and deployed on the cloud. They work on theories of user interface and automation. Cloud-based applications have well-designed structures that ensure proper backup for all the data. When it comes to cost-effectivity, cloud-based applications lead the race as they are designed, keeping the software as a service orientation in mind, as server maintenance cost and the licensing costs can be avoided. Costliness is one of the main reasons why traditional applications are losing credibility over time. Cloud-based application development involves building decoupled microservices allowing easy collaboration, independent development and fast release cycles.
A traditional application is dependent on a specific OS, backing services, storage and hardware making OS migration risky. Cloud- based applications are independent and do not require patches or configurations. GDPR is not an issue during traditional software de- velopment because all data resides within the on premise data center , while it is a significant issue during cloud software engineering. Database consistency models are not a concern during traditional software development but it is a critical criteria in cloud software engineering. Migrating an existing monolith to a microservice in the cloud is a significant endeavour that many organizations are investing in.
As the cloud services in a company’s ecosystem increase rapidly, it becomes extremely crucial to have robust incident detection and remediation capabilities. Enhanced integration , performance and security testing for the cloud is essential. A cloud deployment model is defined according to where the infrastructure for the deployment resides and who has control over that infrastructure and can be divided into public cloud, private cloud, community cloud, hybrid cloud and multi-cloud. Automating and orchestration of tasks on these different deployment models needs special thought.
There are certain issues that are unique to cloud software engineer- ing. Cloud security challenges includes compromised credentials, mass sensitive data breaches, hacked interfaces and account hijack- ing. Governance and Compliance should also be factored in. Multi Cloud environments which could involve varied combinations of public - private cloud or public - public cloud increases application development complexity many fold. Migration , portability and inter- operability are some of the critical concerns that govern cloud archi- tecting decisions. Cloud services need to provide stringent reliability and availability guarantees. Cloud software engineering challenges present great opportunities for growth and evolution for industry practitioners and novel research problems for academicians.
PLAN FOR THE WORKSHOP:
One full-day 23 Feb 2023, with contents as below:
Srishti Sofat , Senior Vice President Product Development , Oracle (10:00 - 11:00 AM)
Topic: Enterprise Software on the cloud – Oracle Unity on OCI
Profile: Srishti Sofat is Senior Vice President in Development for Oracle Fusion CX. She brings over 24 years of experience in building and scaling large scale consumer and enterprise cloud software products. She has been solving interesting problems in Marketing Orchestration, Personalization, Mobile, Mar-Tech and customer intelligence to help a global set of customers. Drives a strong culture of customer focus, product innovation and execution . Proven track record of hiring ‘A’ players, building & mentoring strong teams and leading geographically distributed teams
Abstract: Customer Experience (CX) is a priority for enterprises today. An intelligent customer 360 platform is central to CX. Srishti will talk through how Oracle Unity natively built on Oracle cloud infrastructure ( OCI) takes advantage of being a cloud first enterprise application.
Ashish Puri, Global Head of Technology and Business - SaaS and AI Flytxt (11:00 -12:00)
Topic: FlyTxt'x journey to building a multi-tenant cloud architecture platform
Flytxt is the trusted technology partner of 80+ digital enterprises ,across more than 50 countries, as well as of top CX platform vendors for CLTV( customer lifetime value) maximization. Its award-winning CLTV maximization AI has been designed and trained using real-world insights and patterns from more than a billion consumers and trillions of data points.
The firm its HQ in Netherlands, and global development center in India, and presence in multiple geographies across the globe
Flytxt empowers the world’s biggest brands to solve one of the fundamental challenges of subscription and usage-based businesses– how to maximize customer lifetime value (CLTV). Its AI-powered solutions enable enterprises to maximize CLTV through gaining a deeper understanding of their customers and products and empowering them to deliver profitable digital experiences with agility and precision, at scale.
Flytxt has built its SaaS big data and AI platform on the cloud leveraging the best breed IaaS services to rapidly onboard their customers to their cloud offering. Multi-tenanted SaaS design has lead to exciting learnings for Flytxt, that will be insightful learning for Cloud software engineering practitioners such as this audience:
Cost savings and rapid account /client activation : Cloud computing eliminated the need for upfront capital expenses for hardware and reduces ongoing maintenance costs enabling rapid deployments and 1-3 months delays in hardware were reduced to almost instant activation.
Scalability: Cloud infrastructure can easily scale up or down as needed, providing businesses with the resources they need when they need them. Elastic deploy and autoscale deployment allows Flytxt to handle the workloads from running Map Reduce jobs on EMR, as needed Spot instances , AI on Sagemaker, in the most cost effective and with the highest performance.
Improved security: Using advanced security measures - VPN , WAF , encryption of data at rest and data in transit, using Key Manager, Certificate Manager , Identity Managers, Access Management , Audit trails from IaaS vendors which have helped greatly in reducing the risk of data breaches and cyberattacks. Frequent validation of environment through Security Hub to keep the platform on par with latest security advisories
Enhanced reliability: With multiple availability zones and disaster recovery and backup systems, cloud infrastructure provides a more reliable and available computing environment and helps ace not only strictest customer Business resiliency concerns and also assures a good nights sleep to Flytxt DevOps
Increased agility: Cloud infrastructure enables us to quickly launch new products and services, as well as respond to changing business requirements. CI/CD pipeline with frequent and timely feature and bug fixes, allows us to meet the most demanding needs of our customers in the quickest and shortest possible time
Automatic updates: Flytxt SaaS environment allows software updates to all customers , ensuring that users always have access to the latest features and security patches.
Padmanabha Venkatagiri. S , Konveyor , IBM Research (3:00 - 4:00)
Title: Replatforming applications with Konveyor
Konveyor community provides a suite of open-source tools for modernizing applications through replatforming and refactoring applications. In this talk, a general overview of Konveyor is provided with a specific focus on the replatforming framework. The details of the framework and the capabilities it offers towards automating the creation and transformation of DevOps artifacts of an application for deployment in a Cloud Native environment are discussed. More on the framework could learnt from the following website: https://move2kube.konveyor.io/
Profile: Padmanabha Venkatagiri Seshadri is a Researcher in IBM Research - India. His research focus has been in the areas of cloud-native platform modernization, observability and edge computing. He received his PhD from National University of Singapore in 2014. He is a maintainer of Konveyor Move2Kube.
Wells Fargo (4:30 - 5:30)
Profile: Technology Director at Wells Fargo India limited. Head of Electronic Trading and Banking Technology India. He has over 22 years of experience in Program Management, Technology leadership and Strategy Development in the Capital Markets domain. Subject matter expert in Trading platforms.
Profile:Technology Director at Wells Fargo India limited. Head of Capital Markets Risk Technology India. He has over 24 years of experience in enterprise software development, Technology Leadership & Strategy Development. Subject matter expert in Trading, Risk and Valuation platforms.
Title: Nanosecond level timestamp synchronization using software clock synchronization system and machine learning techniques in Electronic Trading
Abstract – Popular clock synchronization algorithms can only achieve millisecond level of accuracy. Nanosecond-level clock synchronization can be an enabler for time-critical applications in data centers. It can also be achieved by deploying specially designed hardware, throughout the network. This approach does not scale it also requires hardware upgrades and/or special protocols. We will discuss about, an alternate approach, software clock synchronization system. It uses a synchronization network and leverages three key ideas, coded probes, Support Vector Machines and natural network effect to achieve clock synchronization to within 100 nanoseconds. This approach can be successfully leveraged to solve time synchronization issues in Electronic Trading Platforms.
Concluding Note and Memento Presentation
Rupashree Rangaiyengar (5:30 - 5:45)
Rupashree Rangaiyengar is a PhD student at Program- ming Languages Lab, Department of Computer Science and Engineering, Indian Institute of Science , Bangalore. She graduated with a Masters of Engineering in Computer Sci- ence from Cornell University in 2010. Prior to starting PhD, she was a Software Architect with 13 years of experience working in companies like Walmart Labs, VMware, Jivox and Oracle. She has varied experience across all phases of software development life cycle and deep expertise in building scalable and distributed microservices .