Software Development  ·  Level 6
Web Application Development
Chapter 2: To write web application source code
📚 13 Topics
⚑ What you will be able to do

By the end of this chapter, you will be able to:

  • Create a user-friendly interface using the right development tools based on your design.
  • Build back-end APIs that fulfill the needs of your web application.
  • Follow workplace safety and health practices correctly according to OSHA standards.
  • Identify and apply proper methods for e-waste storage and disposal safely.
  • Manage e-waste effectively by following OSHA procedures.
  • Use version control systems accurately to track and manage your code changes.
  • Develop interactive and functional front-end features that meet application requirements.
  • Implement responsive design techniques to ensure your app works well on all devices.
  • Integrate front-end components smoothly with back-end APIs following correct procedures.

Mastering these skills will help you build reliable, safe, and user-friendly web applications that meet real-world needs in the tech industry.

Web application source code writing is a foundational skill for software developers engaged in creating interactive, dynamic websites and applications that serve Kenya’s growing digital economy. This chapter addresses critical tools and practices that enable efficient, maintainable, and collaborative web application development. Developers in Nairobi’s tech hubs or software teams at county government offices rely heavily on modern front-end tools and robust version control systems to deliver responsive and scalable web solutions. Understanding these technologies and processes is essential for producing high-quality code that meets user expectations and integrates smoothly into broader software ecosystems.

2.1 Creation of user interface development tools

Developing a web application's user interface (UI) involves using specialized tools that enable designers and developers to build visually appealing and user-friendly front ends. In Kenya, where digital services are rapidly expanding across sectors such as banking, education, and health, the choice of front-end development tools significantly impacts project timelines and user engagement. This section explores the identification and use of these tools, focusing on those most relevant to software developers working on web applications.

2.1.1 Identification of front-End development tools

Front-end development tools encompass a range of software applications and frameworks that facilitate the creation, testing, and optimization of the user interface of web applications. These tools help developers write clean, maintainable code and implement designs that respond well on various devices used across Kenya, from smartphones in rural areas to desktops in urban offices.

Popular Front-End Frameworks and Libraries

  • React.js: A JavaScript library maintained by Facebook, widely adopted for building reusable UI components. It supports efficient rendering and state management, making it useful for dynamic web applications such as online banking portals at Equity Bank.
  • Angular: A comprehensive framework maintained by Google that provides a full suite for building complex single-page applications (SPAs). County government offices use Angular to develop dashboards that consolidate citizen service information.
  • Vue.js: Known for its gentle learning curve and flexibility, Vue is increasingly popular among Kenyan startups for rapid prototyping and building performant interfaces.
  • Bootstrap: A CSS framework that offers pre-designed UI components and responsive grid systems, helping developers create mobile-friendly websites quickly, used by many retail businesses to enhance their online presence.
  • Tailwind CSS: A utility-first CSS framework that allows developers to design custom UI components with minimal CSS, favored for its efficiency in styling without leaving HTML.

Development Environment Tools

  • Visual Studio Code: A lightweight but powerful source-code editor with support for debugging, Git control, and extensions tailored for front-end development.
  • Chrome DevTools: An in-browser toolset for inspecting HTML, CSS, and JavaScript, essential for real-time UI debugging during development and testing.
  • Figma and Adobe XD: While primarily design tools, they integrate with front-end workflows by enabling developers to inspect designs and export assets, bridging the gap between UI designers and developers.

Task Runners and Module Bundlers

  • Webpack: A module bundler that compiles JavaScript modules and assets, optimizing code delivery for faster load times, critical for users accessing web apps with limited bandwidth in Kenya.
  • Gulp: A streaming build system automating repetitive tasks such as minification and compilation, improving development efficiency.
  • NPM Scripts: Leveraging Node Package Manager to run scripts for building, testing, and deploying front-end code.

Version Control Integration

Modern front-end tools integrate tightly with version control systems, enabling seamless collaboration among developers working on UI code. Visual Studio Code, for example, includes Git integration, allowing developers at institutions like Kenya Revenue Authority (KRA) to manage code changes effectively.

2.1.1.3 JavaScript basics

2.1.1.3.3 JavaScript Frameworks overview e.g JQuery syntax and events

Practice Questions

  1. Explain five front-end development tools commonly used in web application development and describe their primary uses. (10 marks)
  2. Discuss how task runners and module bundlers improve the front-end development process, citing examples relevant to Kenyan software projects. (10 marks)
  3. Identify and describe three development environment tools that assist in writing and debugging front-end code. (6 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 Performing Version control

Version control is an essential practice in software development that manages changes to source code over time. For Kenyan software developers working on web applications, version control systems enable collaboration, track history, and reduce conflicts when m…

🔒2.3 Functionality and interactivity development

Functionality and interactivity are the core pillars of any web application, shaping how users engage with the system and achieve their goals. In the Kenyan software development industry, delivering responsive and user-friendly web applications is critical for…

🔒2.4 Responsive design implementation Methodology

Responsive design is essential for creating web applications that provide seamless user experiences across a wide range of devices and screen sizes, a necessity in Kenya where users access applications from desktops, tablets, and predominantly mobile phones. I…

🔒2.5 Front-end Development

In the Kenyan software development industry, front-end development plays a crucial role in delivering user-friendly web applications that meet the expectations of diverse users across sectors such as banking, education, and government services. Front-end devel…

🔒2.6 Application Programming Interfaces (API)

Application Programming Interfaces (APIs) are essential tools in modern web application development, enabling different software systems to communicate and share data efficiently. In Kenya's growing digital economy, APIs facilitate integration between local fi…

🔒2.7 Server-side coding tools

Server-side coding tools enable developers to create dynamic web applications that process data, manage databases, and handle business logic on the server before sending content to the client. In Kenya’s software development landscape, mastering server-side te…

🔒2.8 Back-end Development

Back-end development forms the backbone of web applications by managing server-side logic, database interactions, and application functionality beyond the user interface. In Kenya's growing tech industry, software developers working in banks, government agenci…

🔒2.9 Back-end Database Implementation

Databases are critical for storing, retrieving, and managing data in web applications. Kenyan developers must design and implement databases that meet performance, security, and scalability demands of various sectors, from healthcare record systems to retail i…

🔒2.10 Back-end API creation

In modern web application development, the back-end API (Application Programming Interface) serves as the critical bridge between the client-side interface and the server-side data or logic. In Kenya’s fast-growing software industry, companies building e-comme…

🔒2.11 Workplace safety and health practices

Software development environments in Kenya, including offices and data centers, require adherence to workplace safety and health practices to protect employees from physical and ergonomic hazards. Although the risks may differ from industrial settings, imprope…

🔒2.12 E-waste storage and disposal

In Kenya's growing software development sector, managing electronic waste (e-waste) generated by obsolete or malfunctioning hardware is critical for sustainable operations. Software firms and IT departments in banks, universities, and county government offices…

🔒2.13 E-waste management

Effective e-waste management is essential for sustainable software development practices in Kenya. It involves coordinated activities to minimize e-waste generation, promote reuse and recycling, and ensure safe handling throughout the equipment lifecycle. Prop…

Chapter Summary

This chapter explored the essential tools and techniques required to write web application source code, beginning with the creation of user interfaces using front-end development tools such as HTML, CSS in various forms, and JavaScript frameworks including jQuery. It emphasized the importance of version control for managing changes during development. The chapter then discussed how to enhance functionality and interactivity within web applications, followed by methodologies for implementing responsive design to accommodate different screen resolutions. Front-end development was covered in detail, revisiting HTML, CSS, and JavaScript basics alongside frameworks. The integration and testing of Application Programming Interfaces (APIs) were explained to enable communication between software components. On the server side, PHP coding basics and back-end frameworks were introduced to build the application logic, while back-end database implementation focused on creating, connecting, and manipulating databases through web interfaces. The process of back-end API creation was also examined. Finally, the chapter addressed workplace safety and health practices related to web development environments, referencing applicable OSHA regulations, and concluded with proper e-waste storage, disposal, and management strategies.

Self-Assessment

🔒 PDFDownload this self-assessment, with answers

A. Written Assessment

  1. What is the primary role of HTML in web application development? (2 marks)
  2. Differentiate between inline CSS and external CSS with examples. (4 marks)
🔒20 more in this section.

Chapter Examination Questions

🔒 PDFDownload these examination questions, with worked answers

SECTION A (40 Marks) - Answer ALL Questions

  1. Explain the role of Hypertext Markup Language (HTML) in front-end web development and illustrate its use in creating a basic form for a Kenyan e-commerce website. (4 marks)
  2. Differentiate between inline CSS and external CSS, highlighting advantages of using external CSS in maintaining a large web application such as one used by a Kenyan bank. (4 marks)
🔒18 more in this section.

Chapter Practical Activities

Practical 1: Develop a Basic HTML Web Page Structure

Software Development · Level 6
Web Application Development
PRACTICAL ASSESSMENT
TIME: 4 HOURS
⬇ PDFCandidate Instructions (Candidate Tool)

Type: Individual

INSTRUCTIONS TO CANDIDATE:
1.  You are required to perform the following task:
i.  Create a single HTML file named index.html containing a basic web page structure with a header, a navigation bar, a main content area with a welcome message, and a footer, all properly structured using semantic HTML5 tags.
2.  You have been provided with the following resources for the practical task:
Tools & EquipmentMaterials
Computer with a web browser and text editor
Internet access for referencing HTML documentation
⬇ PDFResources Required (Cutting List)
S/NItemQuantity
1Computer with a web browser and text editor1 Pc per Candidate
2Internet access for referencing HTML documentation1 Pc per Candidate
⬇ PDFAssessor Guide
Items to be EvaluatedMarks AvailableMarks ObtainedComments
TASK 1: Create HTML File Structure
Created project folder and named the HTML file index.html
(Award 1 mark)
1
Included the DOCTYPE declaration and html root element
(Award 1 mark)
1
Added head section with a title element
(Award 1 mark)
1
Created a header element with a page heading
(Award 2 marks)
2
Created a nav element with at least three navigation links
(Award 2 marks)
2
Created a main element with a welcome message paragraph
(Award 2 marks)
2
Created a footer element with copyright information
(Award 1 mark)
1
Sub-Total10
PRODUCT CHECKLIST
HTML file renders in browser without errors and shows header, nav, main, and footer sections clearly
(Award 4 marks)
4
Semantic HTML5 tags correctly used according to the task instruction
(Award 3 marks)
3
Navigation links are functional placeholders with href attributes
(Award 3 marks)
3
Sub-Total10
GRAND TOTAL20
ASSESSMENT OUTCOME:   ☐ Competent    ☐ Not Yet Competent (competent if at least 50%)

Practical 2: Style a web page using inline and external CSS methods

Software Development · Level 6
Web Application Development
PRACTICAL ASSESSMENT
TIME: 4 HOURS
⬇ PDFCandidate Instructions (Candidate Tool)

Type: Individual

INSTRUCTIONS TO CANDIDATE:
1.  You are required to perform the following task:
i.  Create a styled web page applying inline CSS and external CSS stylesheet to an HTML file 1024px wide and 768px high as per the provided specifications.
2.  You have been provided with the following resources for the practical task:
Tools & EquipmentMaterials
Computer with a modern web browser and text editorExternal CSS stylesheet file
Sample HTML file for styling
⬇ PDFResources Required (Cutting List)
S/NItemQuantity
1Computer with a modern web browser and text editor1 Pc per Candidate
2External CSS stylesheet file1 Pc per Candidate
3Sample HTML file for styling1 Pc per Candidate
⬇ PDFAssessor Guide
Items to be EvaluatedMarks AvailableMarks ObtainedComments
TASK 1: Setup project and apply inline CSS
Created a project folder for the web page files
(Award 1 mark)
1
Opened the sample HTML file in a text editor
(Award 1 mark)
1
Applied inline CSS styles to at least three HTML elements (e.g., color, font-size, background-color)
(Award 1 mark for each correctly styled element x 3 = 3 Marks)
3
Sub-Total5
TASK 2: Create and link external CSS stylesheet
Created an external CSS file named styles.css inside the project folder
(Award 1 mark)
1
Wrote CSS rules in styles.css to style the body element with a background color and font family
(Award 1 mark for background color, 1 mark for font family)
2
Styled at least two other elements (e.g., headings, paragraphs) using external CSS
(Award 1 mark each for two correctly styled elements)
2
Properly linked the external stylesheet to the HTML file using the <link> tag in the <head> section
(Award 2 marks)
2
Sub-Total7
TASK 3: Verify styles and finalize the web page
Opened the styled web page in a web browser to verify inline and external CSS styles are applied correctly
(Award 2 marks)
2
Saved all files correctly in the project folder
(Award 1 mark)
1
Sub-Total3
PRODUCT CHECKLIST
Web page width is approximately 1024px and height approximately 768px as displayed in the browser
(Award 2 marks)
2
Inline CSS styles correctly applied to at least three elements
(Award 1 mark for each correctly styled inline element x 3 = 3 Marks)
3
External CSS stylesheet linked and styles applied to body and at least two other elements
(Award 1 mark for linking, 1 mark for body styles, 1 mark for other elements)
3
Background color and font family applied correctly via external CSS
(Award 2 marks)
2
Sub-Total10
GRAND TOTAL25
ASSESSMENT OUTCOME:   ☐ Competent    ☐ Not Yet Competent (competent if at least 50%)
🔒

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

Create a free account
🔒Develop a JavaScript Interactive Web Page FeaturePractical 3
🔒Develop Interactive Web Page Elements Using jQuery Event HandlingPractical 4
🔒Create a Responsive Web Page Layout 1200mm x 800mm Equivalent ScreenPractical 5
🔒Dynamic DOM Manipulation using JavaScriptPractical 6
🔒Integrate and test external REST API in a web applicationPractical 7
🔒Perform version control operations on web application source codePractical 8
🔒Develop a PHP Server-Side Script for User Login ValidationPractical 9
🔒Develop a RESTful API backend using Node.js and Express frameworkPractical 10
🔒Create and connect a MySQL database for a web application backendPractical 11
🔒Develop a web-based CRUD interface for managing student recordsPractical 12
🔒Develop RESTful API endpoints for a web applicationPractical 13
🔒Develop a Responsive Web User Interface Using Front-End ToolsPractical 14
🔒Implement workplace safety and e-waste management in a web development environmentPractical 15
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:

  • Create a user-friendly interface using the right development tools based on your design.
  • Build back-end APIs that fulfill the needs of your web application.
  • Follow workplace safety and health practices correctly according to OSHA standards.
  • Identify and apply proper methods for e-waste storage and disposal safely.
  • Manage e-waste effectively by following OSHA procedures.
  • Use version control systems accurately to track and manage your code changes.
  • Develop interactive and functional front-end features that meet application requirements.
  • Implement responsive design techniques to ensure your app works well on all devices.
  • Integrate front-end components smoothly with back-end APIs following correct procedures.

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.