FINALUNA is NTTDATA's solution which we extended our own Open System Development Solution (TERASOLUNA) for the financial system and created based on the financial system needs.
What's FINALUNA API?
Purpose of API
FINALUNA API is java interface for use in business logic for the purpose of separating framework which realizes a processing mode and non-functioning requirements from business logic which realizes functional requirements
as an independent component.
Each component can be developed separately by ridding the dependency between components.
Specifically, business logic can be maintained for a long time period independently from upgrading of HW/MW products, crossovering to other rival brands or changing framework or processing mode etc.
Outline of API
- FINALUNA API defines only the function required for business logic so that homogeneous and independent business logic can be described from non-functional requirements.
- Although function addition will be performed in FINALUNA API, function modification will be not performed in the future.
- FINALUNA API is created from only java interface class as much as possible so that restrictions may not be given to framework implementation. Moreover FINALUNA-API is created by JavaSE that has very few specification changes.
Main Function (Interface) of FINALUNA API
- Type (FINALUNA type)：Original data type which FINALUNA defines
*By implementing business logic with the FINALUNA type which defined very minimum type for implementing business logic, the long-term maintenance and standardization for business logic are possible.
- Logic (Business Logic)：Interface which implement business logic
- Business logic that is created using FINALUNA API only is recyclable as a component which is independent from execution environment (H/W, M/W and Processing mode).
- DTO (Data Transfer Object)：Interface which define system traffic message
- Physical message format is concealed from business logic.
- DAO (Data Access Object)：Interface for business logic to access resource
- The definitions (DB connection, transaction control, file access, etc.) depending on the physical resource which influences non-functioning requirements or the definitions (SQL statements etc.) depending on products is concealed from business logic.
- Context：Interface which conceals execution environment
- Context is factory which acquires FINALUNA API conformable object by which implementation was concealed within business logic.
Implement classes defined for each execution environment are generated.
- FinalunaApplException,FinalunaSysException：Exception which business logic controls
- Processing of exception or error depending on execution environment such as framework is left to framework, and it conceals from business logic.
Detail of API
- Long-term AP Maintenance
- By changing of Java technology, application lifetime be thought as limiting for around five years.
- ⇒Five years or more of continuation of application assets is needed.
- ⇒Minimization of AP revision workload after system upgraded is needed.
- Standardization of AP Development
- Necessity of supporting to develop large-scale system associated with open sourcing from mainframe from now.(Number of Msteps, Over 100 human resources)
- ⇒Standardization of AP development is needed.
- Business Logic deevelopment Independent of Processing mode
- Necessity of supporting to develop large-scale system with more than one processing patterns.
- ⇒Productivity and maintainability are improved with commonalization and componentization by sharing the business logic of a different processing mode
- Test case Maintenance
- Necessity for long-term test case maintenance
- ⇒Test case modification is carried out only when business logic is modified by specification change etc.
- Portion depending on changing Java technology is concealed by framework, and taken off from business logic. Possible to use continuously without modifying business logic by renewing framework when Java technology is upgraded.
- By applying framework, developer creates business logic only. Moreover, business logic is described with API (FINALUNA API) which framework offers, so business logic standardization can be realized.
- By absorbing processing difference that come from difference of processing mode by framework, influence on a business layer (business logic) is minimized. Possible to realize sharing of the business logic in more than one processing modes and improve productivity and maintainability by this.
- Source code that depend on change of Java technology is cut off from describing test case code by using FINALUNA API, test API (FINALUNA API Ex) and driver for UT. Thereby, test case modification is occured only when business logic is updated.
○Configration Outline Chart of FINALUNA API
Explanation about each API is shown below.
Possbile to describe business logic that is standardized more by using FINALUNA type within business logic.
FINALUNA type can be added by extending base of FINALUNA type or existing FINALUNA type for each project.
Input data and output data of business logic and framework are performed via DTO. Framework have a role to execute data extraction from resource (file or database) as input source or data insertion to output target.
For this reason, developer can concentrate on business logic development without thinking of input-and-output resource.
DTO holds information including conversion rule between java standard type of API, and FINALUNA type etc.
(※) While business developer needs to set up this rule, in FINALUNA java is adopted for formula although java and XML can be considered for setting it.
Reason is that readability of Java is higher than XML and that it is thought that development efficiency of java improves by supporting compile-checking by IDE (Integrated Development Environment).
○DB, File I/O, Shared Valiable
At business logic when accessing to external resources like a file, database and shared variable, DAO which FINALUNA provides is used.
By using DAO, even if developers do not know access method for external data, they can access data for reference, updating, etc.
Moreover, mentioned previously , DTO is used for the interface between business logic and DAO. Accessing to shared variable is only allowed for referrence action.
Only pure business logic which took out generalized processing is described using FINALUNA API.
Thereby, business logic with high maintainability can be created more efficiently.
Moreover, by the reason that interface of business logic is common to online, messaging and batch, business logic can be shared between these processings.
Many exception handling classes are prepared as usage in standard java API.
Although it is very useful to specify exception which occured, when the differences are occured at exceptions handling expression by each developer, it involve the risk of becoming impossible to maintain unity as the project.
Therefore, FINALUNA minimize these issues by specifying the exception throwed within business logic.
Also, the exception which is occurred by system operator is specfied from the message activated at the time of exception throw.Thrown exception is extendable from exceptions for application, and can also be added for every project.
Java Docs, Java Source Files, Documents of FINALUNA API are downloadable from Download
Framework (Reference Implementation of API)
What's FINALUNA Framework
FINALUNA Framework released at this site is reference implementation of java interface(FINALUNA API) for business logic.
Currently our framework has many proven applied system development records in NTTDATA's financial systems.(ex.running with 5 or more MStep java source code at Apr., 2010)
FINALUNA framework, Java Doc, Tutrial, Blank Application are downloadable from Download
See each tutorial document for checking the implementation procedure.
It is reference implementation of FINALUNA API support request/reply system using REST (XML/http (s)).
Server Framework for Java (Rich Client Framework Version) of TERASOLUNA is used.
- FINALUNA Rich Client Framework Version
It is reference implementation of FINALUNA API support batch process
Job startup system support command start up, job scheduler start up, and start up from Java API.
- FINALUNA Batch Framework Version
In NTTDATA, know-how based on actual performance of abundant financial system developments is adjusted/improved as "FINALUNA recommended architectonics" corresponded to technical reference model.
As shown in figure, for the purpose of the increase in efficiency of financial open-system development, FINALUNA utilizes NTTDATA's own solution and promotes componentize of know-how by following four category table.
FINALUNA Scheme Product Line Up
- FINALUNA API/FINALUNA framework：patial disclosure
- Scale-out architectonics / System consolidation：non-disclosure
- Appliance Products
- Document Guidelines：non-disclosure
Status of supported application server lineup and operation compatibility
Followings are historical press release information.
Mar. 2008 JP1Technology Innovation Contribution Award
Mar. 2007 JP1Promotion Contribution Award
Mar. 2006 JP1Alliance Contribution Award
Aug. 2004 WebSphere Partner Prominent Solution Award 2004