• No results found

Using the Cloud to Facilitate Global Software Development Challenges

N/A
N/A
Protected

Academic year: 2021

Share "Using the Cloud to Facilitate Global Software Development Challenges"

Copied!
17
0
0

Loading.... (view fulltext now)

Full text

(1)

Using the Cloud to Facilitate Global Software

Development Challenges

Sajid Ibrahim Hashmi

[email protected]

REMIDI 2011

(2)

Table of Contents

 Context

 Global Software Development (GSD) Challenges

 Research Question

 Objective of the Research

 Research Methodology

 Cloud Computing

 Motive for Using the Cloud for Supporting GSD

 GSD processes as a Service

 GSD Challenges and the Cloud

 Discussion

(3)

Context

• Global software development:

– Entails development of software across

geographically distributed teams

– The motive is to reap business advantages by

ensuring round the clock software development

• Reduce cost in software development projects

• Communication tools and strategies enhance

the options to use a remotely located work force

• Outsourcing software development is becoming

increasingly popular

– But Outsourcing software development to various

destinations is not an easy task

(4)

Global Software Development Challenges

• GSD brings challenges to distributed software

development activities

• Outsourcing software development leads to

different challenges:

– Geographic distance as teams are dispersed across

countries

– People work in different time zones

– Understanding of different cultural practices

– Team members speak different languages

(5)

Global Software Development Challenges

Collaboration

Challenges

Issues Negative Impact on Software Project

Facilitating GSD Using Services (SOA/Cloud )

Geographic Distance Time Knowledge transfer Tools Communication gaps Project Delays

Ambiguity on technical aspects Unequal quality levels across the sites

Dynamic binding, runtime adaptation, and timely availability of required services could help dealing with geographic issues. Also, availability of SaaS could diminish installation overheads

Cultural Unequal distribution of work Lack of Trust Fear Increase in cost

Poor skill management Reporting problems

Service could maintain a fair distribution of work between the teams. Only a specific person will be responsible for the task assigned to

Linguistics

Frequency of communication Knowledge transfer

Loss in project quality

Invisibility on project development Ineffective project management

Run time evolution of services can meet with the linguistic issues. Also, isolation of each task and related information as a service can ensure right level of knowledge transfer Temporal Lack of Motivation Less visibility Risk

Loss in Project Quality Poor management of configuration

Chances of project artifact loss

Services maintain a registry where all of them are stored. Also, a cloud maintains inventory of services. This attribute could be used to store and retrieve configurations

(6)

Research Question

• Is it possible to support collaboration in GSD using Service

Oriented Architecture (SOA) and cloud computing?

• As a Process (Implications for the GSD business model)

• As a Product (It is developed run and distributed globally)

• For this purpose, we suggest making use of cloud

computing paradigm

• The goal is to enhance the usefulness of GSD using the

cloud services

• The data in the cloud is accessed through services, we

study its usefulness in the light of SOA

• We argue that GSD challenges can be addressed using

different types of cloud computing realizations

(7)

Objective of the Research

• The research proposes the development of GSD

process activities using the cloud services

• We discuss how the GSD process can be aligned

with SOA

• How GSD products can be implemented using

services

• Although some web tools support GSD

communication processes but the question

remains

– How GSD processes can work better by making use of

service oriented environment?

(8)

Research Methodology

• Our literature review studied the characteristics

of services (both SOA and the cloud)

• GSD challenges were identified

• A workshop was held by Lero, VUA, PoliMi, the

attendees had research expertise in GSD and SOA

– We developed the proposed concept through

interactive discussion and brainstorming

– We investigated the potential of SOA based cloud

services to address GSD challenges

(9)

Cloud Computing

• Cloud computing is a computing paradigm in

which both hardware and software resources

are provided on demand.

• It has the following representations:

– IaaS (Infrastructure as a service)

– PaaS (Platform as a Service)

– SaaS (Software as a Service)

• The cloud paradigm is famous for its flexibility,

scalability, independence, and reduced cost

(10)

Supporting Characteristics of the Cloud

Computing

Virtualization

Because of the virtualization technique, physical resources can be shared among all users and there is efficient resource management which can provide higher resource utilization and on-demand scalability.

Reduced Cost Cloud computing not only reduces cost of usage of resources but also reduces maintenance cost of resources for the users

Scalability Cloud computing can support on-demand scalability. An application with occasional demand for higher resources will pay for the higher resources only the time it is used instead of leasing all the resources from the very beginning in anticipation of future need

Infrastructure Cloud infrastructure can support multiple protocols and change in business model for applications more rapidly

Performance It can also handle increased performance requirements like service scaling, response time, and availability of the application, as the cloud infrastructure is a huge pool of resources like servers, storage and network and provide elasticity of growth to the end users

Multi tenancy support

With the ability to cater multiple clients with shared resources, applications in the form of services (can) run on these clouds

(11)

Motive for Using the Cloud Services for

Supporting GSD

• Standard procedures cannot scale up to support

dynamism

• Similar ideology posed by both SOA and GSD; e.g.

coordination, context, and execution monitoring

• Our thesis is that GSD challenges can be overcome

through SOA support

– To increase interoperability, diversification, and business

and technology alignment

– to improve the collective effectiveness of the enterprises

participating in globally distributed projects

(12)

GSD Processes as a Service

• Figure illustrates the concept of using the

cloud paradigm to support GSD

• The idea is to reduce the challenges caused by

global distance

(13)

GSD Challenges and the Cloud

Coordination

• Coordination requires interaction among sequence of operations

but Geographic distance negatively affects the ability to coordinate

• Cloud services may ensure interactions among different activities

• In Services, interaction between the service provider and the

consumer is independent of the geographic distance

• It can allow resources sharing not only for infrastructure but also

software resources

– IaaS can provide GSD teams with resources such as computing power

and storage provisioning to store project related data

– Software resources may consist of application systems and database

servers

– Application resources can assist in providing SaaS with necessary

interfaces that can facilitate collaboration and sharing of information

(14)

GSD Challenges and the Cloud

Collaboration

• Geographic distance affects the ability to

collaborate. Communication and collaboration

declines as the distance increases

• Cloud service based collaboration is likely to

diminish the deficiency caused by distance

– Business process can facilitate the optimization of

over all software development

– The services involved in a business can change with

the change in the associated business in terms of

requirements

(15)

GSD Challenges and the Cloud

Geographic Distance

• Distance removes the opportunity for face to face

communication

• The philosophy of the cloud paradigm is to facilitate a

pool of shared hardware & software resources

– PaaS can provide a development platform to assist

development and hosting on the cloud

– It does not require any kind of software downloads and

installations

– Services become part of GSD processes being provided by

the outsourcing organizations

(16)

Discussion Points

• The concept of different cloud representations

continues to be subject to evolution

• Determining different functional needs of the

GSD users

• Availability and subscription of the cloud services

because of different types of their dependency

relationship

• The right level of abstraction for project

knowledge transfer across global software

development sites

(17)

The research leading to these results has received funding from the

European Community’s Seventh Framework Programme

FP7/2007-2013 under grant agreement 215483 (S-Cube). It was supported, in

part, by Science Foundation Ireland grant 10/CE/I1855 to Lero – the

Irish Software Engineering Research Centre (www.lero.ie), and a

Higher Education Authority grant PRTLI 4 to the Lero Graduate School

in Software Engineering.

References

Related documents

Based on this understanding, this work focuses on the effect of the inclusion of shallow donor dopant such as gallium into the normal cadmium chloride post-growth treatment as

As a UX designer you’ll be front and centre of the digital design world simply because these days, it’s not enough to just design a website or an app or any other digital asset,

Three Major Layers of IT Cloud Services Cloud Applications (Apps-as-a-service) Cloud (Application) Platforms (Platform-as-a-Service) Cloud Infrastructure

Whilst I couldn’t identify with his circumstances, I really felt like Charlie was in a difficult situation which has made things hard on him. I really felt his sense of

Disease is indicated by the 6' Cusp, 6th house, planets in the constellation of the occupants of the 6th house, the occupants of the &I' house, the planets in the constellation

I have found is to work up to a heavy rep range and test your maximal strength capacity then, drop weight and push your muscular endurance.. There are several reasons this works,

‘Delivering Change in the Higher Education Sector’, Higher Education Leadership Conference, Dublin.. This Presentation is brought to you for free and open access by the Centre

Constituents: Glycerides of;  Palmitic acid  Stearic acid  Arachidic acid  Oleic acid  Linoleic acid  Linolenic acid Uses:  Nutritive SUNFLOWER OIL