Development and deployment trends

Slides:



Advertisements
Similar presentations
Computer components Skills: none Concepts: computer components (input devices, output devices, memory, storage and CPU), information flow between them,
Advertisements

Data import and export Skills: none IT concepts: data import and export, common data format This work is licensed under a Creative Commons Attribution-Noncommercial-
Take your CMS to the cloud to lighten the load Brett Pollak Campus Web Office UC San Diego.
Skills: none Concepts: Web client (browser), Web server, network connection, URL, mobile client, protocol This work is licensed under a Creative Commons.
Skills: None Concepts: Text editor versus word processor, information, text file, code, ASCII This work is licensed under a Creative Commons Attribution-Noncommercial-Share.
Skills: none Concepts: data and program files, IP packet, packet header, packet body, IP address, host name This work is licensed under a Creative Commons.
Network applications Skills: none Concepts: client, server, automatic downloading of programs from Web servers, desktop or stand-alone application versus.
Creating hyperlinks with the tag Skills: using the tag IT concepts: tag, attribute This work is licensed under a Creative Commons Attribution-Noncommercial-Share.
Skills: install and use Filezilla Concepts: client-server, file transfer protocol (FTP), portable software, wire-frame user interface diagram, Web site.
Skills: edit, display the history of, discuss, and track changes to a page, wiki technique tips Concepts: Wiki operations This work is licensed under a.
Skills: include images in Web pages Concepts: tag, attribute, value, path (to a stored file) This work is licensed under a Creative Commons Attribution-Noncommercial-Share.
Skills: none Concepts: embedded object, data type (text, audio, video, image), embedded program, evolution of the Web, bit, byte This work is licensed.
Skills: none Concepts: application program interface (API), platform, ecosystem, Internet infrastructure (cloud) services, application development cost.
Skills: create a Twitter account, subscribe to (follow) the class Twitter feed, post tweets Concepts: subscription This work is licensed under a Creative.
Using the Google Docs word processor Skills: getting a Google account, creating a text document and sharing it on the Internet Concepts: stand-alone applications.
Networked application programs Skills: none Concepts: networked versus stand-alone applications, client-server architecture, Web applications versus specialized.
Encoding images Skills: none IT concepts: an image representation code, the number of bits in a code, the amount of information in an image This work is.
Retrieving compound pages This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike 3.0 License. Skills: none IT concepts:
The data link layer Skills: none IT concepts: LAN, medium access, Ethernet and WiFi protocols, why standards win This work is licensed under a Creative.
Many kinds of clients and servers This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike 3.0 License. Skills: none IT concepts:
Operating systems This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike 3.0 License. Skills: none IT concepts: popular.
TCP/IP: the transport layer Skills: none IT concepts: layered protocols, transport layer functions, TCP and UDP protocols, isochronous applications This.
IT skills: IT concepts: Web client (browser), Web server, network connection, URL, mobile client, peer-to- peer application This work is licensed under.
Including images with the img tag Skills: using the img tag IT concepts: none This work is licensed under a Creative Commons Attribution-Noncommercial-
Skills: none Concepts: application development in the batch processing, timesharing, personal computer and Internet eras This work is licensed under a.
Copying Web images (the right mouse button is your friend) Skills: Copy a Web image, see the properties of a Web image, use the right mouse button IT concepts:
The internet layer Skills: None IT concepts: layered protocols, the internet layer, IP protocol, router, dumb (“end-to- end,” “neutral”) networks This.
Skills: none Concepts: application, network versus stand-alone application, client, server, application versus system program This work is licensed under.
Including images in Web pages Skills: use the tag IT concepts: none This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike.
What happens when you retrieve a Web page? This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike 3.0 License. Skills: none.
Creating hyperlinks with the a tag Skills: using the a tag IT concepts: none This work is licensed under a Creative Commons Attribution-Noncommercial-
Background survey This work is licensed under a Creative Commons Attribution-Noncommercial- Share Alike 3.0 License. Skills: none IT concepts: survey service,
Cloud Don McGregor Research Associate MOVES Institute
Duncan Fraiser, Adam Gambrell, Lisa Schalk, Emily Williams
VAP What is a Virtual Application ? A virtual application is an application that has been optimized to run on virtual infrastructure. The application software.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
Skills: deploy a server with applications Concepts: evolution of application development and deployment, virtual server This work is licensed under a Creative.
Skills: none Concepts: research versus product prototypes This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.
Skills: none Concepts: server, blade server, data center, virtual machine, infrastructure as a service, public versus private cloud This work is licensed.
GOOGLE APP ENGINE By Muktadiur Rahman. Contents  Cloud Computing  What is App Engine  Why App Engine  Development with App Engine  Quote & Pricing.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Skills: none Concepts: client, server, service, upload, download, client-server application, Internet, hardware, software This work is licensed under a.
Using the Google Docs word processor Skills: familiarity with Google Docs, creating and sharing text document on the Internet Concepts: stand-alone applications.
Introducing Progress Arcade Roy Ellis
Website Deployment Week 12. Software Engineering Practices Consider the generic process framework – Communication – Planning – Modeling – Construction.
Unit 3 Virtualization.
Create a blog Skills: create, modify and post to a blog
TECHNOLOGY GUIDE THREE
Chapter 21: Cloud Computing and Related Security Issues
HTTP: the hypertext transfer protocol
Chapter 22: Cloud Computing Technology and Security
TECHNOLOGY GUIDE THREE
CNIT131 Internet Basics & Beginning HTML
LoboCloud.unm.edu June 9 – 10, 2016 Presented by
Ping demonstration Skills: use ping
Internet profiles Skills: none
Traceroute demonstration
NAV In The Cloud: Exploring Options for a Cloud-based Deployment
Syllabus – what will we cover?
Google Plus Hangouts on Air
Using a wiki Skills: using a wiki
Cloud Computing: Concepts

What is a wiki? Skills: none
List servers (listservs)
Using Google’s RSS Reader
Skills: microphone position and adjustment
Retrieving compound pages
TECHNOLOGY GUIDE THREE
Presentation transcript:

Development and deployment trends Skills: none Concepts: evolution of application development and deployment, levels of abstraction It has become progressively cheaper and easier to develop applications as we have moved from batch processing to time sharing, the personal computer and now the Internet. The same goes for deploying applications on the Internet. It is now possible to deploy cloud-based servers running applications in minutes and it will be still simpler in the future. This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.

Where does this topic fit? Internet concepts Applications Technology Implications Internet skills Application development Content creation User skills This is a technology topic

Lowering the application development bar Batch processing and time sharing Personal computer Internet There have been several major changes in the way we develop and deliver IT applications. We began with batch processing in the 1950s and progressed to time sharing, personal computers and now the Internet. With each new platform, application development has become easier. You had to be a nerd in the days of batch processing and time sharing, and applications took months or years to build. The personal computer enabled business men and others to develop their own applications. Today, one can develop a complex application like a blog, database or wiki with little effort. For more on the democratization of application development, go to: http://cis275topics.blogspot.com/2011/10/democratization-of-application.html

Lowering the application deployment bar Servers on shelves Servers in datacenters Once developed, an application must be deployed on the Internet, and that is also getting easier and cheaper. In the early days, you needed a computer to run the service and a connection to the Internet. It might have been a personal computer in your bedroom or on a shelf in a server room. If your load grew, you could afford denser server blades in racks, but you were still responsible for maintenance and connectivity. You could take care of the connectivity part by moving your server into a data center, but it was still your server. As personal computer power increased, we were able to borrow a page out of the mainframe book and partition a single physical server into several virtual servers. Amazon and others took care of scaling and connectivity by offering virtual servers in their data centers, but it still took a geek to configure and manage them Today, the level of abstraction is moving still higher and lowering the geek bar. It is possible to deploy a server with installed applications in just a few minutes. Let’s look at an example. Virtual servers in the cloud Servers on blades Virtual servers

Demo server http://larrypress.bitnamiapp.com To demonstrate the ease of deploying applications, I created a virtual machine on the Amazon cloud and installed Web, wiki and blog servers. Visit the server and check the three applications. It only took about ten minutes because I used Bitnami, a service that simplifies deploying a virtual server and installing applications on it. http://larrypress.bitnamiapp.com

Bitnami and others like it are raising the abstraction level. Soon we may be able to describe a virtual machine – its speed, memory and storage – and deploy it and its applications using a form like the one shown here. In addition to specifying the server and its applications, this hypothetical form allows one to select cloud vendors. Today, Bitnami is tied to Amazon’s cloud, but one can imagine making a simple choice of cloud vendors.

The abstraction level could go higher, automating the dynamic allocation of resources needed to run the applications. In that case, one could just pick a vendor and select applications. If that happens, your grandmother will be her own system administrator.

Summary We have seen that both application development and application deployment have become easier with time. This drastically cuts the investment in time and money needed to create and deliver a new application. We demonstrated the creation of a virtual machine with a blog, wiki and Web server. We created it in the Amazon cloud using Bitnami’s packaging service.

Self-study questions Select one of the case studies at: http://aws.amazon.com/solutions/case-studies/ And briefly describe what they did and why they did it. What do people mean when they say applications deployed in the cloud are scalable? If deploying servers and application becomes even easier, do you see any advantages to operating your own server with your data and applications? Explain.

Resources Bitnami: http://bitnami.org Amazon Web services: http://aws.amazon.com/ Video (8:27) demo of server creation and application launching: http://www.youtube.com/watch?v=HqW-05cAUpc Democratization of application development: http://cis275topics.blogspot.com/2011/10/democratization-of-application.html Step by step creation of the server in this presentation: http://cis275topics.blogspot.com/2012/05/deploying-applications-in-cloud.html