Tech Stack: Python
Allseas, a leader in the maritime construction industry, confronted a complex issue concerning their ballast systems. The hard-coded design of the ballast system for a single vessel impeded the scalability to the rest of the fleet and restrained the Systems team from introducing new features. The ability to implement new features is crucial not only for system enhancements but also for complying with new regulations, representing a significant risk for Allseas if not addressed.
Allseas sought a flexible strategic partner with software development expertise to enlarge their in-house capabilities. They required a solution to deliver speed, flexibility, and scalability, enabling them to continue fulfilling their operational needs effectively.
#SoftwareDevelopment #Python #DataModel #BallastSystems #MarineAndOffshore
"In my experience, engaging external parties often involveslengthy contracts and significant overhead. with Yabba Data Doo, it's different.
They operate as an agile partner, delivering high-quality results,
rapidly accelerating our backlog, and doing so without
requiring excess management resources on our part"
Department Head Systems Allseas
Yabba Data Doo joined forces with Allseas spanning 10 sprints over a period of 5 months. A cross-functional team consisting of 2 Python developers, a scrum master, and a project manager was deployed from Yabba Data Doo. To ensure effective collaboration and ownership, we worked closely with a product owner from Allseas and one of their developers
The solution was divided into two phases. The initial phase involved 5 sprints dedicated to replicating the legacy ballast model in open code. This replication aimed at maintaining the functionalities of the current system while transitioning to a more flexible and scalable model. The open code approach ensured that the system could be used long-term by the internal team, allowing them to add features as needed. Furthermore, it was designed to be modular, accommodating the specific configurations of multiple vessels.
In the second phase, the team not only focused on automating the ballast procedure at the vessel, exploiting the Python-based data model's scalability across all vessels, but also added an entire treatment system in response to new regulations. The phase culminated in automating the tool, ensuring seamless and compliant operations for Allseas
The team adhered to modern PEP8 standards and leveraged the Poetry package manager to build this robust and scalable model. They also applied proven design patterns such as factory, visitor, and producer to reinforce the model's functionality and ensure its readiness to accommodate future enhancements. To validate the system's robustness and maintainability, comprehensive unit testing was performed using pytest.
Utilizing an onsite-offsite hybrid model, Yabba Data Doo dedicated two days per week at Allseas, facilitating direct collaboration and immediate issue resolution. Each project phase started with feasibility testing, to established project feasibility, the backlog, and the sprint planning. For every sprint, we determined specific deliverables, and meeting these deadlines was of utmost priority.
We also carried out collaboration assessments after each phase, which helped in maintaining an optimized workflow and a balance between speed and quality throughout the project. Upon project completion, we conducted a thorough handover to the Allseas' internal team, ensuring solution sustainability and continued ownership.
A short standup was conducted each morning to ensure team alignment and promote effective communication. At the end of every sprint, we conducted a review and initiated a scoping session for the next sprint, which was vital in defining future deliverables and maintaining consistent progress. This also facilitated end-testing and with the Pioneering Spirit crew, which significantly improved the model's quality and usability.
The Python-based data model for the ballast system, now used by the Pioneering Spirit crew, has improved Allseas' operational capabilities.
Two Python developers and flexible firing power accelerated backlog resolution and boosted Allseas' development capacity.
Scrum Master and Project Management skills enhanced project structure and efficiency.
Time-efficient collaboration, requiring minimal management overhead for Yabba Data Doo as an external team, minimally impacting non-project stakeholders.
“At first, our software team was hesitant, thinking we could handle it ourselves. But once we started working with Yabba Data Doo, we quickly saw their value.
Their speed was impressive and they brought a refreshing energy to our meetings. They really proved their worth“
Jaap Jan van Senden
R&D engineer bij Allseas