Hardware are the physical components of the computer system e.g. monitor, keyboard etc. Software is the programs which run on the computer. Two common classifications of software are systems software and applications sofware.
Systems Software - Layers of software which enables users to operate the hardware i.e. software that makes the hardware work e.g. operating system, utility programs, library programs, printer drivers etc. An operating system controls the hardware and software. It is the interface between the user and the hardware. It sits between the application and the hardware. It does tasks such as loading and saving user files, loading and executing applications, managing disk space and memory; checking user passwords and organising printing.
Application software is a program written to perform an end user task. Application software can be sub divided into general purpose and special purpose.
General purpose application software is a program that can be used to provide solutions to specific tasks but are useful in a wide variety of situation. These programs include Word Processing, Spreadsheets, Desk Top Publishers, Presentation Packages, Integrated Packages and Databases. General purpose software are sometimes referred to as Generic Applications or productivity tools.
(Exam Tip: When answering exam questions you should refer to these generic names rather than the product names e.g. Spreadsheets rather than MS Excel).
Special purpose application software packages are written usually in a programming language for a particular purpose i.e. designed to solve a specific task e.g. payroll., stock control, a billing system, a seat booking system.
Bespoke Software - Software that has specifically been written for an organisation i.e. custom made to meet the businesses requirements.
There is a range of types of software, including open source software, bespoke and off-the-shelf.
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.
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.
May be general e.g. Word Processing or specific e.g. Stock Control. You can also purchase an Integrated Package which is a suite of software that are all completely compatible. such as MS Office. It will have no difficulty in importing/exporting data between them and they all have the same feel about them.
Generic Application Software
Word Processing
A teacher preparing worksheets
A sales person writing a report on sales
Desktop Publishing
A teacher preparing a poster to advertise an event such as Sports Day
Presentation Software
A lecturer in University delivering a lecture
Spreadsheets
A treasurer balancing the accounts
CAD (Computer Aided Design)
An architect designing a house
Database
Keeping records of members of a library
Bespoke
Advantages
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.
Disadvantages
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.
Open Source
Open source software is distributed with the source code to help with collaboration and sharing. Open-source software is provided with the source code which can be modified.
The term open source refers to something people can modify and share because its design is publicly accessible.
What is open source software?
Open source software is software with source code that anyone can inspect, modify, and enhance.
"Source code" is the part of software that most computer users don't ever see; it's the code computer programmers can manipulate to change how a piece of software—a "program" or "application"—works. Programmers who have access to a computer program's source code can improve that program by adding features to it or fixing parts that don't always work correctly.
Advantages of Open Source Software
Free to access - The code is available for all to view, debug, rewrite etc.
Can be customised to suit specific need
Large pool of developers so code is stable / fixes are available quickly / · Built using community co-operation
Complexity of licensing reduced e.g. Free License / General Public license
Relaxed / non-existent copyright restrictions
Free from commercial pressures
Frequent integration with other software packages.
Several versions are available
High modularisation - Software modularity is the decomposition of a program into smaller programs with standardised interfaces. You basically allocate different functions to software modules and then implement them in source code.
Disadvantages of Open Source Software
Software was not written specifically for the end user
Often less user-friendly
Modifying open-source software is a specialist skill, which can be costly
Simulators can be used to gain experience of driving cars at high speeds. Police/Firemen/Ambulance Drivers/Rally_Racing Drivers/Test Car Driver/Driving Instructors are all examples of jobs that may be a driving simulator.
Lives are not put in danger or risk
Cheaper as cars are not damaged if there is a crash
Can get experience of high speed chases, emergency situations and braking distances.
Can control the conditions and locations of the drive
All simulators rely on rules built into the controlling software such as:-
Cars take longer to stop on wet roads than on dry roads
The faster the car is travelling, the greater the distance needed to stop.
Cars should stop at traffic lights
Other situations in which computer simulation may be used include:-
Flight simulation to help train a pilot to fly planes
Virtual reality e.g. for entertainment
Financial simulation for predicting the future
Fairground simulation for pleasure/entertainment i.e. to ride a roller coaster
Driving lesson simulation
Global warming weather prediction.