Faculty of Science, Engineering and Computing Assessment Form
Submission details: The second part of the coursework should be submitted as a single zipped file to canvas, and it should contain the code and the presentation.
CI7250 Software Architecture & Programming Models Assessment Compendium-Kingston University UK
Module Learning Outcomes assessed in this piece of coursework
1.Build a complex business application that satisfies an architectural design using a service oriented component technology.
2.Evaluate the strengths and weaknesses of service oriented and component technologies.
Assignment Brief and assessment criteria (these will be discussed within a formally timetabled class)
1.Assignment Brief: Analysing and Building a Banking System Software Using Component and Service Oriented Cloud Architecture (Part 2).
Aim
The aim of the second part of the coursework is to demonstrate the knowledge and awareness of service oriented and other latest software development technologies in a given scenario. This should involve the following:
1.Apply technical proficiency in component, service and modular programming.
2.Implementation the demo system using a service oriented architecture and frameworks of your choice.
3.Produce a presentation/demonstration to discuss the used technologies and show a working prototype.
The Problem
In order to remain competitive and be able to expand its business ABC Banking Group must update its services to reflect the recent advances in information and communication technology. This will require the design and implementation of an adaptable technology migration strategy. Currently, ABC Banking Group system is a LAN based, able to be reached over the web using legacy software. Thus, the Group needs a migration strategy from a LAN based system to Cloud based system,however such a migration requires the consideration not only of the underlying Cloud service oriented architecture, and its benefits, but also should reflect the main business activities of the Group.
At the core of the Group’s business activities is its transaction processing system. The system is used to define accounts and transactions. Accounts refer to things like customers’ bank accounts, while transactions are things like deposits and withdrawals which are essentially time-stamped records.
Each account keeps track of the transactions that affect it. It also has a set of attributes such as customer’s name, address, balance, overdraft, running totals (of deposits and withdrawals) computed from the transactions etc.
CI7250 Software Architecture & Programming Models Assessment Compendium-Kingston University UK
Once an account is set up, it is used by creating transactions and by querying the attributes of the account. Transactions can come from other systems, like direct debits, or from different branches and they can be created by program control or can be created by a user filling out an input screen. Customers can access their account and conduct transactions using their desktops, mobile phones etc.
Your task is to design new service based architecture of the system. It is up to you how to go along the task. However, you have to take into account the distributed nature of the problem and the possibility of accessing account details, on the server, using different clients and different graphical user interfaces. These interfaces are programmed so that they communicate with the server.
You define how an account handles transactions that are posted to it, one way of handling transactions, is by putting them in a list in order of their date. Queries can be from a simple interface, from reports such as bank statements or from programs that are creating transactions. All interactions with the system are achieved by creating transactions and querying attributes.
The system should be able to perform a number of operations including creating account for every customer, holding the customer’s name and address, allocating a numeric code (account number) for every customer, balance, cost for overdrafts, returning the statements etc. The system also
should be able to add, delete customers and work out the total number of customers.
Coursework Documentation/Report
You are asked to address the aims and business requirements by producing a practical report which covers:
Implementation
You are asked to implement and construct your application using a programming language and programming environment that supports component/service oriented paradigm.
CI7250 Software Architecture & Programming Models Assessment Compendium-Kingston University UK
Presentation/demo
This should include a brief discussion of of the deployed technologies and a working prototype of your program which should demonstrate good knowledge of fundamental service/component oriented and modular concepts.