Different Types of Software Systems
A2 Level — Unit 4: Architecture, Data, Communication & Applications
Types of Software Systems
Software systems can be classified by their purpose and the environment in which they operate. At A2 level, you need to understand four main categories.
| Type | Purpose | Examples |
|---|---|---|
| Safety-related systems | Systems where failure could endanger life or cause significant damage | Aircraft autopilot, medical devices, nuclear reactor control |
| Control systems | Systems that manage physical processes using sensors and actuators | Central heating, traffic lights, industrial robots |
| Expert systems | Systems that emulate human expert decision-making in a specific domain | Medical diagnosis, financial planning, fault diagnosis |
| Information exchange systems | Systems for sharing and accessing information | The Internet, intranets, search engines, email |
Safety-Related Systems
Safety-Critical vs Safety-Related
| Term | Definition |
|---|---|
| Safety-critical | Failure could directly cause death, serious injury, or major environmental damage. The system must work correctly. |
| Safety-related | The system contributes to safety but is not the sole means of protection. Failure increases risk but other safeguards may exist. |
Examples of safety-critical systems:
- Aircraft flight control systems
- Medical infusion pumps and ventilators
- Railway signalling systems
- Nuclear reactor shutdown systems
- Automotive braking systems (ABS, autonomous emergency braking)
High Dependability Requirements
Safety-critical systems must meet exceptionally high standards across several properties:
| Property | Description |
|---|---|
| Reliability | The system must operate correctly for extended periods without failure. Often measured as Mean Time Between Failures (MTBF). |
| Availability | The system must be operational and accessible whenever needed. Expressed as a percentage (e.g. 99.999% uptime = ~5 minutes downtime per year). |
| Safety | The system must not cause harm to people or the environment, even in the event of failure. |
| Security | The system must resist deliberate attacks and unauthorised access. |
| Maintainability | The system must be easy to repair and update without compromising safety. |
Techniques for Achieving Dependability
| Technique | Description |
|---|---|
| Redundancy | Duplicate critical components so that if one fails, another takes over. Triple modular redundancy (TMR) uses three systems and a voting mechanism. |
| Fail-safe design | If the system fails, it defaults to a safe state (e.g. traffic lights go to all-red, not all-green). |
| Formal methods | Use mathematical models and proofs to verify that the system meets its specification. Eliminates ambiguity. |
| Diversity | Use different hardware, software, or algorithms for redundant components so a single bug cannot affect all copies. |
| Watchdog timers | A hardware timer that resets the system if the software stops responding (indicating a crash or hang). |
| Defensive programming | Extensive input validation, error handling, and assertions in the code. |
Development of Safety-Critical Systems
Developing safety-critical systems is a specialised field with requirements beyond standard software engineering:
| Aspect | Requirement |
|---|---|
| Standards | Must comply with domain-specific standards (e.g. DO-178C for aviation, IEC 61508 for industrial, ISO 26262 for automotive) |
| Certification | Independent third-party assessment and certification before deployment |
| Documentation | Extensive documentation of requirements, design decisions, test results, and risk assessments |
| Testing | Exhaustive testing including formal verification, simulation, and real-world testing. 100% code coverage may be required. |
| Traceability | Every requirement must be traceable through design, implementation, and testing |
| Review | Multiple levels of peer review, including independent safety assessment |
| Lifecycle | Strict adherence to development lifecycle models with defined review gates |
When discussing safety-critical systems, always mention redundancy, formal methods, fail-safe design, and the need for certification to domain-specific standards. These are the key distinguishing factors from standard software development.
Control Systems
Nature and Scope of Computer Control
A control system uses computers to manage and regulate physical processes. The basic structure involves:
- Sensors measure the current state of the physical process (temperature, pressure, speed, position)
- Processor compares the measured value against the desired value (set point)
- Actuators make physical adjustments based on the processor’s output (open valves, adjust motors, switch heaters)
Open-Loop vs Closed-Loop Control
| Feature | Open-Loop | Closed-Loop |
|---|---|---|
| Feedback | No feedback — output is not measured | Uses feedback — output is measured and compared to the set point |
| Accuracy | Less accurate — cannot correct for disturbances | More accurate — continuously adjusts based on measured error |
| Complexity | Simpler and cheaper | More complex |
| Example | A toaster with a timer (runs for set time regardless of toast colour) | A thermostat (measures temperature and adjusts heating) |
Feedback Loop
The feedback loop in a closed-loop control system works as follows:
- The sensor reads the current value of the controlled variable
- The comparator calculates the error = set point − measured value
- The controller determines the appropriate response based on the error
- The actuator adjusts the physical process
- The cycle repeats continuously
Types of Control Systems
| Type | Description | Examples |
|---|---|---|
| Embedded systems | Computer built into a device to control its operation | Washing machine, microwave, car engine management |
| SCADA | Supervisory Control and Data Acquisition — large-scale industrial control with remote monitoring | Power stations, water treatment, oil pipelines |
| PLCs | Programmable Logic Controllers — rugged industrial computers for real-time control | Manufacturing lines, conveyor systems, robotic arms |
| Real-time systems | Must respond to inputs within guaranteed time limits | ABS braking, pacemakers, air traffic control |
Benefits and Implications of Automation
Benefits:
| Benefit | Description |
|---|---|
| Consistency | Automated processes produce identical results every time, reducing defects |
| Speed | Computers operate faster than humans for repetitive tasks |
| 24/7 operation | Automated systems can run continuously without breaks |
| Dangerous environments | Robots can work in hazardous conditions (radiation, extreme heat, toxic chemicals) |
| Precision | Computer-controlled machines achieve accuracy beyond human capability |
| Cost reduction | Lower long-term labour costs once the initial investment is recovered |
Implications:
| Implication | Description |
|---|---|
| Job displacement | Automation replaces human workers in manufacturing, logistics, and service industries |
| Deskilling | Remaining workers may need fewer skills as machines handle complex tasks |
| Dependency | Over-reliance on automated systems creates vulnerability if they fail |
| Initial cost | High capital investment for equipment, installation, and programming |
| Maintenance | Requires specialised technical staff to maintain and repair automated systems |
| Ethical concerns | Questions about accountability when automated systems cause harm |
| Retraining | Workers displaced by automation need retraining for new roles |
Expert Systems
What is an Expert System?
An expert system is a computer program that emulates the decision-making ability of a human expert in a specific, narrow domain.
An expert system uses a knowledge base of facts and rules, combined with an inference engine, to draw conclusions and provide advice in a specialised domain. It aims to replicate the reasoning of a human expert.
Components of an Expert System
| Component | Function |
|---|---|
| Knowledge base | Stores facts about the domain and IF-THEN rules that represent expert knowledge. For example: IF temperature > 38°C AND cough = persistent THEN suggest = pneumonia (confidence 0.7) |
| Inference engine | The reasoning mechanism. Applies rules to known facts to derive new conclusions. Uses forward chaining (data-driven: start with facts, apply rules to reach a conclusion) or backward chaining (goal-driven: start with a hypothesis, work backwards to find supporting facts). |
| User interface | Allows users to input information (answer questions) and receive advice. Should be clear and accessible to non-experts. |
| Explanation facility | Explains how and why the system reached its conclusion. Essential for user trust and for verifying correctness. |
| Knowledge acquisition facility | Tools for domain experts to add, modify, and validate rules in the knowledge base. |
Expert System Shell
An expert system shell is a generic framework that provides the inference engine, user interface, and explanation facility without any domain-specific knowledge. A knowledge base is then added to create a complete expert system for a particular domain.
Knowledge Acquisition
The process of extracting knowledge from human experts is the knowledge engineering bottleneck:
- Interviews with domain experts
- Observation of experts at work
- Analysis of case studies and documentation
- The knowledge engineer translates expert knowledge into IF-THEN rules
- Challenge: experts often cannot explicitly articulate their reasoning (tacit knowledge)
Effects on Professional Groups
| Professional Group | Effects |
|---|---|
| Doctors | Expert systems can assist with diagnosis, suggest treatments, and flag drug interactions. May improve accuracy but raises concerns about liability and over-reliance. Does not replace clinical judgement. |
| Lawyers | Legal expert systems can search case law, assess case strength, and suggest relevant precedents. Makes legal advice more accessible but cannot handle nuanced interpretation. |
| Financial advisers | Can assess risk profiles and recommend investment portfolios. Democratises financial advice but may not account for unusual circumstances. |
| Engineers | Fault diagnosis systems help identify problems in complex equipment. Speeds up maintenance but requires accurate knowledge base. |
Effects on Wider Community
| Effect | Description |
|---|---|
| Accessibility | Makes expert-level advice available in areas with few human experts (rural healthcare, developing countries) |
| Consistency | Always applies rules the same way — no bad days, bias, or fatigue |
| Cost reduction | Cheaper than consulting a human expert for routine decisions |
| Limitations | Cannot handle situations outside its knowledge base, lacks common sense, cannot learn from experience (traditional systems) |
| Trust | People may over-trust or under-trust automated advice |
When comparing expert systems to human experts, discuss both advantages (consistency, availability, speed, no fatigue) and disadvantages (limited domain, no common sense, difficulty acquiring knowledge, cannot handle novel situations). Always mention the explanation facility — it distinguishes expert systems from black-box AI.
Internet and Intranet
Internet vs Intranet
| Feature | Internet | Intranet |
|---|---|---|
| Access | Public — anyone can connect | Private — restricted to an organisation’s members |
| Scope | Global | Local (within one organisation) |
| Security | Varies widely | Protected by firewalls and access controls |
| Content | General public information | Organisation-specific resources (policies, internal tools, documents) |
| Protocols | TCP/IP, HTTP/HTTPS | Same protocols but within a private network |
How Search Engines Work
Search engines use three main processes to index and retrieve web content:
1. Web Crawling (Spidering)
- Automated programs called web crawlers (or spiders/bots) systematically browse the web
- They follow hyperlinks from page to page, discovering new and updated content
- Crawlers respect
robots.txtfiles that tell them which pages not to crawl - They periodically re-crawl pages to detect changes
2. Indexing
- The crawler sends discovered pages to the indexer
- The indexer analyses the content: words, their positions, headings, links, images, metadata
- An inverted index is built — mapping each word to the list of pages containing it
- This allows fast lookup: given a search term, instantly find all pages containing it
3. Ranking
- When a user searches, the engine retrieves matching pages from the index
- Pages are ranked by relevance using algorithms that consider hundreds of factors
Key ranking factors:
| Factor | Description |
|---|---|
| PageRank | Measures page importance based on the number and quality of links pointing to it. A page linked to by many high-quality pages ranks higher. |
| Content relevance | How well the page content matches the search query (keyword frequency, placement in headings) |
| Freshness | Recently updated content may rank higher for time-sensitive queries |
| User signals | Click-through rates, time spent on page, bounce rate |
| Mobile-friendliness | Pages optimised for mobile devices rank higher in mobile searches |
| Page speed | Faster-loading pages are preferred |
| HTTPS | Secure pages may receive a small ranking boost |
Common Contemporary Applications
| Application | Description | Key Technologies |
|---|---|---|
| E-commerce | Online buying and selling of goods and services | HTTPS, payment gateways, databases, recommendation engines |
| Social media | Platforms for user-generated content and social interaction | Real-time messaging, content delivery networks, AI moderation |
| Cloud computing | On-demand access to computing resources over the Internet | Virtualisation, distributed storage, APIs, pay-as-you-go pricing |
| Internet of Things (IoT) | Network of physical devices with embedded sensors and connectivity | Wireless protocols, edge computing, sensor networks |
| Streaming services | Real-time delivery of audio/video content | Adaptive bitrate streaming, CDNs, compression codecs |
| Online banking | Financial services delivered via the Internet | Encryption, two-factor authentication, secure APIs |
| Telehealth | Remote medical consultations and monitoring | Video conferencing, wearable sensors, electronic health records |
| Remote working | Working from any location using Internet-connected tools | VPNs, collaboration platforms, cloud storage |
Effects on Professional Groups and the Wider Community
Effects on Professional Groups
| Group | Positive Effects | Negative Effects |
|---|---|---|
| Healthcare | Telemedicine reaches remote patients, AI assists diagnosis, electronic records improve coordination | Data security concerns, digital literacy requirements, risk of misdiagnosis via remote consultation |
| Education | Online learning widens access, digital resources enhance teaching, personalised learning | Digital divide excludes some students, screen fatigue, reduced social interaction |
| Legal | Online legal databases speed up research, video conferencing enables remote hearings | Cybercrime creates new legal challenges, jurisdiction issues across borders |
| Journalism | Instant news distribution, citizen journalism, data journalism | Fake news, declining revenue from print, information overload |
| Retail | E-commerce opens global markets, data analytics improves targeting | High street decline, returns and fraud costs, competitive pressure |
Effects on Wider Community
| Area | Effects |
|---|---|
| Communication | Instant global communication via email, messaging, and video calls. But risk of isolation from excessive screen time. |
| Information access | Vast information freely available. But reliability varies — misinformation spreads easily. |
| Employment | New job types created (content creators, app developers). But traditional roles disrupted (retail workers, bank tellers). |
| Privacy | Online activity generates vast data trails. Companies and governments can track behaviour. Data protection laws attempt to balance this. |
| Democracy | Social media enables political engagement and activism. But also enables manipulation through targeted advertising and echo chambers. |
| Culture | Global sharing of cultural content. But risk of cultural homogenisation and dominance of English-language content. |
| Health | Health information and fitness tracking empower individuals. But screen addiction, cyberbullying, and mental health impacts are growing concerns. |
Questions about the effects of the Internet on society require balanced answers. For each positive effect, acknowledge a corresponding concern or drawback. Always consider multiple stakeholders — what benefits one group may disadvantage another. Use specific examples to support your points rather than making general statements.