Build for reuse

Minimum you need to do

Consider if any parts of your service can be built for reuse. Where possible, contribute solutions to the NSW Design System so others can reuse them.

Design for reuse

Identify how to build your service (or elements of it) for reuse and so it can be scaled up. 

It is easier to build for reuse if you reuse what is already available. The NSW Design System contains reusable patterns and solutions. Adapting these to your design will help create a consistent experience for NSW customers and enable other government agencies to access and build on your solution.

Consider how you can integrate solutions that enable customers to communicate their information once to government, safely, securely and in one place. 

Also use modular architecture to design and build patterns that you can: 

  • reuse for multiple purposes 
  • replace without affecting the rest of the system 
  • easily integrate with other systems 
  • scale 
  • easily develop (also known as ‘the developer experience’). 

You should also consider how to design your solution so it’s accessible to agencies seeking to reuse it. This will help address some of the key constraints around reuse regarding hosting, security and access controls.  

Publish application programming interfaces

An application programming interface (API) provides a software to software connection so that two applications can communicate directly without any user intervention. 

APIs enable agencies to share and release data in the most usable forms and to reuse existing technology functions for a variety of purposes.  

Ensure you make your data available through APIs.  

You can browse repositories of  NSW Government APIs and Commonwealth Government APIs to access data and other functions. 

Contribute back

 Document your solution so that it can be easily understood. Try and include things like its purpose, core functions and interfaces.  

Share outputs and learnings to the NSW Design System community, unless there’s a good reason not to.  

For example, you can: 

How to show you’ve met the need

You will have:

  • Considered whether  you can design the service you’re building (or parts of it) for reuse. Used modular architecture and considered any accessibility constraints.

  • Reviewed the available solutions and patterns in the NSW Design System before you build a solution.

  • Published the relevant APIs to your data and functions.

  • Documented your solution in a way that’s easy to understand .

  • Contributed the patterns, solutions and any other learnings from your build into the NSW Design System.  

Last updated