Computer Science  ·  Level 6
Networking And Distributed Systems
Chapter 2: Distributed systems architectures
📚 4 Topics
⚑ What you will be able to do

By the end of this chapter, you will be able to: - correctly select and create distributed architectures for different distributed systems, - accurately apply architectural styles when designing distributed systems, - appropriately use classifications of distributed system architectures in your projects, - thoroughly analyze the architecture requirements of a simulated site for distributed systems.

Mastering these skills will help you build reliable and efficient distributed systems that meet real-world business needs.

2.1 Distributed Architecture

Distributed architecture is the structural design that enables multiple independent computers to communicate and coordinate their actions by passing messages. This architecture supports system scalability, fault tolerance, and resource sharing, which are critical in Kenyan enterprises such as national banks, universities, and healthcare management systems.

2.1.1 Definition of Distributed Architecture

Distributed architecture refers to a computing environment where system components located on networked computers communicate and coordinate their actions to achieve a common objective. Unlike centralized systems, distributed architectures decentralize processing, storage, and control across multiple nodes, improving performance and resilience.

Characteristics of Distributed Architecture

  • Decentralization: System components operate on different machines, eliminating single points of failure and allowing parallel processing.
  • Concurrency: Multiple processes run simultaneously across nodes, increasing throughput and responsiveness.
  • Scalability: New nodes can be added with minimal disruption, enabling systems to handle growing workloads.
  • Fault tolerance: Failure of one node does not halt the entire system, as tasks can be redistributed.
  • Transparency: Users perceive the system as a single coherent unit despite its distributed nature.

In Kenya, distributed architecture underpins services such as mobile money platforms where transactions are processed concurrently across different servers, ensuring availability and speed.

2.1.2 Application of Distributed Architecture

Distributed architectures are applied in various domains, especially where reliability, scalability, and resource sharing are essential. Kenyan organizations leverage this architecture to enhance service delivery and operational efficiency.

Key Applications

  • Cloud Computing Services: Institutions like universities host learning management systems on distributed cloud servers, ensuring uptime and accessibility for students nationwide.
  • Banking Systems: Banks such as Equity Bank deploy distributed architectures to manage transaction processing across branches, enabling real-time updates and fraud detection.
  • Healthcare Information Systems: County hospitals implement distributed systems to share patient records securely across departments, improving diagnosis and treatment coordination.
  • E-Government Solutions: County government offices use distributed architectures to decentralize service delivery, enabling local access points while maintaining centralized data control.
  • Telecommunication Networks: Mobile service providers use distributed architectures to balance loads and maintain network reliability across Kenya.

These applications demonstrate how distributed architectures meet Kenya’s demand for scalable, reliable, and accessible computing services.

Practice Questions

  1. Define distributed architecture and explain its key characteristics in the context of Kenyan ICT systems. (10 marks)
  2. Describe three applications of distributed architecture in Kenyan public or private sector organizations and explain their benefits. (15 marks)
The rest of this chapter
🔒

Create a free account to open more of this chapter.

Free: practical guides, quick cards, workplace scenarios and more.

Create a free account
🔒2.2 Architecture Styles

Distributed systems can be implemented using various architecture styles, each with unique structural and interaction patterns. These styles guide system designers in organizing components and communication to meet specific requirements such as modularity, sca…

🔒2.3 Types of Distributed System Architectures

Distributed system architectures describe how multiple computers or nodes collaborate to perform tasks and share resources. In Kenya's growing IT sector, understanding these architectures helps software engineers and network administrators design systems that…

🔒2.4 Specifying distributed system architecture requirements for a simulated site

In designing a distributed system for a simulated site, computer science professionals in Kenya must understand the architectural requirements that define how components interact, communicate, and operate across the network. This is crucial for applications su…

🔒3 Distributed processing and file management

Distributed processing and file management are critical in ensuring efficient resource utilization and data consistency across distributed systems. Kenyan organizations such as hospitals and banks rely on distributed processing to handle large volumes of trans…

Chapter Summary

This chapter introduced the concept of distributed architecture, explaining its definition and practical applications in various computing environments. It examined different architecture styles, including layered, object-based, and data-centred architectures, each offering unique approaches to organizing distributed systems. The discussion then moved to types of distributed system architectures, highlighting centralized, decentralized, and hybrid models that determine how system components interact and share resources. Furthermore, the chapter addressed the process of specifying requirements for a distributed system architecture in a simulated site, emphasizing the importance of selecting an appropriate architecture style and system type. Overall, the chapter provided a comprehensive overview of how distributed systems are structured and tailored to meet specific operational needs.

Self-Assessment

🔒 PDFDownload this self-assessment, with answers

A. Written Assessment

  1. What is the primary characteristic that distinguishes a distributed system from a centralized system? (2 marks)
  2. Identify two key benefits of using a layered architecture in distributed systems. (3 marks)
🔒20 more in this section.

Chapter Examination Questions

🔒 PDFDownload these examination questions, with worked answers

SECTION A (40 Marks) - Answer ALL Questions

  1. Define a distributed architecture and explain its significance in modern computer systems used by Kenyan banks such as KCB. (4 marks)
  2. Identify two key applications of distributed architectures in public service institutions in Kenya. (4 marks)
🔒18 more in this section.

Chapter Practical Activities

Practical 1: Setup and Demonstration of a Simple Distributed System Architecture

Computer Science · Level 6
Networking And Distributed Systems
PRACTICAL ASSESSMENT
TIME: 4 HOURS
⬇ PDFCandidate Instructions (Candidate Tool)

Type: Pairs

INSTRUCTIONS TO CANDIDATE:
1.  You are required to perform the following task:
i.  Configure and demonstrate a peer-to-peer distributed system between two computers with IP addresses 192.168.10.10 and 192.168.10.20, subnet mask 255.255.255.0, connected via a 2-meter Cat6 Ethernet cable.
2.  You have been provided with the following resources for the practical task:
Tools & EquipmentMaterials
RJ45 crimping toolCat6 Ethernet cable
Cable testerRJ45 connectors
Masking tape / LabelsWorking computers with Windows 10 OS
Plain papers
⬇ PDFResources Required (Cutting List)
S/NItemQuantity
1Cat6 Ethernet cable2 x 2 meters per Candidate Pair
2RJ45 connectors4 Pcs per Candidate Pair
3RJ45 crimping tool1 Pc per 2 Candidates
4Cable tester1 Pc per 2 Candidates
5Working computers with Windows 10 OS2 per Candidate Pair
6Masking tape / Labels5 Pcs per Candidate Pair
7Plain papers5 sheets per Candidate
⬇ PDFAssessor Guide
Items to be EvaluatedMarks AvailableMarks ObtainedComments
TASK 1: Cable Preparation and Testing
Observed computer laboratory rules and safety procedures
(Award 2 marks or 0)
2
Prepared Cat6 Ethernet cable by unsheathing and cutting to 2 meters
(Award 3 marks or 0)
3
Terminated both ends of the cable with RJ45 connectors using T568B wiring standard
(Award 3 marks for each correctly terminated end or 0)
6
Tested the cable using a cable tester and confirmed continuity
(Award 3 marks or 0)
3
Sub-Total14
TASK 2: Network Configuration and Setup
Set computer names to DISTSYS1 and DISTSYS2 respectively
(Award 2 marks for both computers correctly named or 0)
2
Configured IPv4 address and subnet mask on DISTSYS1 as 192.168.10.10 / 255.255.255.0
(Award 3 marks or 0)
3
Configured IPv4 address and subnet mask on DISTSYS2 as 192.168.10.20 / 255.255.255.0
(Award 3 marks or 0)
3
Verified network connectivity between DISTSYS1 and DISTSYS2 using the PING utility
(Award 4 marks or 0)
4
Sub-Total12
TASK 3: Shared Folder Setup and File Operations
Shared the 'DistributedDocs' folder on DISTSYS1 with read/write permissions
(Award 3 marks or 0)
3
Shared the 'DistributedDocs' folder on DISTSYS2 with read/write permissions
(Award 3 marks or 0)
3
Created a text file named 'Test1.txt' inside the shared folder on DISTSYS1
(Award 3 marks or 0)
3
Accessed and modified 'Test1.txt' from DISTSYS2
(Award 3 marks or 0)
3
Verified ability to create, modify, and delete files within the shared folders from both computers
(Award 3 marks or 0)
3
Sub-Total15
TASK 4: Password Security and Network Traffic Capture
Created strong passwords for user accounts on DISTSYS1 (includes uppercase, lowercase, numbers, symbols)
(Award 4 marks or 0)
4
Created strong passwords for user accounts on DISTSYS2 (includes uppercase, lowercase, numbers, symbols)
(Award 4 marks or 0)
4
Verified password strength compliance on both computers
(Award 3 marks or 0)
3
Launched Wireshark software on DISTSYS1 and selected the correct active network interface
(Award 2 marks for launch and 2 marks for correct interface)
4
Captured network traffic for approximately one minute and saved a screenshot on the desktop
(Award 4 marks for capture and 2 marks for screenshot)
6
Sub-Total21
PRODUCT CHECKLIST
Verified IP addresses and subnet masks configured as specified (192.168.10.10/255.255.255.0 and 192.168.10.20/255.255.255.0)
(Award 4 marks or 0)
4
Confirmed cable length is 2000 mm ± 10 mm with proper RJ45 termination
(Award 3 marks or 0)
3
Checked shared folders have correct permissions and are accessible from both computers
(Award 4 marks or 0)
4
Validated strong password criteria compliance (uppercase, lowercase, numbers, symbols) on both user accounts
(Award 3 marks or 0)
3
Verified network traffic capture file is saved and screenshot is clear on DISTSYS1 desktop
(Award 4 marks or 0)
4
Sub-Total18
GRAND TOTAL80
ASSESSMENT OUTCOME:   ☐ Competent    ☐ Not Yet Competent (competent if at least 50%)

Practical 2: Design a Layered Architecture Model for a Distributed Library Management System

Computer Science · Level 6
Networking And Distributed Systems
PRACTICAL ASSESSMENT
TIME: 4 HOURS
⬇ PDFCandidate Instructions (Candidate Tool)

Type: Individual

INSTRUCTIONS TO CANDIDATE:
1.  You are required to perform the following task:
i.  Design and sketch a layered architecture model for a distributed library management system illustrating 4 layers and their interactions on A4 paper sized 297mm x 210mm.
2.  You have been provided with the following resources for the practical task:
Tools & EquipmentMaterials
PencilPlain A4 papers
Ruler
Colored pens
⬇ PDFResources Required (Cutting List)
S/NItemQuantity
1Plain A4 papers5 Pcs per Candidate
2Pencils and Erasers1 set per Candidate
3Rulers 30cm1 Pc per Candidate
4Colored pens (Blue, Red, Black)3 Pcs per Candidate
⬇ PDFAssessor Guide
Items to be EvaluatedMarks AvailableMarks ObtainedComments
TASK 1: Preparation and Sketching
Observed laboratory rules including use of PPE and clean workspace
(Award 2 marks or 0)
2
Prepared drawing area on A4 paper correctly with margins
(Award 2 marks or 0)
2
Sketched four distinct layers labeled correctly (Presentation, Application, Middleware, Data)
(Award 1.5 marks per correct layer, else 0)
6
Used appropriate symbols or boxes to represent components within each layer
(Award 4 marks or 0)
4
Drew arrows indicating data flow and interaction between layers
(Award 4 marks or 0)
4
Used colored pens effectively to distinguish layers and connections
(Award 2 marks or 0)
2
Sub-Total20
TASK 2: Explanation and Justification
Explained the function of each layer clearly
(Award 4 marks or 0)
4
Justified choice of layered architecture style for the distributed system
(Award 3 marks or 0)
3
Described interactions and data flow between layers
(Award 3 marks or 0)
3
Sub-Total10
PRODUCT CHECKLIST
Layered architecture model drawn on A4 paper sized 297mm (height) x 210mm (width)
(Award 4 marks or 0)
4
All four layers clearly labeled and correctly positioned
(Award 4 marks or 0)
4
Correct representation of inter-layer communication with arrows
(Award 3 marks or 0)
3
Use of colors to improve clarity and distinction between layers
(Award 3 marks or 0)
3
Sub-Total14
GRAND TOTAL44
ASSESSMENT OUTCOME:   ☐ Competent    ☐ Not Yet Competent (competent if at least 50%)
🔒

Free: practical guides, quick cards, workplace scenarios and more.

Create a free account
🔒Implement Object-Based Architecture Components in a Distributed SystemPractical 3
🔒Set up a Data-Centred Distributed System with Shared RepositoryPractical 4
🔒Set up and explain a centralized distributed system architecture modelPractical 5
🔒Configure a Decentralized Distributed System Architecture for Two NodesPractical 6
🔒Develop a Hybrid Distributed System ArchitecturePractical 7
🔒Specify architecture requirements for a distributed system at a simulated sitePractical 8
🔒Identify and Document Distributed System Architecture TypesPractical 9
🔒Design a Distributed Processing System Architecture for Task Allocation and CoordinationPractical 10
🔒Implement File Sharing and Synchronization Across Distributed NodesPractical 11
🔒Demonstrate Peer-to-Peer Communication in a Decentralized Distributed SystemPractical 12
🔒Analyze Advantages and Disadvantages of Distributed System Architecture StylesPractical 13
🔒Simulate and Trace Data Flow in a Hybrid Distributed System ArchitecturePractical 14
Flashcards 20 cards Study deck ▾
Question
1

↻ Tap card to reveal answer
🔒

18 more in this section.

Create a free account
Test Yourself 17 questions Start quiz ▾
0%
0 / 2
🔒

15 more in this section.

Create a free account
Am I competent?

At the start of this chapter we promised you would be able to:

  • correctly select and create distributed architectures for different distributed systems,
  • accurately apply architectural styles when designing distributed systems,
  • appropriately use classifications of distributed system architectures in your projects,
  • thoroughly analyze the architecture requirements of a simulated site for distributed systems.

Tick each one you can genuinely do.

So, are you there yet?

You're competent when you can confidently do 50% or more of what this chapter promised.

Sign in to record how you're doing.