Embarking on Scientific Research and Experimental Development (SR&ED) projects in Canada can be both exhilarating and challenging. Plan ahead and use these smart documentation tips to maximize your SR&ED eligibility.
Project documentation is like planning a road-trip; sure, you can wing it but done well, it sets you up for delivery and sr&ed success!
Embarking on Scientific Research and Experimental Development (SR&ED) projects in Canada can be both exhilarating and challenging. Beyond the technical aspects, effective project management plays a crucial role in maximizing your eligibility for SR&ED tax credits. Here are six practical tips to help you manage your projects confidently with the end goal of maximizing your SR&ED claim:
That's right - even completely free project management tools are worth your consideration. Whether you choose to use JIRA, Linear, Trello, ClickUp, Monday, Google sheets or Excel - maintaining development work in one or more of these tools adds traceability to your work. For basic hygiene, consider having all code commits tied to an item in these tools - a story, bug, spike task etc.
Bonus tip: If you follow agile practices and plan for velocity of your dev team - add story points or time estimates to each 'story' or 'task' created in the tool. Do you have a dedicated QA? Don't forget to add story points to each testing 'task' assigned to them also!
Track and manage changes to your codebase through version control systems. They will accelerate your dev work and ensure seamless continuity of work to move faster.
Be descriptive with code commits and stay away from cryptic one word commit comments like 'fix'. A always link them back to a 'story' or 'bug' or 'task' or 'card' on your project management tool.
Meeting to discuss architectural changes? Hosting a working session on model updates? Add a 'spike' task to your project management tool - assign it to the meeting host. Have them add a photo of the whiteboard or a copy of meeting notes or any other generated artifact to the tool. Keeping textual or visual records promotes transparency, accountability and ensures that everyone is on the same page regarding the direction of the project.
Describe your architecture, including system components, modules, interfaces, and their relationships. Design documentation also outlines design patterns, algorithms, data structures, and rationale behind architectural decisions. You may choose to do this in wikis, or tag them to items in your project management tool. Don't forget to capture API specifications, data models, protocols, and integration points: Code as documentation is fine for the later, but not for completeness of architectural design choices.