Showing posts with label software. Show all posts
Showing posts with label software. Show all posts

Sunday, February 26, 2012

Week 7- Muddy: Software


Week 7 was very muddy for me. A lot of the concepts feel over my head and I have had a hard time wrapping my head around them. Open Source Software (OSS) was one of the main points discussed. OSS is a type of software that is free and available to anyone. The code can also be changed or modified by any person who is looking at it. With potentially thousands of users, this can improve the quality of the program and fix a lot of the bugs found in the software. As found in the text, there are numerous benefits to companies using OSS.

1.       COST- eliminates a cost spent developing their own operating system or licensing; zero marginal costs
2.       RELIABILITY- there are multiple people constantly checking for problems/bugs and improving product quality
3.       SECURITY- problems can be addressed with greater speed and reliability
4.       SCALABILITY- has the ability to handle increasing workloads or to be easily expanded to manage workload increases
5.       AGILITY AND TIME TO MARKET- may be able to skip segments of the development process; allows new products to reach the market faster

A few of the most well-known OSS are Firefox, Open Office, Apache, Linux, & MySQL.

Cloud computing is another type of software that is growing in popularity. Cloud computing replaces computing resources (hardware or software) with services provided over the Internet. Software as a Service (SaaS) is a type of this. SaaS is when a firm subscribed to a 3rd party software replacing service that is delivered online. This could be payroll or distribution costs for vendors and reduced risk of software piracy (because it is free to start with!).  However, there are some risks associated with it.

1.       DEPENDENCE ON A SINGLE VENDOR
2.       CONCERN ABOUT THE LONG TERM VIABILITY OF PARTNER FIRMS
3.       USERS MAY BE FORCED TO MIGRATE TO NEW VERSIONS- possibly incurring unforeseen training costs and shifts in operating procedures
4.       RELIANCE ON A NETWORK CONNECTION- which could be slower, less stable, and less secure
5.       DATA ASSET STORED OFF SITE- could lead to security and legal questions
6.       LIMITED CONFIGURATION, CUSTOMIZATION, AND SYSTEM INTEGRATION OPTIONS
7.       THE USER INTERFACE OF WEB BASED SOFTWARE IS OFTEN LESS SOPHISTICATED AND LACKS THE RICHNESS OF MOST DESKTOP ALTERNATIVES
8.       UNAUTHORIZED IT SUPPORT

Virtualization is described in the textbook as an operating system for an operating system. Basically, it is a type of software that allows a single computer to function as if it were several different computers, each running its own OS and software. It can computing more efficient, cost-effective, and scalable. You take pieces of hardware (ie: CPU, memory, storage) and break them up. Then, you give the piecing to virtual machines who use them as if they were the original whole. You can use this for running several “virtual computers” on a single physical host computer system. This would be a perfect tool for a company who wanted to run OS X and Windows on a Mac computer. 

Virtualization was one of the harder concept for me to wrap my head around. I found this video on Youtube which helps alot!

Sunday, February 19, 2012

Week 6 Clear (Kinda)- Software


Week 6- Somewhat Clear

In Week 6 of ISM3004, we talked about the various types of  software. We use software almost every single time we sit down at our computers, smart phones, or iPad. I am using a type of software right now, through Microsoft Word. For example, Microsoft word is a type of application software (it helps me accomplish a specific task with a specific purpose) The other type of software is known as system software, which enables you to use the hardware. An example of this would be Windows 7 or McAfee Antivirus.
  In this case, the application software is assisting me in completing my weekly blog through a word processor.  The textbook and video lectures described the process of communication as a layer cake. Another way to picture this is a relay race. The baton is passed from runner to runner….

USER--->APPLICATION SOFTWARE-->OPERATING SYSTEM (OS)-->HARDWARE

Each individual components communicates with the other one, allowing a more simplistic approach since each layer is independent. The method in which each layer communicates with the other is called API’s (Application Programming Interface). The operating system provides a common set of controls for managing computer hardware. This makes it easier for users to interact with the computers and for programmers to unite application software.  The consistency of the OS allows everyone to be on the same page and serves as our gateway to the hardware. The analogy Mr. Olson used in the lecture related an OS to a traffic cop.

Furthermore, there are two categories of software: desktop and enterprise. Desktop software is like what I am using now to write this entry (Microsoft Word). It is an application installed on a personal computer that typically supports tasks performed by a single user. Another example is games or a photo editor. Enterprise software is an application that addresses the needs of multiple users throughout an organization or work group. Take for instance, the company of Heinz. “Over 650 million bottles of Heinz ketchup are sold around the world in more than 150 countries.” This of course does not take into account the single serve packets of ketchup that are traditionally found at fast food restaurants. This massive amount of productions, supplies, and the large numbers of workers and vendors that are involved in a year’s worth of work is not something that can be kept in an old fashioned ledger book. They would have to utilize a type of enterprise software to keep track of sales, shipments, and payrolls.

Images allowed for reuse through Creative Commons/Flickr