Wednesday, January 23, 2019

Advantage and Disadvantage of Cloud Computing

Cloud Computing has following advantages

1. Lower computer costs:
There is no  need of a high-powered and high-priced computer to run cloud computing's web-based applications. Since applications run in the cloud, not on the desktop PC, your desktop PC does not need the processing power or hard disk space demanded by traditional desktop software.

When you are using web-based applications, your PC can be less expensive, with a smaller hard disk, less memory, more efficient processor...

In fact, your PC in this scenario does not even need a CD or DVD drive, as no
software programs have to be loaded and no document files need to be saved.

2. Improved performance:
  
With few large programs hogging your computer's memory, you will see better
performance from your PC.

Computers in a cloud computing system boot and run faster because they have fewer programs and processes loaded into memory.

3. Reduced software costs:
 

Instead of purchasing expensive software applications, you can get most of what you need for free. Most cloud computing applications today, such as the Google Docs suite .Better than paying for similar commercial software . Which alone may be justification for switching to cloud applications .

3. Instant software updates
:

Another advantage to cloud computing is that you are no longer faced with choosing between obsolete software and high upgrade costs.

When the application is web-based, updates happen automatically available the next time you log into the cloud.

When you access a web-based application, you get the latest version without needing to pay for or download an upgrade.

4. Improved document format compatibility. 

You do not have to worry about the documents you create on your machine being compatible with other users' applications or OS. There are less format 
incompatibilities when everyone is sharing documents and applications in the cloud.

5. Unlimited storage capacity
Cloud computing offers virtually limitless storage. Your computer's current 1 Tera Bytes hard drive is small compared to the hundreds of Peta Bytes available in the cloud.

6. Increased data reliability
  
Unlike desktop computing, in which if a hard disk crashes and destroy all your valuable data, a computer crashing in the cloud should not affect the storage of your data. if your personal computer crashes, all your data is still out there in the cloud, still accessible . In a world where few individual desktop PC users back up their data on a regular basis, cloud computing is a data-safe computing platform. For e.g. Drop box, Sky drive

7. Universal information access
  
That is not a problem with cloud computing, because you do not take your
documents with you. Instead, they stay in the cloud, and you can access them whenever you have a computer and an Internet connection . Documents are instantly available from wherever you are.

8. Latest version availability
  
When you edit a document at home, that edited version is what you see when
you access the document at work.The cloud always hosts the latest version of your documents as long as you are connected, you are not in danger of having an outdated version.
 
9. Easier group collaboration
 Sharing documents leads directly to better collaboration. Many users do this as it is an important advantages of cloud computing multiple users can collaborate easily on documents and projects

10. Device independence
  
You are no longer tethered to a single computer or network. Changes to computers, applications and documents follow you through the cloud. Move to a portable device, and your applications and documents are still
available. 



Disadvantage of Cloud Computing

1. Requires a constant internet connection
  
Cloud computing is impossible if you cannot connect to the Internet. Since you use the Internet to connect to both your applications and documents, if you do not have an Internet connection you cannot access anything, even your own documents. A dead Internet connection means no work and in areas where Internet connections are few or inherently unreliable, this could be a deal-breaker.

2. Does not work well with low-speed connections 

Similarly, a low-speed Internet connection, such as that found with dial-up services, makes cloud computing painful at best and often impossible. Web-based applications require a lot of bandwidth to download, as do large documents.Features might be limited . This situation is bound to change, but today many web-based applications simply are not as full-featured as their desktop-based applications.
 e.g. you can do a lot more with Microsoft PowerPoint than with Google
Presentation's web-based offering

3. Can be slow
  
Even with a fast connection, web-based applications can sometimes be slower than accessing a similar software program on your desktop PC. Everything about the program, from the interface to the current document, has to be sent back and forth from your computer to the computers in the cloud. If the cloud servers happen to be backed up at that moment, or if the Internet is having a slow day, you would not get the instantaneous access you might expect from desktop applications.


4. Stored data might not be secured

With cloud computing, all your data is stored on the cloud. The questions is How secure is the cloud? Can unauthorized users gain access to your confidential data ?


5. Stored data can be lost!
 
Theoretically, data stored in the cloud is safe, replicated across multiple machines. But on the off chance that your data goes missing, you have no physical or local backup.


6. High Performance Computer  Systems 

Not clear that you can run compute-intensive High Performance Computer applications that use Message Passing Interface (MPI) / Open MPI . Scheduling is important with this type of application as you want all the Virtual Machine to be co-located to minimize communication latency!

7. General Concerns
  
Each cloud systems uses different protocols and different APIs may not be possible to run applications between cloud based systems . Amazon has created its own DB system (not SQL 92), and work flow system (many popular work flow systems out there) so your normal applications will have to be adapted to execute on these platforms.

 

Monday, January 21, 2019

Software Engineering Post

Hi Guys , here you will find all documents related to Software Engineering Course.

Class Notes For Software Engineering 


https://drive.google.com/open?id=1-X-GMsKNcaV00fTitlpRbW4UUn8BNIKo

Wednesday, January 16, 2019

Cloud Computing : Today Need


Cloud Computing is today need of an Industry . Do you know where your data is stored when you upload data in gmail , dropbox etc . They all goes to cloud .

So first big Question comes in mind is

What is Cloud Computing ?

Cloud computing is a model for  found everywhere , convenient, on-demand network access to a shared pool of configurable computing resources (e.g networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. ”.



In a general way, we can define computing to mean any goal-oriented activity requiring, benefiting from, or creating computers.

What are the benefits of cloud computing ?

1. On-demand self-service :- A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.

2. Broad network access :- Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).

3. Resource pooling :- The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer
demand.


4. Measured Service :- Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be – monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.


 5. Rapid elasticity :- Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.

The other common characteristics of Cloud Computing are

1. Massive Scale
2. Resilient Computing
3. Homogeneity
4. Geographic Distribution
5. Virtualization
6. Service Orientation
7. Low Cost Software
8. Advanced Security

Types of Cloud (Deployment Models)

Private cloud
The cloud infrastructure is operated solely for an organization.
e.g Window Server 'Hyper-V'.

Community cloud
The cloud infrastructure is shared by several organizations and supports a specific goal.

Public cloud
The cloud infrastructure is made available to the general public
e.g Google Doc, Spreadsheet,

Hybrid cloud
The cloud infrastructure is a composition of two or more clouds (private, community, or public)
e.g Cloud Bursting for load balancing between clouds


Cloud Services Models

Software as a Service (SaaS)

1. The capability provided to the consumer is to use the provider’s applications running on a cloud infrastructure. The applications are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email), or a program interface.

2. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings.
e.g: Google Spread Sheet

Cloud Infrastructure as a Service (IaaS)

1. The capability provided to provision processing, storage, networks, and other fundamental computing resources

2. Consumer can deploy and run arbitrary software
e.g: Amazon Web Services and Flexi scale.

Platform as a Service (PaaS)
1. The capability provided to the consumer is to deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages, libraries, services, and tools supported by the
provider.

2. The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, or storage, but has control over the deployed applications and possibly configuration
settings for the application-hosting environment


Behavior Recognition System Based on Convolutional Neural Network

Our this article is on this  research paper .  Credit : Bo YU What we will do ? We build a set of human behavior recognition syste...