All the submission documents, diagrams and sequence are in "docs" folder.
Repo maintained at: https://github.com/rust42/FINCO
A simple FINCO framework, default support and extensible functionality for party and account.
| Framework |
| Bank with Framework |
| Credit with Framework |
modules located in src/project directory
- framework (main class: finco.java)
- bank (main class: bank.java)
- ccard (main class: credit.java)
- To generate metrics: run MetricsGenerator.java in "src/scrips" directory
- To build runnable artifacts: build individual manifest file under "resources"
UML and sequence diagram available under docs folder, also included readme for sequence diagram.
directory "artifacts" contains jar. Double click or run with java -jar finco.jar
│ - Finco.java
├── project.framework.context
│ - FactoryServiceRetriever.java
│ - FrameworkContextConfigurer.java
├── project.framework.support
- Subject.java
- Observer.java
├── project.framework.core
├── accountdetails
| ├── model
| | ├── party
| | - IParty.java
| | - IPerson.java
| | - IOrganization.java
| | - Party.java
| | - Organization.java
| | - Person.java
| | ├── account.java
| | - IAccount.java
| | - Account.java
| | - IEntry.java
| | - Entry.java
| - AbstractAccountService
| - IEmailPartyService
| - IInterestCalculationStrategy
| - IReportingStrategy
| ├── service
| | - DefaultEmailToPartyService
| | - DefaultInterestCalculationStrategy
| | - DefaultReportingStrategy
| | - DefaultAccountService
├── storage
| - AbstractStorageService
| ├── service
| - DefaultInMemoryStorageService
├── util
├── project.framework.gui
├── defaults
| - ... // defaults
| - AbstractDefaultFrameworkGUI
| - GenericJTableModel
| - TableModelRowMapper
- "project.framework.context" provides a way to configure services and bootstrap client application.
- "project.framework.support" any generalized classes that adds incrementing functionality and acts as project.framework.support classes.
- "project.framework.core" contains all the project.framework.core functionalities
- "accountDetails" : contains models, and services for account related features
- "model": IParty and IAccount
- "service" default implementation for the abstractions
- ... all abstractions of "accountDetails"
- "storage" : Extensible and default storage service
- "util" any static utility methods or utility classes, that needs to be reused.
- "accountDetails" : contains models, and services for account related features
- "project.framework.gui" contains all the gui helper and default classes