1.2.2 Applications Generation
No description yet. This curated deck is ready for daily study.
Card preview (24)
Define application software
Application software allows the user to solve a problem / complete a task
Define a generic application
Generic applications can be utilised for a variety of tasks and to meet a variety of needs. They are often also capable of completing functions best served by specific applications, but, usually, in a more simplistic, or less practical, form. They are the most commonly utilised and installed products. e.g. word processors, presentation software
Define a specific application
Specific applications are highly bespoke, generally being the best way to complete a specific task, while having little purpose outside of that function. They tend to only be installed on systems where there is a direct need. e.g. Database software
Name the different types of application software
• Word processors e.g. Google Docs • Desktop Publishing Software (DTP) e.g. Publisher • Spreadsheet software • Database management software e.g. Oracle • Presentation software • Video editing software • Graphics/image editing software e.g. Photoshop • Text and voice communication software e.g. Skype or WhatsApp • Social networking software e.g. Facebook • Email clients • Web browsers • Games
Define utility software
Utility software is designed to maintain a computer system
Describe disk defragmentation utility software
Disk Defragmentation rearranges the contents of a hard disk drive, putting fragments of files and free space together. This reduces the movement of the read/write head across the surface of the disk, enabling files to be accessed faster.
Describe file management utility software
File management software enables the organisation of data into files and folders on a computer, enabling the user to have easy, understandable access to their data. File repair software can also be downloaded in order to correct issues that cause a file to become corrupt or damaged.
Describe device driver utility software
Device driver software enables the operating system and peripheral’s to communicate with one another, allowing a user to utilise peripheral devices.
Describe system cleanup utility software
System clean-up software can be used to locate unused or duplicate files that may be taking up unnecessary storage space and then delete them, keeping the user’s system free of redundant files.
Describe anti-malware utility software
Anti-malware finds and removes or quarantines malware, in order to protect the computer and its files.
Describe compression utility software
Compression reduces the size of a file so that it takes up less of the computer’s storage space and downloads faster over the internet.
Describe backup utility software
Backup software makes copies of files so that, in the event of in incident such a power failure or malicious attack, a user’s files can be recovered.
Define open source software
Software where the source code is freely available to edit.
What are the benefits of open source software to users and creators?
Users: - Software is generally free to use - Uses can edit the source code to modify the software to best suit their needs - The source code being released allows the community to provide support (through fixing errors or providing modified forms of the software) Creators: - Gets their software out to a wider community, who can develop on their ideas
What are the drawbacks of open source software to users and creators?
Users: - Creator isn’t obliged to provide support so, without a large community, there may be little support available or security fixes are slow - Contributors to the software may not be professional, and volunteer developers could have malicious intentions, potentially leading to lower security, frequent errors or malware in code - In an organisation, they may have to pay for staff training if the software is non-standard Creators: - Little-to-no financial gain - Their source code can be redistributed with someone claiming it as their own or financially gaining from it
Define closed source software
Software which cannot be modified by users because the source code is protected by the Copyright Design and Patents Act and is therefore not released to users.
What are the benefits of closed source software to users and creators?
Users: - If the software is paid it usually comes with some level of support directly from developers - Professionally developed by a closed-team of developers who work under tighter standards, which lessens the likelihood of frequent errors occurring - As developers are paid to fix errors, security fixes are usually addressed quickly Creators: - They (generally) receive an income for their product - The source code cannot be redistributed
What are the drawbacks of closed source software to users and creators?
Users: - Can cost money or involve an ongoing subscription fee - Users can’t modify the software to suit their specific needs Creators: - Developers may receive demand from community for more features or improvements - The cost/lack of available source code may encourage piracy
Define the purpose of a translator
Translators convert high-level or assembly code to machine code
Describe a compiler
Compilers translate source code from high-level languages into object code and then machine code. The whole program is translated into machine code before its run. All errors are reported back at the end of compilation. It creates an executable file for re-use.
What are the benefits of using a compiler?
• No need for a translator at run-time • Speed of program execution is faster than interpreter • Compilers usually optimise code, enabling them to run quicker and take up less memory space • The production of an executable file means that source code is kept secret
What are the drawbacks of using a compiler?
• Source code is easier to write in a high-level language, but the program will not run with syntax errors, which can make it more difficult to write the code • If changes need to be made, the whole program must be recompiled • Designed for a specific type of processor, so once the compiler has produced machine code the compiled code is specific to a particular processor and OS
Describe an interpreter
An interpreter translates source code from high-level languages into machine code. The program is translated line-by-line as it’s running. It stops and produces an error if a line contains an error. The program needs to be translated each time it’s run.
What are the benefits of using an interpreter?
• Easy to write source code, as the program will always run, stopping when it finds a syntax error • Code does not need to be recompiled when code is changed • It is easy to try out commands when the program has paused after finding an error — this makes interpreted languages very easy for beginner programmers to learn to write and code • Interpreted code is more portable than compiled code as it can be executed on a range of platforms, as long as the right interpreter is available These features make interpreters useful for testing sections of code and pinpointing errors, as time is not wasted compiling the entire program before it has been fully debugged