ICT
Computing
Responsive image

2.1 Types of Software

decomposition

2.1 Types of Software


Open Source Software

What is open source?

The term "open source" refers to something people can modify and share because its design is publicly accessible.

The term originated in the context of software development to designate a specific approach to creating computer programs. Today, however, "open source" designates a broader set of values—what we call "the open source way." Open source projects, products, or initiatives embrace and celebrate principles of open exchange, collaborative participation, rapid prototyping, transparency, meritocracy, and community-oriented development.

Click here for more information on open source software

Proprietary/Closed source software

Only the original authors of proprietary software can legally copy, inspect, and alter that software. And in order to use proprietary software, computer users must agree (usually by signing a license displayed the first time they run this software) that they will not do anything with the software that the software's authors have not expressly permitted. Microsoft Office and Adobe Photoshop are examples of proprietary software.

Task

Describe at least two advantages and two disadvantages of open source and closed source software.


Option 1: Off-the-shelf software

Off-the-shelf software is software that is ready-made and available to lots of people. You usually pay a license fee to use it, e.g. Microsoft Office.

The advantages are:

  • Cheaper. The development costs are spread across a large number of users, so you pay much less than it would cost to build the same software from scratch.
  • Available immediately. The development work has already been done, so all you need to do is set up the software and start using it.
  • Lower training costs. If it is a commonly used package, users and I.T. staff may already be familiar with it, saving on learning time and training costs. Or, there may be pre-existing training materials and courses that you can leverage.

  • Community support. If the software is popular, there may be books, articles, forums and online communities offering support and advice to help you learn or resolve any issues.
  • More functionality. Off-the-shelf software often has more functionality, because the developers try to meet the requirements of as many users as possible. (There may even be functionality you didn’t realise you need!)
  • Upgrades. The vendor will continue to develop the software, so you will likely get upgrades for free or at a reduced cost, whereas in bespoke software you don’t get anything new unless you pay for it to be built.

The disadvantages are:

  • Compromise. You may have to compromise on your requirements – it is unlikely you will find ready-made software that does everything you need it to, exactly how you want it to.
  • May be overly complicated. The software may include functionality that you don’t need, as it is trying to meet the different requirements of a number of users. This can make it more difficult to learn and use.
  • You are not in control. The vendor’s plans for the future may not always fit with your own. As a single customer amongst many, you may not be able to get the features you want implemented.

Option 2: Bespoke (custom-made) software

Bespoke software is written especially for you, to meet your specific business requirements.

The advantages are:

  • Tailored to you. The software is developed and built to meet your specific requirements, ensuring that you get software that works exactly how you need it to and delivers the results you want.
  • More flexible. A bespoke system can evolve over time to match your changing requirements.
  • No per-user fees. If you own the software, you won’t have to extra per-user fees as your business grows.
  • Not tied in. You own the intellectual property, so you are not tied to a specific vendor that could potentially disappear at any time.

  • Competitive advantage. As your competitors won’t have the same software, it could give you a competitive edge. An effective software package can make a company work more efficiently, improve their performance and have a positive impact on customer satisfaction levels.

The disadvantages are:

  • Higher initial costs. It will cost more at the beginning, as you have to pay the development costs.
  • Takes longer. Depending on the size and complexity of the software, it may take months or even years to develop.

Shareware

Shareware is a type of proprietary software which is initially provided free of charge to users, who are allowed and encouraged to make and share copies of the program. Shareware is often offered as a download from an Internet website or as a compact disc included with a magazine.

Freeware

Freeware is proprietary software that is available for use at no monetary cost. In other words, freeware may be used without payment but may usually not be modified, re-distributed or reverse-engineered without the author's permission.Two historic examples of freeware include Skype and Adobe Acrobat Reader.

Embedded software

Embedded software is specialized programming in a chip or on firmware in an embedded device to controls its functions.

Hardware makers use embedded software to control the functions of various hardware devices and systems. Embedded software controls device functions in the same way that a computer's operating system controls the function of software applications. Almost any device can contain embedded software - from those so simple you might not imagine they had computer control, like toasters and light bulbs, to complex tracking systems in missiles.

Group Activity

Investigate the types of software that could be used by a new small business, a clothes shop which buys stock from wholesalers and sells to the public online.

Investigate possible software options from each of the software types identified in 2.1 and explain what type of software each is and at least one strength and weakness for each example.

From this, make a final set of recommendations.


Task

Research each of the following application software categories

  1. Productivity software
  2. Development tools
  3. Business Software

Create a table putting the above software applications with the correct category and add an explanation as to why they fit that category


Extension Task



  • Learning Objectives

  • I can explain what open source software is
  • I can explain what closed source software is
  • I can explain what off the shelf software is
  • I can explain what bespoke software is
  • I can explain what shareware is
  • I can explain what freeware is
  • I can explain what embedded software is
  • I can explain the characteristics and uses of the above software