Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

Systems Modelling in Object-Oriented Design & Analysis Assignment-

Question 1-

The objectives of this question are to assess your abilities to:

  • participate in a group discussion forum;
  • identify the classes, their attributes and hierarchical relationships from a set of requirements
  • determine the associations among a set of classes as part of a structural processing
  • diagram essential components of a system with a modelling language
  • develop an initial structural model from a set of requirements with the Unified Modelling Language.

The question consists of two sections: 

Section 1: This is the group-work project where you are required to participate with conference postings in designing an application based on the negotiated statement of requirements given at the beginning of this question. You will work with your tutorial group for this group-work project. Remember to submit a copy of two of your individual postings together with your TMA answer document. 

Section 2: This consists of additional questions that you should do on your own and submit in your TMA answer document.

The Negotiated Statement of Requirements

The following are some background information and an extract from a negotiated statement of requirements (NSR) for developing a computerized system for De Best Bank.

A huge banking corporation, De Best Bank (DeBest), has many branches all over the world. Among the services that the branches provide to customers are processing and approving loan applications. To support these loan functions, each branch employs a number of loan officers and loan managers. To cope with expanding business, the bank now requires a new system to provide support for these operations.

Each branch is responsible for processing and approving loans up to a certain amount. This amount is known as the approval limit and depends on the experience of the loan managers in that branch. A branch is identified by its branch name and address.

When a customer approaches a branch for a loan, his particulars such as name, address and monthly income are recorded. An applicant may submit an application for the loan alone or together with another person, such as a spouse, a parent or a sibling. If there is more than one applicant submitting the application, then the same particulars will be recorded for both individuals.

When an application for a loan is received, a loan officer will be assigned to process the application. The loan officer will ensure that all the particulars pertaining to the application are correctly recorded. These particulars include the application reference number, date of application, loan amount applied for (which can be different from the loan amount actually approved subsequently), the type of loan (such as for housing or vehicle) and the status of the application (such as being processed, approved or rejected).

A certain customer may apply for more than one loan at any point of time.  A separate application is required to be submitted for each loan. Where possible, the same loan officer should be assigned to process the applications of the same customer. This is part of the bank's practice to foster better bank-customer relationship.

The record for a loan will be created once an application is processed by a loan officer and approved by a loan manager. The two most common types of loans are housing loans and vehicle loans. For a vehicle loan, the loan will have details such as the loan amount approved, the loan duration, the registration number and type of vehicle (example: saloon car, goods van, etc) recorded. For a housing loan, the loan will have details such as the loan amount approved, the loan duration and the address of the apartment or house.

Among other staff, each branch can employ several loan officers and loan managers. This staffs are identified by their staff code, and of course have a name. In addition, the experience of a loan officer is gauged by recording the number of loan applications that he has processed. Also, each loan manager has an approval limit that indicates the maximum amount of loan the manager may approve for each loan application. An application processed by a loan officer must be approved by a loan manager from the same branch as the loan officer.

The system will provide support for DeBest by:

  • maintaining information about the branch that processes and approves a loan;
  • maintaining information about applicants who submitted applications for loans;
  • maintaining information about applications for a loan, mainly housing loans and vehicle loans;
  • maintaining information about a loan when its application is approved;
  • maintaining information about the bank staff assigned to process and approve loans, namely the loan officers and loan managers.

 As part of the application functions, the following facilities should be provided:

  • display details of a branch and its bank staff involved with loans,
  • display details of applicants and their applications for loans,
  • display details of all the loans approved.

Section 1 of Question 1: Group-work Project-

The group-work project start date is indicated on the cover of this TMA. If you do not see the project conference in the MyUniSIM portal by this date, please contact your tutor immediately.

You are asked to discuss with your fellow group members how to produce the structural model for the system; i.e.:

  • the class description;
  • the class diagram; and
  • the invariant(s), if applicable.

You must not post a complete class diagram to your project discussion forum. The complete class diagram should only be submitted to your tutor together with the entire TMA solutions.

You should limit your discussions to identifying the classes, their attributes, the associations and relationships between the classes, and any invariants needed.

As part of your discussions, you are asked to submit two or three postings to the project conference.

Examples of the types of postings that would gain you credit are: 

  • initiating a new thread of discussion about some significant aspect of the system; e.g., pointing out a problem in the requirements, suggesting how a particular aspect of the system might be modelled in terms of classes and associations or explaining why you think an invariant is needed;
  • a response to a posting, where you attempt to resolve a problem that another group member has identified;
  • a response to a posting, in which you state clearly and give evidence of why you agree or disagree with another group member's suggestions, expanding significantly on what has been previously presented.

In all your postings, please maintain professional courtesy and avoid any comments that may give rise to unpleasant exchanges in the discussions. Remember that your comment may be the correct one even if someone else says it is incorrect.

(a) To complete this question you must submit to your tutor, as part of your TMA answer document, copies of TWO postings you have contributed to the discussion.

Section 2 of Question 1: Individual work-

Submit as the remaining part of Question 1, your answers to the following:

(b) Identify the classes (which may be abstract or otherwise) and their attributes that would be required for the application.

Submit the class description (this includes a brief comment for each attribute and comments indicating any inheritance structure), as your TMA answer.

(c) Construct the class association diagram for the requirements.  It is not necessarily to include attributes. Ensure that you do not include any derived or redundant association in your diagram.

(d)  State or explain clearly and informally, TWO invariants that need to accompany the class diagram.

Question 2 -

This question assesses your ability to: 

  • perform a walkthrough for a use case;
  • represent associations with appropriate information;
  • to implement associations.

For this question, we will use the partial class diagram below:

436_Figure.png

This fragment results from further development that requires the loan officer to fix an appointment with the applicant to confirm the information for each loan application, among other requirements.

The following has also been added to the class description in the structural model:

Class:  Administration (This is the orchestrating class.)

Attribute:  none

Class:  Appointment

Attribute: date, the date of the appointment

    time, the date of the appointment

(a) Give TWO reasons why Figure Q2 tells us that dynamic modelling has been carried out.

(b) The following is a specification for the use case "Add an appointment":

Use case: Add an appointment

Initiator: A loan officer

Objective: To add an appointment for a loan application to a loan officer.

Pre-condition: The loan officer's staff code, a loan application's reference number, and the intended appointment's date and time are given.

Post-condition: An appointment for a loan application with the given date and time is fixed for the loan officer.

Assumptions: All the required information is valid.

Write the complete walk-through for the use case, "Add an appointment".

(c)  Using the tabular format in Table Q2(c), explain how the association processes in Figure Q2 should be implemented, based on the above information.

Class being modified

 

Association being implemented

 

Direction of navigation

 

Multiplicity

 

Instance variable added

 

Value of instant variable

 

Justification

 

Table Q2(c)

 (d) What would be the changes (if any)  to your previous answers (for Question 2(a), (b) and (c)) if the arrow from Application to LoanOfficer is not in the diagram (in other words, the navigation is only from LoanOfficer to Application)?

Question 3 -

This question assesses your ability to: 

  • diagram essential components of a system with a modelling language;
  • construct a dynamic model in the form of a sequence diagram for a walkthrough.

This question extends Question 2 further.

The following is a specification for the use case, "List a loan officer's appointments":

Use case: List a loan officer's appointments

Initiator: A loan officer

Objective: List the details of each of a loan officer's appointments that fall within a specified period and the related loan applications.

Pre-condition: The loan officer's staff code, the start date and end date of the required period are given.

Post-condition: The name of the loan officer is shown; and for each appointment fixed for the loan officer within the specified period, the following is displayed:

  • the date and time of the appointment; and
  • the loan amount applied for.

Assumptions: The given information is valid.

A walk-through based on this specification is as follows:

Objective: To list a loan officer's appointments

Given: A loan officer's staff code, and the start date and end date of the required period.

1. Locate the instance, aLoanOfficer of LoanOfficer with the given staff code, linked to the orchestrating object via hasLoanOfficers.

2. Display aLoanOfficer's name.

3. Locate all the Application instances linked to aLoanOfficer via processes.

3.1 For each of these Application instances,

3.1.1 locate the instance, anAppointment of Appointment,  linked  to it via isFixedFor.

3.1.2 if the appointment date of  anAppointment  falls within the start date and the end date of the specified period,

3.1.2.1 display the appointment date and time.

3.1.2.2 for the Application  instance from step 3.1,  display the loan amount applied for.

Construct a suitable sequence diagram for the walk-through. Give each message an appropriate name and show the relevant arguments.  (Note: You may assume that once an attribute is retrieved, it can be displayed.)

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91953833

Have any Question?


Related Questions in Computer Engineering

Taskwrite a cc program to emulate a simple calculator that

Task Write a C/C++ program to emulate a simple calculator that can calculate and display the results of performing one of the following arithmetic operations between two integer numbers (+, -, *, /). The Calculator progr ...

Sometimes during the manufacturing of an integrated circuit

Sometimes during the manufacturing of an integrated circuit, wires-including control signal wires-are accidentally connected to +V or GND, resulting in a control signal that is stuck-at-1 (when connected to +V) or stuck- ...

Write a matlab code to solve thisit seems that the math

Write a matlab code to solve this It seems that the Math department at a rival university has once again dropped the ball, and forgotten the value of n. You are to write a script which consumes a number that specifies th ...

Question suppose that a simple fpga programmable switch

Question : Suppose that a simple FPGA programmable switch that has four destination points (N, S, E and W) and consists of 6 pass transistors with 6-SRAM cells to program each gate (T1, T2, T3, T4, T5, T6) is used. If th ...

Python programmingplease i would like some help in checking

Python programming Please I would like some help in checking if my source code for is susceptible to short-circuit evaluation.I don't need answers, I just need corrections. The source code is to check the integer parts o ...

A resistor selected at random from a bin containing 1 k ohm

A resistor selected at random from a bin containing 1 K Ohm 5% tolerance resistors is measured with an ohmmeter. The ohmmeter is old fashioned pointer type that introduces measurement error and operator error (it is hard ...

Question the three as of security are authentication

Question: The three A's of security are Authentication, Authorization, and Auditing. Write a 1-2 page paper in APA format describing these techniques and how they are used in your organization. What could be improved? Th ...

Quesiton direct manipulation and virtual environments

Quesiton: "Direct Manipulation and Virtual Environments" Please respond to the following: • Your software development company has been contracted to build a tool that will manage user accounts and rights in an Active Dir ...

Question please assist with discussion questions please

Question: Please assist with discussion questions. Please answer following questions with at least 3 paragraph response. Thank you. Access control starts first with assessing risks so you can properly identify potential ...

In the state of texas a person is legally intoxicated at 08

In the state of Texas a person is legally intoxicated at .08% BAC when operation a motor vehicle. In your opinion should the legally intoxicated percentage be lowered or raised to determine a persons intoxicated conditio ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As