<!-- 
RSS generated by JIRA (1001.0.0-SNAPSHOT#100246-sha1:7a5c50119eb0633d306e14180817ddef5e80c75d) at Thu Feb 08 23:08:09 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary add field=key&field=summary to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>FOLIO Jira</title>
    <link>https://folio-org.atlassian.net</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>1001.0.0-SNAPSHOT</version>
        <build-number>100246</build-number>
        <build-date>07-02-2024</build-date>
    </build-info>

<item>
            <title>[FOLIO-762] refactor apps to allow for better isolation and limit shared dependencies</title>
                <link>https://folio-org.atlassian.net/browse/FOLIO-762</link>
                <project id="10290" key="FOLIO">FOLIO</project>
                    <description>&lt;p&gt;Guys, I&apos;d like to start a discussion on how to address the problem of the basic apps (ui-users, ui-scan, ui-items) getting tightly coupled and relying on the common set of dependencies (thus not providing any benefits of the &quot;bounded&quot; context).&lt;/p&gt;

&lt;p&gt;Example: user detail pane includes sections that show information related to circulation: current and historical loans, and soon, outstanding requests. Eventually we will also include a section on fees and fines. Our approach so far was to code those sections directly in the ui-users and include direct dependency on mod-circulation (possibly mod-inventory) modules.&lt;/p&gt;

&lt;p&gt;This is problematic because we are losing all the benefits of (at least some) isolation: ability to replace an app independent of other apps, ability to replace or modify the backend dependencies without a wide impact on the front-end, and finally, for multiple teams to work in parallel without stepping on each other toes.&lt;/p&gt;

&lt;p&gt;I&apos;d like to investigate if we can refactor the apps and use the &quot;plugin&quot; functionality (as it exists now, or extended with new capabilities) to bundle front-end components that pertain to managing specific kind of information (e.g CRUDing loans) together.&lt;/p&gt;

&lt;p&gt;Example: ui-users does not include the &quot;loans&quot;, &quot;request&quot; and &quot;fees and fines&quot; sections, nor does it depend directly on mod-circulation and mod-inventory. Rather, It designates &quot;pluggable&quot; sections where components are be provided by other apps. In this particular case, ui-scan (or ui-circulation, in the new layout) would provide those specific sections, if installed.&lt;/p&gt;

&lt;p&gt;Potential issues: in many cases the information provided within the &quot;pluggable&quot; sections would heavily depend on the context of the the embedding component (e.g in the example above UUID of the selected user). This context may get complex in some cases, is this going to be a problem?&lt;/p&gt;
</description>
                <environment></environment>
        <key id="79402">FOLIO-762</key>
            <summary>refactor apps to allow for better isolation and limit shared dependencies</summary>
                <type id="10006" iconUrl="https://folio-org.atlassian.net/rest/api/2/universal_avatar/view/type/issuetype/avatar/10307?size=medium">Umbrella</type>
                                            <priority id="10002" iconUrl="https://dev.folio.org/assets/jira-priority/jira-p3.svg">P3</priority>
                        <status id="1" iconUrl="https://folio-org.atlassian.net/images/icons/statuses/open.png" description="The issue is open and ready for the assignee to start work on it.">Open</status>
                    <statusCategory id="2" key="new" colorName="blue-gray"/>
                                    <resolution id="-1">Unresolved</resolution>
                                                        <assignee accountid="-1">Unassigned</assignee>
                                                                <reporter accountid="557058:b8e64633-1f7c-402d-9caf-9959a5ba5d0d">Jakub Skoczen</reporter>
                                    <labels>
                            <label>for-next-sprint</label>
                    </labels>
                <created>Mon, 7 Aug 2017 17:38:50 +0000</created>
                <updated>Fri, 18 Jan 2019 12:47:59 +0000</updated>
                                                                                <due></due>
                            <votes>0</votes>
                                    <watches>3</watches>
                                                                        <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10000" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummarycf">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10057" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>Development Team</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10144"><![CDATA[Core: Platform]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_10019" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|hzxwyv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_10020" key="com.pyxis.greenhopper.jira:gh-sprint">
                        <customfieldname>Sprint</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    </customfields>
    </item>
</channel>
</rss>