InnerSource — это использование лучших практик разработки программного обеспечения с открытым исходным кодом и создание культуры , подобной культуре с открытым исходным кодом , в организациях [1] для разработки своего не-открытого и/или проприетарного программного обеспечения . Термин был придуман Тимом О'Рейли в 2000 году [2] в его колонке. [3]
Открытый исходный код признан способным предоставлять высококачественное программное обеспечение. [4] Более того, открытое сотрудничество в области открытого исходного кода позволяет сотрудничать даже между конкурентами (например, ARM и Intel работают над ядром Linux, принимая решения на основе заслуг).
Следовательно, организации, разрабатывающие программное обеспечение, хотят извлечь выгоду из своих результатов (компонентов и инструментов программного обеспечения), а также из практик разработки, применяемых и устоявшихся в мире открытого исходного кода. [5]
Помимо ряда практик, установленных в таких фондах , как Apache Software Foundation , Linux Foundation и Eclipse Foundation , InnerSource и проекты с открытым исходным кодом требуют открытого сотрудничества , открытого общения и надлежащего контроля качества .
Все необходимые артефакты разработки (например, код, документация, трекер проблем и т. д.) должны быть доступны для всех сотрудников компании, использующей InnerSource. Централизованные кузницы программного обеспечения являются важным инструментом для внедрения открытого сотрудничества.
На основе принципов открытого сотрудничества ( эгалитарного , меритократического и самоорганизующегося) обычно приветствуется каждый участник, который готов помочь проекту InnerSource. Вклады в проекты InnerSource обычно оцениваются меритократически на основе ценности, которую они приносят проекту. Меритократия также может быть реализована посредством открытого общения, поскольку решения обсуждаются публично. Хотя организация не обязательно становится полностью самоорганизующейся для принятия InnerSource, InnerSource позволяет отдельным лицам, организационным подразделениям и проектным сообществам более высокую степень самоорганизации.
Проекты и программы InnerSource полагаются на открытую коммуникацию, чтобы сделать всю коммуникацию открыто доступной для всех сотрудников. Открытая коммуникация — это коммуникация, которая является публичной (внутри компании), письменной, архивированной и полной. Вследствие этого свойства коммуникация является асинхронной. Цель состоит в том, чтобы позволить любому лицу или стороне, которая имеет долю или интерес в проекте InnerSource, участвовать в коммуникации. Поскольку обсуждения открытой коммуникации архивируются, пассивно собирается подробная документация программного обеспечения, которая позволяет вернуться и пересмотреть исторические обсуждения и решения.
Специальная проверка кода и разделение участников и коммиттеров (интеграторов, разработчиков с правом записи) гарантируют качество проекта с открытым исходным кодом, а следовательно, и проекта InnerSource.
Помимо качественных характеристик программного обеспечения с открытым исходным кодом сообщаются следующие преимущества: [6] [7]
Среди прочих известны следующие компании, внедрившие InnerSource: [6]
InnerSource может быть перспективным подходом для крупных организаций, которые разрабатывают программное обеспечение. Однако он может быть неподходящим во всех условиях. Следующие девять факторов, сгруппированные в три категории, можно использовать для оценки степени, в которой InnerSource может быть подходящим. [13]
InnerSource (IS) — это использование практик разработки программного обеспечения с открытым исходным кодом и создание культуры, подобной культуре с открытым исходным кодом, в организациях. Организация может по-прежнему разрабатывать проприетарное программное обеспечение, но внутренне открывать его разработку.
Тим О'Рейли, основатель O'Reilly Media, ввел термин "inner-sourcing" в 2000 году, описав его как: "использование методов разработки с открытым исходным кодом в корпорации".
[М]ы также работали с компаниями над тем, что мы называем "внутренним сорсингом" — то есть помогали им использовать методы разработки с открытым исходным кодом внутри корпорации.
{{citation}}
: CS1 maint: несколько имен: список авторов ( ссылка )[...] ряд организаций внедрили методы разработки с открытым исходным кодом для разработки своего программного обеспечения. [...] В отличие от традиционных подходов, разработчики проекта InnerSource не принадлежат к одной команде или отделу. Вместо этого любой человек в пределах организации может стать участником этого внутреннего сообщества, либо как пользователь, либо как участник.