Skip to content
/ FINCO Public
forked from rust42/FINCO

Project for Advanced Software Development Course

Notifications You must be signed in to change notification settings

ashrawan/FINCO

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Framework: FINCO

All the submission documents, diagrams and sequence are in "docs" folder.
Repo maintained at: https://github.com/rust42/FINCO

Introduction

A simple FINCO framework, default support and extensible functionality for party and account.

Framework
Framework
GUI
Bank with Framework
GUI
Credit with Framework

Development

modules located in src/project directory

  1. framework (main class: finco.java)
  2. bank (main class: bank.java)
  3. 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"

# Documentation

UML and sequence diagram available under docs folder, also included readme for sequence diagram.

# Running application:

directory "artifacts" contains jar. Double click or run with java -jar finco.jar

Package Structure

1. framework

│   - 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


Structure

  • "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.
  • "project.framework.gui" contains all the gui helper and default classes

About

Project for Advanced Software Development Course

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%