Professional Documents
Culture Documents
OO Systems Analysis & Design Exam
Dr. Rhonda Syler
Review the REMLSS scenario presented on page 206. Complete the following diagrams:
1. Event Table
2. Domain Class Diagram
3. Use Case Diagram
4. Use Case Description (each use case)
5. System Sequence Diagram
6. Statechart Diagram
The Real Estate Multiple Listing Service System (REMLSS) supplies information that local real estate agents use
to help them sell houses to their customers. During the month, agents list houses for sale (listings) by
contracting with homeowners. The agent works for a real estate office, which sends information on the listing
to the multiple listing service (MLS). Therefore, any agent in the community can get information on the listing.
Information on a listing includes the address, year built, square feet, number of bedrooms, number of
bathrooms, owner name, owner phone number, asking price and status code.
At any time during the month, an agent might directly request information on listings that match customer
requirements, so the agent contacts the MLS with the request. Information on the house, on the agent who
listed the house, and on the real estate office the agent works for is provided. For example, an agent might
want to call the listing agent to ask additional questions or call the home owner directly to make an
appointment to show the house.
Twice each month (on 15th and 30) the MLS produces a listing book that contains information on all listings.
These books are sent to all of the real estate agents. Many real estate agents want the books, so they are
provided even though the information is out of date. Sometimes agents and owners decide to change
information about a listing, such as reducing the price, correcting previous information on the house, or
indicating that the house is sold. The real estate office sends in these change requests to the MLS when the
agent asks the office to do so.
___________________
Note(s):
The above narrative is brief and encourages some assumptions to be made. Due to this nature, we will assume the
following:
1. The REMLSS (application software) resides on the workstations at each Real Estate Office.
2. The MLS can be accessed and used by either a Real Estate Agent or a working Clerk.
3. Concepts dealing with homeowners (i.e., buyers, sellers, offers, closing, etc…) do not directly interact or
influence the REMLS system; therefore, will not be shown in the vision of this exam.
4. Triggers that are considered to be [Temporal] are defined in a Use Case Diagram but not systematically shown in
a Use Case Description since they are influenced and controlled by user(s).
Joshua Thacker
REMLS Context Diagram
Listing Book
Real Estate
Agent Time
Office
Listing Book
New Listing Information
Real Estate
House(s) Owner(s)
Office(s)
~ KEY ~
Source: Narrative (pg 206)
R.E. ‐ Real Estate
Event: Causes the system to do something
Trigger:
External ‐ Occurs outside of the system initialized by an actor/agent
Temporal ‐ A result of reaching a point in time
State ‐ Occurs inside the system as processing need
Source: Actor/Agent
Use Case: Defines the funcitonal requirements
Response: Produced output by the system
Destination: Output to external actor/agent
Real Estate Multiple Listing Service System
Domain Class Diagram Joshua Thacker
Listing
RealEstateAgent -listingID {PK}
RealEstateOffice -agentID {FK}
-agentID {PK}
-statusCode
-officeID {PK} -officeID {FK}
-address
-officeManager -has -works -lastName -requests -has
-yearBuilt
-officeName -firstName
-squareFeet
-address -address
1 1..* 1 1..* -numberOfBedrooms
-phoneNumber -phoneNumber
-numberOfBathrooms
-fax -fax
-askingPrice
-email
-ownerName
-ownerPhoneNumber
~ Key ~
Requests Listing
Information
Produce Listing
Book
Update Listing
Information
~ Key ~
Use Case Name: Add new listing
Scenario: Add new information listing
Triggering Event: Agent and/or Clerk adds a new listing to the database
Brief Description: Agents list houses for sale (listings) by contracting with homeowners. The agent works for a real estate office,
which sends information on the listing to the multiple listing service (MLS). Information on a listing includes the
address, year built, square feet, number of bedrooms, number of bathrooms, owner name, owner phone
number, asking price and status code.
Actors: Real Estate Office Agent and/or Clerk
Related Use Case: NA
Stakeholders: Real Estate Office Agent(s) and Clerk(s)
Precondition: Real Estate Agent and/or Clerk, and homeowner information must exist
Postcondition: New listing object must exist
Flow of Events: Agent/Clerk REMLS System
1 Enter Agent ID 1.1 Verify Agent
1.2 Display Agent details
2 Add new listing information 2.1 Create new listing
2.2 Display listing details
3 Verify listing
4 Finalize session
Source:
Narrative (pg 206)
Use Case Diagram
Real Estate Multiple Listing Service System
Use Case Description Joshua Thacker
Use Case Name: Request listing information
Scenario: Request information on listings that match customer requirements
Triggering Event: Agent requests particular information on a listing
Brief Description: At any time during the month, an agent might directly request information on listings that match customer
requirements, so the agent contacts the MLS with the request. Information on the house, on the agent who
listed the house, and on the real estate office the agent works for is provided.
Actors: Agent
Related Use Case: NA
Stakeholders: Real Estate Office Agents(s) and Clerk(s)
Precondition: Real Estate Agents and information listings must exist
Postcondition: A detailed request of listings must exist
Flow of Events: Agent/Clerk REMLS System
1 Enter Agent ID 1.1 Verify Agent
1.2 Display Agent details
2 Enter listing information conditions 2.1 Update listing information
2.2 Display listing details
2.3 Add listing to report summary
2.4 Display listing report summary
3 Print listing report summary
4 Finalize session
Source:
Narrative (pg 206)
Use Case Diagram
Real Estate Multiple Listing Service System
Use Case Description Joshua Thacker
Use Case Name: Update listing
Scenario: Update information on a listing
Triggering Event: Agent asks a Real Estate Office Clerk to update the listing information on the database
Brief Description: Sometimes agents and owners decide to change information about a listing, such as reducing the price,
correcting previous information on the house, or indicating that the house is sold. The real estate office sends in
these change requests to the MLS when the agent asks the office to do so.
Actors: Agent and Real Estate Office Clerk
Related Use Case: NA
Stakeholders: Real Estate Office Agent(s) and Clerk(s)
Precondition: Real Estate Agent and homeowner information changes must exist
Postcondition: Updated homeowner listing information object must exist
Flow of Events: Agent/Clerk REMLS System
1 Enter Agent ID 1.1 Verify Agent
1.2 Display Agent details
2 Enter listing ID 2.1 Verify listing ID
2.2 Display current listing information
3 Enter/Edit changed listing information 3.1 Update listing information
3.2 Display new listing information
4 Finalize session
Source:
Narrative (pg 206)
Use Case Diagram
Real Estate Multiple Listing Service System
System Sequence Diagram Joshua Thacker
Agent Agent
addListingInformation()
* [another condition] displayListing := addListingConditions(newConditions)
displayNewListingDetails printReportSummary(currentListing)
displayListingSummary
:REMLS System::Update
Listing
Agent
displayAgentDetails := enterAgentID(agentID)
displayListingID := enterListingID(listingID)
Information verification
beginSearch()
makeChanges()
beginSearch()
Query
queryComplete() queryReportComplete()
final()
Displayed to a screen Printed as a Report Printed as a book
endQuery()
final()
Viewed
~ Key ~