Subject |
account for |
gather |
sell on |
customise |
redesign after |
have concerns |
is a subtopic of |
modify |
replace by |
perform functions |
use by |
have global development effort |
have purpose |
have concern |
run |
is a synonym of |
have example |
make |
contract-out to |
upgrade by |
have global CPU usage |
created by |
develop for |
develop |
work |
have design issue |
use |
perform |
meet |
have |
have global number of copies |
has definition |
be |
bad software | | | | | | | 1.1 - The Nature of Software | | | | | | | | | | | | | | | an inadequately trained software developer | | | | | | | | a poor design and is steadily becoming worse | | | poorly designed |
custom software | | | | | | | 1.1 - The Nature of Software | | | | only a few people | high | | | | | web sites, air-traffic control systems and software for managing the finances of large organizations | generic but this can be a complex process if the software was not designed in a flexible way | a consulting company | | low | | a particular customer | in-house | | | | | | a poor design and is steadily becoming worse | low | Software that is developed to meet the specific needs of a particular customer (in contrast to generic software) | what most software developers work on |
data processing software | | data together in batches to be processed at a later time | | | | - accuracy of the data
- security of the data
- privacy of the information gathered about people
| 1.1 - The Nature of Software | | | recording sales, managing accounts, printing bills etc. | | | | | | | | | | | | | | | | how to organize the data and provide useful information to the users so they can perform their work effectively | to run businesses | | | a poor design and is steadily becoming worse | | Software used for running businesses, managing data such as payroll, purchases, sales, product inventory etc. | more reliable if it has fewer failures |
embedded software | the bulk of software copies in existence | | | | | | 1.1 - The Nature of Software | | the user without replacing the hardware | | | low | | | hardware devices such as washing machines, VCRs, microwave ovens, or cars | | | | | the user without replacing the hardware | medium | | | | | | | | | hard real-time characteristics and will fail completely if their real-time constraints are not met | high | Software that is designed to run specific hardware devices, and thus is embedded in the devices, usually in a form of read-only memory (ROM) | more reliable if it has fewer failures |
generic software | most of the software running today on general-purpose computers such as PCs; for example word processors, spreadsheets and games | | the open market | but when a new release of the generic software is issued, the customization work may have to be re-done | | | 1.1 - The Nature of Software | | | | the business world instead of custom software because it can be far cheaper and more reliable | medium | | | | shrink-wrapped software | word processors, spreadsheets, compilers, web browsers, operating systems, computer games and accounting packages for small businesses | | | | high | | potential customers | | | | | functions on general-purpose computers that many people need | an organization's specific needs | soft real-time characteristics: when timing constraints are not met, such systems merely becomes sluggish to use | medium | Software designed to be sold on the open market and to perform functions on general-purpose computers that many people need (in contrast to custom software) | cheaper and more reliable than custom software |
good software | | | | | | | 1.1 - The Nature of Software | | | | | | | | | | | | | | | | | | | | | | | a poor design and is steadily becoming worse | | | more reliable if it has fewer failures |
modified software | | | | | many changes to it have caused it to deteriorate significantly | | 1.1 - The Nature of Software | | | | | | | | | | | | | | | | | | | | | | | a poor design and is steadily becoming worse | | | more reliable if it has fewer failures |
real-time software | | | | | | | 10.5 - Defects in Timing and Co-Ordination: Deadlock, Livelocks and Critical Races | | | | | | to operate special-purpose hardware such as embedded systems, industrial plants and telephone networks | safety | | | | | | | | | | | | responsiveness | | | | a poor design and is steadily becoming worse | | Software that must react immediately to stimuli from the environment | more reliable if it has fewer failures |