Construct the class association diagram for the requirements

Assignment Help Computer Engineering
Reference no: EM131197779

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.)

Reference no: EM131197779

Questions Cloud

Determining the public transportation : Many American municipalities, over the years, have tried hard to get residents out of their cars and into public transportation. The results have been mixed, at best. Do you use public transportation?
Typical profile of a venture champion : What is the typical profile of a venture champion? What do we know about them? What makes the successful?
Are consultation and collaboration synonymous : Analyze your personal leadership attributes you feel you have that will help you in your graduate nursing role. Also discuss those attributes that you feel you may need to develop in your graduate nursing role.
Bond valuation assume the information for existing bond : Bond Valuation Assume the following information for an existing bond that provides annual couponpayments: What is the present value of the bond? If the required rate of return by investors were14 percent instead of 11 percent, what would be thepresen..
Construct the class association diagram for the requirements : ICT205e Systems Modelling in Object-Oriented Design & Analysis Assignment. 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 associati..
Find the safety factor against failure : Show transcribed image text For the beam of length 30 inches shown below, if the tension in the cable is known to be 10 kip and F = 50 kip, find the safety factor against failure if the material was
Relation to the hierarchy of service styles : Common variables and characteristics of food and beverage service systems are explained in relation to the hierarchy of service styles?
Address violence associated with hate or bias crimes : Why is it important to address violence associated with hate/bias crimes and to distinguish those events from other crimes?
Mortgages increase the risk faced by homeowners : Mortgages increase the risk faced by homeowners. Explain how. The mortgage is leverage for the homeowner, and leverage increase risk. What happens to the homeowner’s risk as the down payment on the house rises from 20 percent to 50 percent?

Reviews

Write a Review

Computer Engineering Questions & Answers

  Search on the various office suites available in the market

Johanna is doing an online course in IT. She wants to submit her assignments to her instructor, who reviews them and provides feedback in the document. Johanna also wants to include charts, graphs, and diagrams in her assignments.

  Make a stack area at 1000h

Push 10h bytes, located at data memory addresses 60000h to 6000fh, on the stack using indirect addressing. Then pop stack to memory addresses 62000h to 6200fh using indirect addressing. Load unique data into the 10h bytes in order to test the prog..

  As you learn more about disk storage options for the web

assume you are planning web server computer capacity for a business that has 5000 business customers and sells about

  Program that uses class to create many fields

write a program that uses class to create many fields.

  Explain why dfs trees cannot contain cross edges it may

a explain how a dfs can be used to look for cycles in a graph.b explain why dfs trees cannot contain cross edges. it

  Write down python program

Write down Python program

  Prove correctness for following

Prove correctness for following

  A robot has a position and a method

A robot has a position and a method void move (Maze m) thatmodifies the position. Provide a common superclass Robot whose move method does nothing

  Find the geometric means of the run times

Verify that the ratios of the means are consistent with the results obtained using the other two systems as reference systems.

  Develop and prototype a new interface design

Develop and prototype a new interface design for the system's functions using a graphical user interface. Also, develop a set of real use cases for your new interface.

  Floating-point numbers

1. Convert the 32-bit IEEE floating-point format number C43AF00016 into its decimal representation.

  Where is the reason of most of the attacks

Where is the reason of most of the attacks.explain the differences between the two main classes of intrusions: misuse and anomaly.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd