Tarkvaratoote skaleerimine: Pipedrive teekond

Date

2019

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Tüüpilistel alustavatel tarkvaratoodet arendavatel iduettevõtetel on lapik võimustruktuur ja väike hulk meeskondi või ainult üks meeskond. Sellistes ettevõtetes tehakse tööd tihedalt koos ja arendatakse monoliitset tarkvarasüsteemi kasutades agiilseid meetodeid. Iduettevõtte kasvades kasvab keerukus ka ettevõtte tarkvarasüsteemis ja ettevõtte korralduses tasemeni, kus lapik võimustruktuur ja monoliitne tarkvara arhitektuur saavad tarkvara tootearenduse pudelikaeladeks. Sellesse etappi jõudnud ettevõtted seisavad silmitsi väljakutsetega kuidas restruktureerida ettevõtte korraldus ja tarkvara arhitektuur selliselt, et lihtsustuks tarkvara arendus, hooldus ja kasutamine ning kuidas jagada ettevõte alamüksusteks, kus suhtluses esinevad kaod oleks aktsepteeritavad. Käesolev töö analüüsib iduettevõttena alustanud ettevõtte väljakutseid eespool kirjeldatud arenguetapis ettevõtte Pipedrive näitel.Käesolev töö kirjeldab ettevõtte Pipedrive üleminekut monoliitselt tarkvara arhitektuurilt mikroteenustel põhinevale arhitektuurile ja kindlate vastutusvaldkondadega meeskondadelt üleminekut meeskondadele, mis luuakse dünaamiliselt tegelemaks ajaliselt piiratud ja eesmärgipäraste ülesannetega.
Typical early-stage software product startups have a flat structure, consisting of one or a handful of teams, working closely together to develop a monolithic software system using agile methods. As the startup grows, the complexity of the software system and of the organization eventually reaches a point where a flat organizational structure and a monolithic software architecture become a bottleneck in the development of the product. Post-startup companies that reach this point face the challenge of re-structuring the organization and their software architecture in order to simplify the development, maintenance, and operation of the software system, while breaking down the organization into sub-structures with manageable communication overhead. This thesis analyzes the challenges faced by post-startup companies during this phase via a case study at Pipedrive.The thesis reflects on the Pipedrive's journey from a monolithic architecture to a microservices architecture, and from a static structure consisting of teams with fixed areas of responsibility to a dynamic structure consisting of dynamic teams with time-bounded missions.

Description

Keywords

Citation