Welcome to the Early Adopters program, designed to boost your team's autonomy when using the OutSystems Platform. This 4 weeks program - delivered in the context of a real life project - focuses on core practices needed so that you can become an expert.
Initiation
Practices
Project Management
Kickoff  
The project must start by working with  the customer’s project manager and performing the the project’s initial activities. A key activity is aligning the vision, milestones, key risks, plan and customer team members to prepare a kickoff, to be delivered a few days after the project start, with everyone involved. Make sure that, before meeting the customer project manager, you prepare with all internal information regarding the customer and project.
Project Planning & Budget Control  
You should start the initiation Sprint by creating your project's overall plan. The first step is to map how the project's effort is going to be distributed over time, considering customer constraints as well as the team members' planned vacations or other absences. Next, you should determine the exact sprint dates, go-live dates or other key dates based on relevant business events and the way you've planned the effort.

At OutSystems this is typically achieved through a standardized spreadsheet (partner EMs use this template instead). Over time, this spreadsheet is also used to control budget execution.



Risk Management  
Use the initiation phase to identify and capture any additional project risks and to define and execute the plan to mitigate every identified risk. Check out the five steps to agile risk management
Definition of READY and Definition of  DONE  
The idea here is that a team needs to be in a stable, known situation to be able to perform well. Align with the team what it means for a story to be READY to enter a sprint’s backlog and what it means for the development of a story to be DONE. These are critical to ensure that, for every story, everyone in the team agrees on what's needed to be able to effectively implement (READY) and to deliver user stories (DONE).
Check an example of DONE and READY here. You can also find an explanation of READY and DONE.
Services Playbook  
Our presence in a customer is usually disruptive - not only for the Platform but also due to the way we deliver solutions - and a clear alignment with the customer team on the game rules is fundamental to ensure project success.
 
To help with this task, that should be one of the goals during project start, GDS proposes the Project Delivery Playbook, a short but powerful guide to our practice that answers questions like:
 
- How do we deliver projects?
- What’s going to happen during the project weeks?
- What is the expected involvement from the customer team?
- What are our deliverables on each sprint?
 
Recommendation is using this guide for a specific session with the customer during Initiation week on site. Use your customer name in it, add some minor tweaks for your scenario and it's ready to be a valuable reference, also helping to create a "one" team spirit.
Requirements Gathering
Backlog Grooming  
The collection of User Stories to be addressed comprises the backlog. These should be ordered by priority to make sure you attack the most important things first. Make sure that you have a complete understanding of your full backlog including its high level estimates. For the User Stories that are candidates to address in Sprint 1 you must make sure they are detailed and meet the Definition of READY.
User Stories  
Requirements should be captured as User Stories to improve team communication, help learn the customer’s “language” and to capture the reasons for delivering the requirement at hand.
You can see it’s  definition.
Good techniques on how to capture user stories can be found on the OutSystems Requirements Gathering Workshop, and you can also check the practical guide.
Activity Diagrams  
Capture at high level the main process that will be supported by the project. This is important to help in reviewing the process with the stakeholders and to validate throughout the project if you’re delivering towards the target process. Find here a good intro on activity diagrams. Also you can use Bizagi Process Modeler  to draw them.
Meet “Definition of Ready”  
Having your user stories READY at the beginning of the sprint is one of the most effective way to speed up your delivery.
Make sure the User Stories you are grooming for the Sprint 1 meet the “Definition of READY” before that Sprint starts.
Solution Modeling
Solution Architecture   
Design according to the best practices the of Architecture that will guide the implementation over the course of the project. This will be revisited over the course of the project but the foundations you lay at this point will strongly determine the soundness of your final Architecture. Don’t forget to consider integrations with external systems. Find here the OutSystems Architecture Guidelines. We also have a guideline for calculation engines.
Information Architecture  
Information Architecture (IA) establishes the baseline for a solid application structure. It helps create the navigational labels and routes that get the user from A to B in a language that is helpful and easy to understand.
Data Migration Analysis  
How will your project go to production? What kind of data bootstrap will be needed? Identify if any data migration of ongoing processes from existing systems, spreadsheets or paper will be required. If so, make sure you adequately detail and plan it.
You can have a look into a stepwise approach to data migration.
User Experience
User Research  
“User research is a reality check. It tells you what really happens when people use computers. You can speculate on what customers want, or you can find out... Research offers an understanding of how users behave online, and is a solid foundation on which to build a design. " (Jakob Nielsen)
Personas  
Personas are an excellent way to capture user information collected from stakeholder conversations, or, preferably, field studies, where the development teams go to where the users are and learn directly from them.
Mockups  
Mockups are the best way to create the visual solutions that best solve users' problems, unconstrainted by technology. They are also a great way to communicate and even to test your assumptions prior to start developing.
Check this document to understand how you can use OutSystems' Balsamiq licenses to create your mockups.
User experience  in a nutshell  
Usability requires your constant attention! Check this practical guidelines to keep you on top of it!
Quality Assurance
Tests Process  
Tests are fundamental to ensure quality of the solution delivered. At OutSystems you should follow the Testing Process that, covers how to fit end-to-end user stories functional tests and unit tests in the Delivery Method. This is an iterative process that will ensure solution quality from the delivery team and will ensure alignment with the customer on the acceptance criteria for each user story. Remember that the Acceptance tests must be done by the customer.