Redvant: Difference between revisions

From Cibernética Americana
Jump to navigationJump to search
No edit summary
 
(63 intermediate revisions by the same user not shown)
Line 3: Line 3:
<blockquote><br>
<blockquote><br>
{{TOCleft}}
{{TOCleft}}
= Purpose =
The original purpose of the <b>Redvant</b> moniker was to name the separation of some product lines from their domain space aspects. Products developed under its rubric can be compiled for operation strictly on the basis of the FOSS or COTS software upon which they are based without any integration with DS though in some cases this can gut the app if presentation of a DS feature was its  purpose. A non-DS application can then supply a new purpose. My <b>tl;dr</b> line and other product lines sold on stores may thus have core function repurposed to such new apps without committing to DS, DCP, etc..
However this separation is only in evidence at the time of its application in GC* projects and this separability is not discussed outside of such projects but it will be evident in the supporting implementation.
*<span style="font-weight:normal;font-size:8px;">General Contracting (Rate Chart)<span>
= Pr&eacute;cis =
= Pr&eacute;cis =
<span class=plainlinks>
<span class=plainlinks>
'''Redvant''' , or ''''dcms<'''' (dcms-bra), is a collective term for software including react and [https://haskell-servant.readthedocs.io/en/stable/ <font color=lime>servant</font>] within a DCP context and packaged as a reusable resource demonstrated in various applications such as the tl:dr and by the KEE.  
'''Redvant''' , or ''''<dcms'''' (dcms-bra), is a collective term for software including react and [https://haskell-servant.readthedocs.io/en/stable/ <font color=lime>servant</font>] within a DCP context and packaged as a reusable resource demonstrated in various applications such as the tl:dr and by the KEE.  
<br><div style="position: relative;left: 50px;">
<div style="position: relative;left: 50px;">
"red" could be
"red" could be
<blockquote>
<blockquote>
  react, redis, light in the ~700 nm range, a proper name as in red5, the parfume, riding hood, Malcom X, Simply, etc..
  react, redis, light in the ~700 nm range, a proper name as in red5, the parfume, lil riding hood, Malcom X, Simply, etc..
</blockquote>  
</blockquote>  
and "vant" is just from haskell-servant.
and "vant" is just from haskell-servant.
</div><br><span class=plainlinks>
</div>
Use of Apache [https://isis.apache.org <font color=lime>ISIS</font>] or other fat DDD pkg is intended later in the development our overall DDD product line engineering (i.e. a 'redvantis'). Some enterprise users may prefer the java basing of ISIS or an ERP core and these future developments are anticipated after the foundational elements are established.
<div style="font-weight: normal;background-color: #fbfcf8; color: black;">
</span>


= Requirements =
= Substance =
<html>
<blockquote><span class=plainlinks>
In the original remit, use of Apache </html>[https://isis.apache.org <font color=lime>causeway (formerly ISIS)</font>]<html> or other fat DDD pkg was intended later in fulfillment of our overall DDD product line engineering (as 'redvantis'). Some enterprise users may prefer a java basing of ISIS or an ERP core and this is still an option for GC projects.
<p>However, subsequently, I decided a package I first ran into in the telematics work in '14/15 could be repurposed as a basis for <b><u><a href=https://redvant.ai-integration.biz>product line engineering</a></u></b> and Redvant. <a href=https://clafer.org>Clafer</a> is essentially forked for this purpose here, its repos forked within 6 mo of the Sept. '23 update, which was the first activity on it in some time. It appears to be preserved and maintained but not actively developed which is fine as I intend the baseline here to veer strongly toward actual product line engineering of actually fielded apps and the redvant mission as well as DS DDD generally making it essentially Clafer for DS and my product lines.
<p>Although I mean to keep local clafer tools close to the original on the common code intersection, there will be some rebranding to Redvant instead of Clafer to make clear the diff between just clafer the domain modeling lang and its use here.
</blockquote></html>


At this time, this &sect; is the sole exposition besides the code of any forks of constituent 3rd party packages in my public github or my original ones in my private git repo.
= Visibility =


For pragmatic reasons, it is accounting oriented and doesn't address the full actual scope of use as implied by &sect; 2.2 below, which could be confusing.
This is the sole exposition at this scope and will remain so. Technical detail will be in an eponymous &sect; in the Books DCMS volume.
 
== Scope ==
 
Redvant carries our use of react and related node based stuff generally but here is discussed for the core purpose of transacting and accounting in domain space systems and apps. The transctional UI is actually django templating which could also be confusing.
 
As such it is deeply integrated with DCMS, DCP, etc. but these interfaces shall not be required in the product and its operation without them is a design requirement.
 
== Design by Doing ==
<span class=plainlinks>
The model use cases are the [https://ac.ai-integration.biz Web KEE SPA] and the [https://doorbell.meansofproduction.biz/?TCOLL=1 Ft doorbell], as well as GT2 2.1 and later and the tl:dr product line, in sofar as their front and middle are concerned.
</span>
 
== Transacting ==
==== django-oscar ====
 
<blockquote class=plainlinks>
I chose this back end pkg because of its claim of being domain driven. That claim, as it turns out is based on dynamic class loading. So without quibbling and as its sole focus on txing is convenient it turns out to be an early anchor in my DDD praxis.
 
Provides front end for tx'ing objects. We introduce the notion of an ephemeral tx ledger, oriented to a single, possibly complex tx which is connected to the others (&sect; 2.4.1.1). Like 'ledger', transaction 'tx' is defined to be an abstract change to a ledger. The process of application of a real instance of such change to persistent ledgers is called settlement.
 
Consequently, any transaction requirements are realized as constraints on the [https://django-oscar.readthedocs.io/en/3.1/ref/apps/index.html 16 Oscar Apps] or new classes in its framework.
</blockquote>
 
== Accounting ==
<blockquote>
=== Design Principles ===
<blockquote>
 
==== Abstraction and Unity ====
<blockquote>
Ledgers are abstract entities realized differently in different packages but from the perspective of a single accounting ontology.
 
Unless qualified, 'ledger' means double entry accounting ledger, a fundamental concept conserved across all ledger implementations, the basis of their unification.
</blockquote>
==== Security and Transparency ====
<blockquote>
This is a requirement that requires a balancing of interests as transparency can conflict with security. Users. i.e. individuals and groups (including firms) may opt
for near complete opacity of their accounts which has been the general norm. The System, domain space, however is required to have open books and line items
against its books are why it's not complete opacity.
</blockquote>
</blockquote>
 
=== Back End Packages ===
<blockquote>
==== hledger ====
 
The user reference ledger, how individuals and groups  view their ledger. hledger-web is not duplicated.
 
==== ledger ====
 
Basis of the System Journal, how the system views all ledgers. AKA ledgercli, ledger c++, the original that was ported to hledger.
 
==== SQL-Ledger / LedgerSMB ====
 
The enterprise reference ledger, typical of a firms view of their ledger. Individuals don't normally view this package and its interface is mod perl based.
 
</blockquote>
 
</blockquote>
 
= Sonstiges =
=== Commonalities ===
<blockquote>
The [https://devops1.sameboat.network/sb-app <span style="color: pink;">same boat small form factor</span>] common reusable base with ...
#DS SSO, messaging, and DCMS API setup for product families.
#Videotelephony, defaults to Jitsi.
</blockquote>
 
=== Deliverables ===
<blockquote>
*[[tl;dr|<span style="color: pink;">tl;dr</span>]] product line engineering [https://desktop.thoughtcrime.biz <span style="color: lime;">cases</span>] for [https://play.google.com/store/apps/details?id=org.commoditysoftware.greentravel <span style="color: pink;">GT2</span>], [https://tl-drak.meansofproduction.biz/products/tl-drtask <span style="color: pink;">TASKPM</span>], and [https://yas3fs.ai-integration.biz <span style="color: pink;">YAS3FS].
*stable production level  [https://doorbell.meansofproduction.biz <span style="color: pink;">Ft</span>] and [https://ac.ai-integration.biz <span style="color: pink;">AC</span>] SPAs
<br><br>
<br><br>
</blockquote>  
</blockquote><html><img width=150 align=right src=https://juan.ai-integration.biz/xasppage/xasppage.pl?XASPPAGE_STYLE=0&P=REDVANT></html>
</blockquote>
</div>
</div>

Latest revision as of 12:33, 17 February 2024


Purpose

The original purpose of the Redvant moniker was to name the separation of some product lines from their domain space aspects. Products developed under its rubric can be compiled for operation strictly on the basis of the FOSS or COTS software upon which they are based without any integration with DS though in some cases this can gut the app if presentation of a DS feature was its purpose. A non-DS application can then supply a new purpose. My tl;dr line and other product lines sold on stores may thus have core function repurposed to such new apps without committing to DS, DCP, etc..

However this separation is only in evidence at the time of its application in GC* projects and this separability is not discussed outside of such projects but it will be evident in the supporting implementation.

  • General Contracting (Rate Chart)

Précis

Redvant , or '<dcms' (dcms-bra), is a collective term for software including react and servant within a DCP context and packaged as a reusable resource demonstrated in various applications such as the tl:dr and by the KEE.

"red" could be

react, redis, light in the ~700 nm range, a proper name as in red5, the parfume, lil riding hood, Malcom X, Simply, etc..

and "vant" is just from haskell-servant.

Substance

In the original remit, use of Apache causeway (formerly ISIS) or other fat DDD pkg was intended later in fulfillment of our overall DDD product line engineering (as 'redvantis'). Some enterprise users may prefer a java basing of ISIS or an ERP core and this is still an option for GC projects.

However, subsequently, I decided a package I first ran into in the telematics work in '14/15 could be repurposed as a basis for product line engineering and Redvant. Clafer is essentially forked for this purpose here, its repos forked within 6 mo of the Sept. '23 update, which was the first activity on it in some time. It appears to be preserved and maintained but not actively developed which is fine as I intend the baseline here to veer strongly toward actual product line engineering of actually fielded apps and the redvant mission as well as DS DDD generally making it essentially Clafer for DS and my product lines.

Although I mean to keep local clafer tools close to the original on the common code intersection, there will be some rebranding to Redvant instead of Clafer to make clear the diff between just clafer the domain modeling lang and its use here.

Visibility

This is the sole exposition at this scope and will remain so. Technical detail will be in an eponymous § in the Books DCMS volume.