cloud computing from a software engineering perspective

12
CLOUD COMPUTING FROM A SOFTWARE ENGINEERING PERSPECTIVE Danilo Ardagna, Elisabetta Di Nitto { ardagna,dinitto}@elet.polimi.it

Upload: heinz

Post on 22-Feb-2016

40 views

Category:

Documents


0 download

DESCRIPTION

Cloud Computing from a Software Engineering Perspective . Danilo Ardagna, Elisabetta Di Nitto { ardagna,dinitto}@elet.polimi.it. What is Cloud Computing?. A coherent , large-scale , publicly accessible collection of compute, storage , and networking resources - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Cloud Computing from a Software Engineering Perspective

CLOUD COMPUTING FROM A SOFTWARE ENGINEERING PERSPECTIVE

Danilo Ardagna, Elisabetta Di Nitto{ardagna,dinitto}@elet.polimi.it

Page 2: Cloud Computing from a Software Engineering Perspective

What is Cloud Computing?• A coherent, large-scale, publicly accessible collection of compute, storage, and networking resources

• Available via Web service calls through the Internet

• Short- or long-term access on a pay per use basis

Page 3: Cloud Computing from a Software Engineering Perspective

Motivation for Cloud Computing• Internet-based service provisioning

• Provision is usually overestimated to deal with usage peaks• Peaks are rare and relatively short • Estimates indicate that data centers only use about 10-15% of their capacity

• Over-provisioning is expensive• Electricity and cooling costs for low demand servers• High personnel costs for managing and maintaining the physical

and hardware infrastructure

Page 4: Cloud Computing from a Software Engineering Perspective

Motivation for Cloud Computing• Application deployment is non-trivial

• Need to configure hardware, OS, network, storage devices, and install all the required application software (web server, application server, DBMS)

• Global financial crisis• Cloud computing as a cost-effective alternative to cut down IT

costs

Page 5: Cloud Computing from a Software Engineering Perspective

Motivation for Cloud Computing• Increasing market and public interest

• Merryl Lynch estimates a cloud computing market of US$160 billion in 2011

• Gartner estimates that in 2011 75% of all software services will use some type of cloud infrastructure

Page 6: Cloud Computing from a Software Engineering Perspective

From the software engineering perspective

• An attractive deployment and operation solution

• Cloud computing offers specific programming features that may influence the way software is developed

Page 7: Cloud Computing from a Software Engineering Perspective

Course objectives• Introduce the concepts of Cloud computing

• Overview existing approaches and techniques, and provide guidelines for their usage in all phases of software lifecycle

Page 8: Cloud Computing from a Software Engineering Perspective

Content overview• Introduction to Cloud Computing

• Deploying Infrastructure as a Service (IaaS)

• Delivering Platform as a Service (PaaS)

• Relevant Software as a Service (SaaS) examples (Google and Facebook)

• Industrial seminars (we are inviting IBM, Microsoft, GoGrid)

Page 9: Cloud Computing from a Software Engineering Perspective

Exam• Evaluation mainly based on a

project

• Groups: 4-5 graduate students, possibly, supervised by a PhD Student

• Peer reviewed paper

• Project presentation

Page 10: Cloud Computing from a Software Engineering Perspective

Projects• We will ask the industrial speakers to propose two-three

projects

• Projects proposed by us• Monitoring: extending d and j-Cloud• Deploying an application on IBM IaaS infrastructure and on Amazon:

what is the difference?• Data management in the Cloud• SOA vs. Cloud• QoS specification at multiple level of

abstractions• Advanced Cloud patterns…

• You can propose projects if you wish!

Page 11: Cloud Computing from a Software Engineering Perspective

Course schedule• Lectures in May, from May 2nd to May 30th

• Monday 14.30-16.00• Wednesday 14.30-16.00• Last lecture June the 11th 14.30-16.00• Schedule of lectures is sharp (academic quarters already counted in

the schedule)!

• Projects will be assigned by the end of the second week of course (but the sooner the better)

• Project papers to be submitted by June 11th • Review process between June 12th and June 26th • Final project presentations and evaluations by the first half of

July

Page 12: Cloud Computing from a Software Engineering Perspective

Any questions?