Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Test the service, verifying its compatibility with different devices, browsers, and assistive technologies
Identify the range of devices, operating systems, and browsers your users may use.
Use testing tools like BrowserStack or LambdaTest to test your service on these platforms.
Make necessary adjustments to ensure compatibility across platforms.
Continuously test new versions of your service on these platforms.
Making decisions based on needs
Choose the right level of security
Optimise load times and page performance
Account for connectivity issues
Follow established standards and guidelines for multi-modal design, ensuring consistency and usability across different interaction modes.
Consider user expectations and preferences for different interaction modes, ensuring inclusivity and accessibility for all users.
Account for potential limitations and constraints of different platforms, systems, and devices, while maintaining interoperability and multi-modality.
Make sure your technology, infrastructure and systems are accessible and inclusive for all users.
Identify the various channels through which users will interact with your service (for example, web, mobile, SMS, call centre, physical location, etc.).
Consider the strengths and limitations of each channel. For instance, certain tasks might be more easily accomplished on a desktop than on a mobile device, or vice versa.
Design your service so that users can easily switch between channels as needed. This might involve making certain data or functionality available across multiple channels, or designing the service so that progress made on one channel can be saved and continued on another.
Consistency is crucial across all platforms. Keep a consistent design language (colours, fonts, layouts) and user experience (navigation, interaction patterns) across all channels.
Consider the use of responsive or adaptive design to ensure your service is usable on a variety of screen sizes and device types.
In many contexts where GovStack Building Blocks are being used, internet bandwidth may be slow, therefore it is essential to optimise load times and minimal data transfer.
Use Google Lighthouse to test your web application's performance.
Identify areas for improvement based on the test results.
Implement improvements such as using compressed images, optimising front-end code, leveraging CDNs, etc.
Retest and continue to optimise as needed.
From a design perspective, only use necessary images, optimise images for the web, use CSS and SVG instead of images where possible, minimise the use of different font families, and optimise font loading if custom fonts are used.
Use AJAX/Fetch mechanisms for asynchronous and partial updates of the UI.
Choose proportionate security to control and monitor your technology programme. Security should protect your information technology and digital services, and enable users to access the data they need for their work. GovStack offers specific guidance for designing a secure system.
Evaluate the sensitivity of the data you're handling.
Based on the evaluation, choose appropriate encryption methods and robust user authentication systems. Use the OWASP Cheat Sheet Series as a guide:
Authentication Cheat Sheet: This provides guidance on implementing secure authentication systems, which is a fundamental aspect of security.
Session Management Cheat Sheet: This covers the best practices for handling user sessions securely.
Cross-Site Request Forgery (CSRF) Prevention Cheat Sheet: CSRF is a common web application vulnerability that your users should be aware of.
Cross-Site Scripting (XSS) Prevention Cheat Sheet: XSS is another common vulnerability, and this cheat sheet provides guidance on how to prevent it.
Transport Layer Protection Cheat Sheet: This covers how to use SSL/TLS, which is vital for encrypting data in transit.
Input Validation Cheat Sheet: Input validation is an essential measure for preventing many types of attacks.
SQL Injection Prevention Cheat Sheet: SQL Injection is a common and dangerous vulnerability, and this cheat sheet provides guidance on how to prevent it.
HTML5 Security Cheat Sheet: If your users are using HTML5, this cheat sheet covers many of the new security considerations that come with it.
Implement the security measures in your system.
Test and adjust the security measures to ensure they provide the needed protection without overly impeding usability.
Account for connectivity issues in different regions, considering the deployment options provided by the Building Blocks.
Assess Connectivity Conditions and User Needs: Understand the network conditions under which your users will be accessing your service.
Optimise Web Performance: Minimise the size of your resources and fix performance issues.
Implement Progressive Loading: Design your service so that it loads the most critical content first.
Use a Content Delivery Network (CDN): If your users are spread across a wide geographical area, using a CDN can speed up load times.
Utilise Service Workers for Offline Functionality: Service workers can intercept network requests and serve cached responses. Google's Workbox can help with this.
Choose the Right Caching Strategies: For instance, you might cache static resources for faster loading and implement a "network first, then cache" strategy for dynamic content.
Implement Local Storage: Consider storing some data locally on the user's device.
Test Under Low-Connectivity Conditions: Use browser developer tools or network throttling tools to simulate various network conditions.
Make sure citizens’ rights are protected by integrating privacy as an essential part of your system.
Define the data you need to collect for your service.
Use the Privacy by Design framework to integrate privacy controls into your system.
Create a transparent privacy policy that outlines what data you collect, why you collect it, and how it's used and stored. You can use the .
Ensure compliance with any applicable data security and privacy protection laws.