Mini EU-Rent IT

download Mini EU-Rent IT

of 60

Transcript of Mini EU-Rent IT

  • 7/31/2019 Mini EU-Rent IT

    1/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 1

    Mini EU-Rent

    IT Model

    State: operational

    Model Version: 0

    Date: 24.06.2008

  • 7/31/2019 Mini EU-Rent IT

    2/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 2

    Table of Contents

    1 INTRODUCTION 5

    1.1 Scope 5

    2 REQUIREMENTS CATALOGUE 6

    2.1 Requirements CAT R1 6

    2.2 Requirements CAT R2 7

    2.3 Requirements Accounting 7

    3 PROJECT REPORT 8

    3.1 EU-Rent CAT 83.1.1 Milestones of EU-Rent CAT 83.1.2 Open Issues of EU-Rent CAT 83.1.3 Closed Issues of EU-Rent CAT 9

    3.2 New Accounting System 9

    4 USE CASE MODEL 10

    4.1 Use Cases 104.1.1 EURIS Use Cases 10

    5 DOMAIN OBJECT MODEL 26

    5.1 Business Objects 265.1.1 EURIS Business Objects 26

    6 TEST SPECIFICATION 35

    6.1 Functional Tests 35

    6.1.1 Test Setup 356.1.2 Test Map 35

    6.2 Performance Tests 446.2.1 Test Setup 44

    7 ARCHITECTURE MODEL 46

    7.1 Deployment 467.1.1 EU-Rent IT Systems 467.1.2 Server Devices 467.1.3 Network Devices 47

    7.1.4 User Devices 477.1.5 Mobile Devices 487.1.6 Execution Environments 48

  • 7/31/2019 Mini EU-Rent IT

    3/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 3

    7.1.7 Applications 497.1.8 Rulebases 497.1.9 Database 507.1.10 Documents 50

    7.2 Test Cases 507.2.1 Test Setup 507.2.2 Server Devices 517.2.3 Network Devices 517.2.4 User Devices 527.2.5 Execution Environments 527.2.6 Applications 527.2.7 Rulebases 537.2.8 Database 537.2.9 Documents 53

    8 PSM CLASS DOCUMENTATION 548.1 Application 54

    8.1.1 Rental Model 54

    9 HARDWARE INFRASTRUCTURE DOCUMENTATION 57

    9.1 Deployment 579.1.1 Server Types 579.1.2 User Device Types 579.1.3 Network Device Types 579.1.4 Mobile Device Types 589.1.5 Telephone Types 589.1.6 Printer Types 58

    10 SOFTWARE INFRASTRUCTURE DOCUMENTATION 59

    10.1 Deployment 5910.1.1 Platforms 5910.1.2 Application Types 5910.1.3 Database Schemata 6010.1.4 Rulebases 60

  • 7/31/2019 Mini EU-Rent IT

    4/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 4

    List of Figures

    FIGURE 1 - EURIS USE CASES (XUML USE CASE DIAGRAM) 10FIGURE 2 - ACCEPT PAYMENT (XUML SEQUENCE DIAGRAM) 12

    FIGURE 3 - ACQUIRE CAR (XUML SEQUENCE DIAGRAM) 13FIGURE 4 - CREATE ADVANCE RESERVATION (XUML SEQUENCE DIAGRAM) 14FIGURE 5 - CREATE CONTRACT (XUML SEQUENCE DIAGRAM) 15FIGURE 6 - CREATE WALK-IN RENTAL (XUML SEQUENCE DIAGRAM) 16FIGURE 7 - DEFINE CAR MODEL (XUML SEQUENCE DIAGRAM) 17FIGURE 8 - GET OVERVIEW (XUML SEQUENCE DIAGRAM) 18FIGURE 9 - HANDOVER CAR (XUML SEQUENCE DIAGRAM) 20FIGURE 10 - MAINTAIN CAR (XUML SEQUENCE DIAGRAM) 21FIGURE 11 - HENDLE RENTE (XUML SEQUENCE DIAGRAM) 22FIGURE 12 - SELL CAR (XUML SEQUENCE DIAGRAM) 23FIGURE 13 - HANDLE RENTER (XUML SEQUENCE DIAGRAM) 24FIGURE 14 - EURIS BUSINESS OBJECTS (XUML DOMAIN OBJECT DIAGRAM) 26FIGURE 15 - ADVANCE RESERVATION (XUML STATE DIAGRAM) 27FIGURE 16 - CAR (XUML STATE DIAGRAM) 28FIGURE 17 - CAR MODEL (XUML STATE DIAGRAM) 29FIGURE 18 - ORGANIZATION (XUML STATE DIAGRAM) 30FIGURE 19 - PERSON (XUML STATE DIAGRAM) 30FIGURE 20 - RENTAL (XUML STATE DIAGRAM) 32FIGURE 21 - RENTER (XUML STATE DIAGRAM) 33FIGURE 22 - WALK-IN RENTAL (XUML STATE DIAGRAM) 33FIGURE 23 - TEST SETUP (DEPLOYMENT DIAGRAM) 35FIGURE 24 - TEST MAP (TEST MAP) 36FIGURE 25 - TC0: INSTANTIATION (TEST SEQUENCE DIAGRAM) 37FIGURE 26 - TC0: INSTANTIATION (POSTCONDITION) (TEST OBJECT DIAGRAM) 38FIGURE 27 - TC1: NEW CAR (PRECONDITION) (TEST OBJECT DIAGRAM) 39FIGURE 28 - TC1: NEW CAR (TEST SEQUENCE DIAGRAM) 39FIGURE 29 - TC1: NEW CAR (POSTCONDITION) (TEST OBJECT DIAGRAM) 40FIGURE 30 - TC2: WALK-IN PRICING (TEST SEQUENCE DIAGRAM) 41FIGURE 31 - TC2: WALK-IN PRICING (POSTCONDITION) (TEST OBJECT DIAGRAM) 42FIGURE 32 - TC3: NORMAL WALK-IN RENTAL (TEST SEQUENCE DIAGRAM) 43FIGURE 33 - TC4: LATE WALK-IN RENTAL (TEST SEQUENCE DIAGRAM) 43FIGURE 34 - EU-RENT IT SYSTEMS (DEPLOYMENT DIAGRAM) 45FIGURE 35 - EU-RENT IT SYSTEMS (DEPLOYMENT DIAGRAM) 46FIGURE 36 - TEST SETUP (DEPLOYMENT DIAGRAM) 51FIGURE 37 - RENTAL MODEL () 54

  • 7/31/2019 Mini EU-Rent IT

    5/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 5

    1 IntroductionThis is an example case study illustrating most of the important concepts implemented inKnowEnterprise.

    1.1 ScopeThis is the IT model of the Mini EU-Rent case study. The IT model comprises the following two distinctprojects from EU-Rent 's IT-project portfolio:

    EU-Rent CATNew Accounting System

  • 7/31/2019 Mini EU-Rent IT

    6/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 6

    2 Requirements Catalogue

    2.1 Requirements CAT R1Automate Processes1description Business activities " reject rental ", "handover car ", "check car ", and

    "accept payment " shall be fully automated.rq-id Rq5rq-type functionalrq-kind Automate Task priority Hrefers to accept payment, check car, handover car, reject rentalcreated by user (i.e. manually)

    Automate Processes2

    description Business activities " create rental contract ", "assign car ", and " calculateprice " shall be fully automated.rq-id Rq4rq-type functionalrq-kind Support Task priority Hrefers to assign car, calculate price, create rental contractcreated by user (i.e. manually)

    Car Informationdescription Information about car s and car model s shall be maintained in the IT

    system.

    rq-id Rq2rq-type functionalrq-kind Request to Remember priority Hrefers to car, car modelcreated by user based on car, car modelsatisfied by Release1

    Pricing Informationdescription Information about prices ( price per day , total price ) shall be

    maintained in the IT system.rq-id Rq3rq-type functionalrq-kind Request to Remember priority Hrefers to price per day, total pricecreated by user (i.e. manually)

    Rental informationdescription Information about renter s and rental s shall be maintained in the IT

    system.rq-id Rq1

    rq-type functionalrq-kind Request to Remember priority H

  • 7/31/2019 Mini EU-Rent IT

    7/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 7

    refers to rental, renter created by user change requests Change Request1based on rental, renter

    satisfied by Release1

    2.2 Requirements CAT R2Automated business rulesdescription Business rules shall be automated.rq-id Rq4rq-type functionalrq-kind Automate Task created by user (i.e. manually)

    NFRq1description The ruleset "DT01: Volume Discount " for discounts shall be maintainable

    by business people.rq-id NFRq1rq-type non-functionalpriority Mrefers to autom. discountingcreated by user (i.e. manually)verified by TC5: change discount rules

    2.3 Requirements Accounting

    Replace Accounting Systemdescription Our current host-based accounting system needs to be replaced by a

    new client/server-based, well integrated and flexible accountingsystem.

    rq-id RQ-071025rq-type project mgmtrq-kind (other)priority Mowner EU-Rentstatus agreedcreated by user (i.e. manually)

  • 7/31/2019 Mini EU-Rent IT

    8/60

  • 7/31/2019 Mini EU-Rent IT

    9/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 9

    3.1.3 Closed Issues of EU-Rent CATI070510adescription It should be possible to group car s into groups of comparable car

    model s.

    parent Issues CATissue type feature requestsource Johnpriority Mresolution ---reported for EURISscheduled for Release1owner EU-Rentissue status solved

    3.2 New Accounting SystemThe objective of this project is to replace our current host-based accounting system by a newclient/server-based, well integrated and flexible accounting system.

    New Accounting Systemproject type replacementdeadline 31-DEC-2008notes Needs to be coordinated with project EU-Rent CAT .owner EU-Rent /ITstatus agreed

  • 7/31/2019 Mini EU-Rent IT

    10/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 10

    4 Use Case Model

    4.1 Use CasesThis package contains all use cases of EURIS.

    4.1.1 EURIS Use CasesThis diagram shows all use cases of the EURIS application as well as all actors that may use the EURISapplication .

    EURIS Use Cases

    sales clerk

    car manager

    car clerk

    front clerk

    createcontract

    update renter'scredentials

    define car model

    acquire car

    handover car

    acceptpayment

    sell car

    maintain car

    register renter

    get overview

    create advancereservation

    create walk-inrental

    include

    include

    include

    include

    includeinclude

    include

    extend

    EURIS

    Type: xUML Use Case Diagram Last Changed By: Ms / 23.06.2008

    Figure 1 - EURIS Use Cases (xUML Use Case Diagram)

    4.1.1.1 ActorsThis section describes the actors of diagramm "EURIS Use Cases".

    car clerk description An employee of EU-Rent that is responsible for handing-over car s to

    and from renter s.owner EU-Rentstatus operationalcreated by user (i.e. manually)

    car manager

    description An employee of EU-Rent that is responsible for defining EU-Rent'soffered car model s and for purchasing car s.

    owner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    11/60

  • 7/31/2019 Mini EU-Rent IT

    12/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 12

    accept paymentaccept payment

    Description:EURIS

    xUML Service

    display details of rental show rental detailsaccept payment of a renter for a rental accept payment

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 2 - accept payment (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "accept payment".

    accept paymentdescription Registers the receipt of a payment from a renter .owner EU-Rentstatus operational

    show rental detailsdescription Displays the details of a rental .owner EU-Rentstatus operational

    4.1.1.2.2 Use Case acquire car acquire cardescription - register a new car of an existing car modelintent A recently bought car needs to be registered.pre conditions - the car model os offered by EU-Rent

    post conditions - the information about EU-Rent's car park is up-to-dateavailable requests show car model, car, show car owner EU-Rentstatus operationalused by actors car manager created by user (i.e. manually)implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case acquire car.

  • 7/31/2019 Mini EU-Rent IT

    13/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 13

    acquire caracquire car

    Description:EURIS

    xUML Service

    d isplay details of car model show car modelcreate a new car that has been aquired car display details of car show car

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 3 - acquire car (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "acquire car".

    cardescription Creates a new car .owner EU-Rentstatus operational

    show cardescription Displays the details of a car .owner EU-Rentstatus operational

    show car modeldescription Displays the details of a car model .owner EU-Rentstatus operational

    4.1.1.2.3 Use Case create advance reservationcreate advance reservationdescription - register a new renter , if not yet known

    - update the renter 's credentials, if necessary- create a new advance reservation- display advance reservation contract

    intent A renter wants to book a car for some time in the near future.pre conditions (no additional preconditions)post conditions - a new advance reservation for the renter is createdalternate courses (no additional alternative courses)available requests new advance reservation, show rental details, show car model,

    change days, person, organization, show organization, show person,

    blacklist renter, rehabilitate renter, change credit limit, renter is VIP, setdriver license

    owner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    14/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 14

    created by user (i.e. manually)implemented by EURIS

    create advance reservation

    create advance reservationDescription

    :EURISxUML Service

    create a new advance reservation new advance reservation

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 4 - create advance reservation (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "create advance reservation".

    new advance reservationdescription Books a new advance reservation for a renter .owner EU-Rentstatus operational

    4.1.1.2.4 Use Case create contractcreate contractdescription - register a new renter , if not yet known

    - update the renter 's credentials, if necessary- create a new rental- display rental contract

    intent A renter wants to book a car.pre conditions - we offer the car model requested by the renter post conditions - a new walk-in rental for the renter is created

    alternate courses - if the renter is blacklisted or has a poor creditability, reject therequest.

    available requests show rental details, show car model, change days, person,organization, show organization, show person, blacklist renter,rehabilitate renter, change credit limit, renter is VIP, set driver license

    owner EU-Rentstatus operationalused by actors sales clerk created by user implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case create contract.

  • 7/31/2019 Mini EU-Rent IT

    15/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 15

    create contractcreate contract

    Description:EURIS

    xUML Service

    display details of rental show rental detailsdisplay details of car model show car modelrenter wants to change the agreed duration of a rental change days

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 5 - create contract (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "create contract".

    change daysdescription Changes the agreed duration of a rental .owner EU-Rentstatus operational

    show car modeldescription Displays the details of a car model .owner EU-Rentstatus operational

    show rental detailsdescription Displays the details of a rental .owner EU-Rentstatus operational

    4.1.1.2.5 Use Case create walk-in rentalcreate walk-in rental

    description - register a new renter , if not yet known- update the renter 's credentials, if necessary- create a new walk-in rental- display walk-in rental contract

    intent A renter is at our desk and wants to immediately book a car.pre conditions (no additional preconditions)post conditions - a new rental for the renter is createdalternate courses - offer an upgrade, if no car of the requested car model is available.available requests new walk-in rental, pick-up car, return car, show renter, show car,

    show rental details, show car model, change days, person,organization, show organization, show person, blacklist renter,rehabilitate renter, change credit limit, renter is VIP, set driver license

    owner EU-Rentcreated by user (i.e. manually)implemented by EURIS

  • 7/31/2019 Mini EU-Rent IT

    16/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 16

    create walk-in rentalcreate walk-in rental

    Description

    :EURIS

    xUML Service

    create a new walk-in rental new walk-in rental

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 6 - create walk-in rental (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "create walk-in rental".

    new walk-in rentaldescription Books a new walk-in rental for a renter .owner EU-Rentstatus operational

    4.1.1.2.6 Use Case define car modeldefine car modeldescription either...

    - define a new car model...or...- update details about an existing car model...or...- phase-out an existing car model

    intent Details of a car model need to be changed.post conditions - the details of the car model are up-to-dateavailable requests car model, change price, upgradeable, not upgradeable, phase-out

    car model, show car, show car model, car, sell car owner EU-Rentstatus operationalused by actors car manager created by user (i.e. manually)implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case define car model.

  • 7/31/2019 Mini EU-Rent IT

    17/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 17

    define car modeldefine car model

    Description:EURIS

    xUML Service

    create a new car model car modelchange the price per day of a car model change pricedeclare a car model as "upgradeable" upgradeabledeclare a car model as "not upgradeable" not upgradeabledeclare a car model as "phased-out" phase-out car modeldisplay details of car show car display details of car model show car model

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 7 - define car model (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "define car model".

    car modeldescription Creates a new car model .owner EU-Rentstatus operational

    change pricedescription Changes the price per day of a car model .owner EU-Rentstatus operational

    not upgradeabledescription Declares a car model NOT to be upgradeable.owner EU-Rentstatus operational

    phase-out car modeldescription Declares a car model to be phased-out, i.e. not usable for rental s

    anymore.owner EU-Rentstatus operational

    show cardescription Displays the details of a car .owner EU-Rentstatus operational

    show car modeldescription Displays the details of a car model .

    owner EU-Rentstatus operational

  • 7/31/2019 Mini EU-Rent IT

    18/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 18

    upgradeabledescription Declares a car model to be upgradeable.owner EU-Rentstatus operational

    4.1.1.2.7 Use Case get overviewget overviewdescription - request the desired informationintent An employee of EU-Rent wants to get an overview of the current state

    of EU-Rent's businesspost conditions -the requested information has been deliveredavailable requests list car models, list cars, list renters, list rentals, show car, show car

    model, show organization, show person, show rental detailsowner EU-Rentused by actors car manager, front clerk created by user (i.e. manually)implemented by EURIS

    get overviewget overview

    Description:EURIS

    xUML Service

    list all car model s list car modelslist all car s list cars

    list all renter s list renterslist all rental s list rentalsdisplay details of car show car display details of car model show car modeldisplay details of organization show organizationdisplay details of person show persondisplay details of rental show rental details

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 8 - get overview (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "get overview".

    list car modelsowner EU-Rent

    list carsowner EU-Rent

    list rentalsowner EU-Rent

    list rentersowner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    19/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 19

    show cardescription Displays the details of a car .owner EU-Rentstatus operational

    show car modeldescription Displays the details of a car model .owner EU-Rentstatus operational

    show organizationdescription Displays the details of an organization .owner EU-Rentstatus operational

    show persondescription Displays the details of a person .owner EU-Rentstatus operational

    show rental detailsdescription Displays the details of a rental .owner EU-Rentstatus operational

    4.1.1.2.8 Use Case handover car handover cardescription - identify the rental that covers the handover

    either...- handover the car to the renter and explain it to the...or...- get the car from the renter and check it for damages

    intent A renter wants to pick-up a car.pre conditions - a rental has been established with that renter post conditions - the car-related interaction with a renter is completedalternate courses - if no rental has been established with that renter, send him/her to

    sales

    available requests pick-up car, return car, show renter, show car owner EU-Rentstatus operationalused by actors car clerk created by user implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case handover car.

  • 7/31/2019 Mini EU-Rent IT

    20/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 20

    handover carhandover car

    Description:EURIS

    xUML Service

    renter gets a car pick-up car renter returns a car return car display details of renter show renter display details of car show car

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 9 - handover car (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "handover car".

    pick-up cardescription Registers the pick-up of a car by a renter .owner EU-Rentstatus operational

    return cardescription Registers the return of a car by a renter .owner EU-Rentstatus operational

    show cardescription Displays the details of a car .owner EU-Rentstatus operational

    show renterdescription Displays the details of a renter .owner EU-Rentstatus operational

    4.1.1.2.9 Use Case maintain car maintain cardescription either...

    - put an existing car on maintenance...or...- register an existing car as beeing back from maintenance

    intent A car needs to be put on maintenance or is back from maintenance.

    pre conditions - the car is known and owned by EU-Rentpost conditions - the car is available or unavailable (depending on its maintenance

    status) for rentals

  • 7/31/2019 Mini EU-Rent IT

    21/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 21

    alternate courses - if the car is unrepairable, sell itavailable requests show car, show car model, maintain car, maintenance completed,

    sell car owner EU-Rentused by actors car manager created by user (i.e. manually)implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case maintain car.

    maintain carmaintain car

    Description:EURIS

    xUML Service

    display details of car show car display details of car model show car modelput a car on maintenance maintain car put a car back in operation maintenance completed

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 10 - maintain car (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "maintain car".

    maintain cardescription Puts a car on maintenance.owner EU-Rentstatus operational

    maintenance completeddescription Notifies completion of maintenance of a car .

    owner EU-Rentstatus operational

    show cardescription Displays the details of a car .owner EU-Rentstatus operational

    show car modeldescription Displays the details of a car model .owner EU-Rentstatus operational

  • 7/31/2019 Mini EU-Rent IT

    22/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 22

    4.1.1.2.10 Use Case register renter register renterdescription either...

    - register a new renter as a person

    ...or...- register a new renter as an organization

    intent A new customer needs to be registered as a renter.post conditions - the renter is known to EU-Rentavailable requests person, organization, show organization, show person, blacklist renter,

    rehabilitate renter, change credit limit, renter is VIP, set driver licenseowner EU-Rentused by actors sales clerk created by user (i.e. manually)implemented by EURIS

    hendle renteregister renter

    Description:EURIS

    xUML Service

    Create a new renter as a person personCreate a new renter as an organization organizationdisplay details of organization show organizationdisplay details of person show person

    Type: xUML Sequence Diagram Last Changed By: Ms / 23.06.2008

    Figure 11 - hendle rente (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "register renter".

    organizationdescription Creates a new organization .owner EU-Rentstatus operational

    persondescription Creates a new person .owner EU-Rentstatus operational

    show organizationdescription Displays the details of an organization .

    owner EU-Rentstatus operational

  • 7/31/2019 Mini EU-Rent IT

    23/60

  • 7/31/2019 Mini EU-Rent IT

    24/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 24

    show car modeldescription Displays the details of a car model .owner EU-Rentstatus operational

    4.1.1.2.12 Use Case update renter's credentialsupdate renter's credentialsdescription - identify the renter to be updated

    - change the desired credentials of the choosen renter intent Details about a renter need to be updated.pre conditions - the renter is knownpost conditions - details about the renter are up-to-dateavailable requests blacklist renter, rehabilitate renter, change credit limit, renter is VIP, set

    driver licenseowner EU-Rentstatus operationalused by actors sales clerk created by user implemented by EURIS

    This diagram shows all requests available to the user while carrying-out the use case update renter'scredentials.

    handle renterupdate renter's credentials

    Description

    :EURIS

    xUML Service

    Put a renter on the blacklist blacklist renter Remove a renter from the blacklist rehabilitate renter Change a renter 's credit limit change credit limitDeclare a renter as a VIP renter is VIPRegister the driver's license ... set driver license

    Type: xUML Sequence Diagram Last Changed By: Ms / 29.05.2008

    Figure 13 - handle renter (xUML Sequence Diagram)

    EventsThis section describes the events of diagramm "update renter's credentials".

    blacklist renterdescription Puts a renter on the blacklist.owner EU-Rentstatus operational

    change credit limitdescription Changes the credit limit of a renter .owner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    25/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 25

    status operational

    rehabilitate renterdescription Removes a renter from the blacklist.

    owner EU-Rentstatus operational

    renter is VIPdescription Declares a renter as a VIP.owner EU-Rentstatus operational

    set driver licenseowner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    26/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 26

    5 Domain Object Model

    5.1 Business ObjectsThis package contains all business object of EURIS.

    5.1.1 EURIS Business ObjectsThis diagram shows all business objects of EURIS.

    EURIS Business Objects

    renter

    id : textis VIP : booleancredit limit : real/has open amount : real = .../is on blacklist : boolean = ...

    car model

    id : textcategory : textprice per day : realservice interval : ordinal/available cars : any/is phased-out : boolean = ...

    rental

    id : textagreed duration : ordinalstart date : dateexpected return : date/total price : real = .../discount : ordinal/penalty : real = .../promotion discount : ordinal = ...

    /rental details : text = ...DS

    person

    license no : text

    organization

    walk-in re ntal advance reservation

    car

    id : textmileage : ordinalnext service : ordinal/is available : boolean = ...

    0..1 1

    used car using rental

    *

    1signing renter

    signed rentals*

    1

    booked model

    booking rentals

    *

    1 type

    cars

    ** downgrade upgrade

    Type: xUML Domain Object Diagram Last Changed By: Ms / 24.06.2008

    Figure 14 - EURIS Business Objects (xUML Domain Object Diagram)

    5.1.1.1 Domain Objects

    This section describes the domain objects of diagramm "EURIS Business Objects".advance reservationdescription A rental that is contracted with EU-Rent at least one day before the

    day of the scheduled pickup date/time of the car .owner EU-Rentstatus operationalcreated by user (i.e. manually)superclass rental

    This diagram shows the dynamic behavior of the business object advance reservation.

  • 7/31/2019 Mini EU-Rent IT

    27/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 27

    advance reservation

    normal

    advance reservation

    advance reservat ion/'/discount ' := (

    15 if ' agreed duration ' >= 14 and ' signing renter '. ' is VIP';10 if ' agreed duration ' >= 14 and not ' signing renter '. ' is VIP';10 if ' agreed duration ' >= 7 and ' agreed duratio n ' < 14 and ' signing renter '. ' is VIP';5 if ' agreed duration ' >= 7 and ' agreed duration ' < 14 and not ' signing renter '.' is VIP';5 if ' agreed duration ' < 7 and ' signing renter '.' is VIP';0 otherwise);'start date ' := start_date

    Automation of rule set DT01: Volume Discount .

    Type: xUML State Diagram Last Changed By: Ms / 25.10.2007

    Figure 15 - advance reservation (xUML State Diagram)

    cardescription A vehicle owned by EU-Rent and rented to its renter s.owner EU-Rentstatus operationalcreated by user (i.e. manually)

    id : textmileage : ordinalnext service : ordinal

    attribute

    /is available : boolean =in_state(#('normal'.'available')) and 'using rental' = []

    This diagram shows the dynamic behavior of the business object car.

  • 7/31/2019 Mini EU-Rent IT

    28/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 28

    car

    on maintenanceavailable

    maintain car[ 'using rental' \= []]/box 'Car is currently in use!'

    normalsell car[ 'using rental' \= []]/box 'Car still in use!'

    car

    w hen( ' car model ' = [] and 'using rental' = [] )/ sell car[ 'using rental' = []]/

    when( mileage >= ' next service ' )[ 'using rental' = []]/

    m aintenance com pleted/'next service ' := mileage + ' car model '. ' service interval '

    car/find CM where id = model ; if CM = [ ] then (box 'Inv alid car mo del!'; reject);tie to CM via ' type ';id := vin ;mileage := 0;'next service ' := ' type '. ' service interval '

    maintain car[ 'using rental' = []]/

    Type: xUML State Diagram Last Changed By: Ms / 18.08.2007

    Figure 16 - car (xUML State Diagram)

    car modeldescription A named type of car built to the same specification, e.g., body style,

    engine size, fuel type.owner EU-Rentstatus operationalcreated by user (i.e. manually)

    id : textcategory : textprice per day : real

    service interval : ordinal/available cars : any

    attribute

    /is phased-out : boolean =in_state('phased-out')

    This diagram shows the dynamic behavior of the business object car model.

  • 7/31/2019 Mini EU-Rent IT

    29/60

  • 7/31/2019 Mini EU-Rent IT

    30/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 30

    organization

    normal

    organization

    organization/' credit lim it ' := 2000

    Type: xUML State Diagram Last Changed By: Ms / 18.08.2007

    Figure 18 - organization (xUML State Diagram)

    persondescription A renter that is a person.owner EU-Rentstatus operationalcreated by user (i.e. manually)attribute license no : textsuperclass renter

    This diagram shows the dynamic behavior of the business object person.

    person

    normalwhen( type = person and number_of 'signed rentals ' > 0 and ' license no ' = '' )/

    box 'No v alid driver license defined!'; rejectset driver license/ 'license no ' := license

    person

    person/' license no ' := license ;

    'credit limit ' := 1000

    Automation of business rule OR04: driver license .

    Type: xUML State Diagram Last Changed By: Ms / 22.10.2007

    Figure 19 - person (xUML State Diagram)

    rental

    description A contract with a renter specifying use of a car of a car model for anumber of days to drive from branch to branch .

    owner EU-Rentstatus operationalcreated by user (i.e. manually)

    id : textagreed duration : ordinal

    start date : dateexpected return : date/total price : real ='booked model'.'price per day' * 'agreed duration' * (100 - '/discount')/ 100 - '/promotion discount' + '/penalty'

    attribute

    /discount : ordinal

  • 7/31/2019 Mini EU-Rent IT

    31/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 31

    /penalty : real =( days(now - 'expected return') * (20 + 'booked model'.'price per day')if 'expected return' \= '$null$' and now > 'expected return';

    days(now - 'expected return') * (5 + 'booked model'.'price per day') if 'expected return' \= '$null$' and now < 'expected return';

    0 otherwise)/promotion discount : ordinal =call 'DS'.'get promotion discount'('pickup-date' := 'start date', duration:= 'agreed duration', car_model := 'booked model'.id)/rental details : text =['Details of ', self.type, ':', @nl,

    ' Rental id: ', id, @nl,' Customer: ', 'signing renter'.id, @nl,' Car model: ', 'booked model'.id, @nl,' Start date: ', 'start date', @nl,' Requested duration: ', 'agreed duration', ' days', @nl,' Total price: ', '/total price', @nl]

    DS

    This diagram shows the dynamic behavior of the business object rental.

  • 7/31/2019 Mini EU-Rent IT

    32/60

  • 7/31/2019 Mini EU-Rent IT

    33/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 33

    renter

    on blacklist

    normalwhen( ' /has open amount ' > ' credit limit ' )/box 'Credit limit exceeded!'; rejectnew advance reservation/

    create Rental from 'advance reservat ion' by 'advance reservat ion' (renter := self, car_model := model , start_date := start, days := days )change credit limit/' credit limit ' := amountrenter is VIP/' is VIP' := true; if ' credit limit ' < 2000 then ' credit lim it ' := 2000new walk-in rental/

    create Rental from 'walk-in rental ' by 'walk-in rental' (renter := self, car_model := model , days := days )

    renter

    blacklist renter/' is VIP' := false

    rehabilitate renter/

    renter/ id := name ;'is VIP' := false

    Enforcement of business rule OR03: credit limit .

    Enforcement of business rule OR01: blacklist .

    Automation of business rule SR01: open amount via derived attribute /has open amount .

    Type: xUML State Diagram Last Changed By: Ms / 24.06.2008

    Figure 21 - renter (xUML State Diagram)

    walk-in rentaldescription A rental that is contracted with EU-Rent on the day that the car is

    picked up.owner EU-Rentstatus operationalcreated by user (i.e. manually)superclass rental

    This diagram shows the dynamic behavior of the business object walk-in rental.

    walk-in rental

    normal

    walk-in rental

    w alk-in rental/' /discount ' := (

    5 if ' agreed duration ' >= 14 or ' signing renter '. ' is VIP';0 otherwise)

    Automation of rule set DT01: Volume Discount .

    Type: xUML State Diagram Last Changed By: Ms / 25.10.2007

    Figure 22 - walk-in rental (xUML State Diagram)

  • 7/31/2019 Mini EU-Rent IT

    34/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 34

  • 7/31/2019 Mini EU-Rent IT

    35/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 35

    6 Test Specification

    6.1 Functional Tests

    6.1.1 Test SetupThis diagram shows the technical setup of EU-Rent's IT systems used to perform functional tests.

    Test Setup

    Jupiter (London)

    Solaris1 : [Solaris]

    AppServer1 : [IBM Websphere]

    Decision Service : [JRules]

    RB1 : Pricing

    ER1HP : EURIS

    Query Service : [Oracle]

    C-DB : Customers

    P-DB : Products

    Price List.hlp : Pricing Help

    LAN Desktop1: MS OfficeHub1

    Type: Deployment Diagram Last Changed By: Ms / 26.10.2007

    Figure 23 - Test Setup (Deployment Diagram)

    6.1.2 Test MapThis diagram gives an overview of the available test cases as well as their interdependencies.

  • 7/31/2019 Mini EU-Rent IT

    36/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 36

    Test Map

    TC0: ...Test Case

    TC2: walk-in ...Test Case

    TC3: normal ...Test Case

    TC4: late ...Test Case

    TC1: new car Test Case

    TG1: all testsTest Case

    TC5: change ...Test Case

    include include includeinclude

    includeinclude include include

    include

    Type: Test Map Last Changed By: Ms / 26.10.2007

    Figure 24 - Test Map (Test Map)

    6.1.2.1 Test CasesThis section describes the test cases of diagramm "Test Map".

    6.1.2.1.1 Test Case TC0: instantiationTC0: instantiationobjective To have an initial set of data to perform some functional tests.method Scriptowner EU-Rentstatus operational

    Test Sequence TC0: instantiationThis diagram specifies the steps required to perform test case TC0: instantiation.

  • 7/31/2019 Mini EU-Rent IT

    37/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 37

    TC0: instantiationTC0: instantiation

    Description:EURISSUT

    :InstantiaterTest Component

    Create p1 person( 'John' )Create p2 person( 'Markus' )Create p3 person( 'Daniel' )Make p3 a VIP renter is VIP( 'Daniel' )Create p4 person( 'Bill' )Create cm1 car model( 'Audi', 'limousine', 59, 15000, '$null$' )Create cm2 ... car model( 'BMW', 'limousine', 69, 15000, '$null$' )Create cm3 car model( 'Land Rover', 'SUV', 79, 10000, '$null$' )Create cm4 ... car model( 'Porsche', 'sportscar', 89, 10000, '$null$' )Create cm5 ... car model( 'VW', 'limousine', 49, 20000, '$null$' )Create c1 car( 'BMW', 'bmw1' )Create c2 car( 'VW', 'vw1' )Create c3 car( 'VW', 'vw2' )

    Type: Test Sequence Diagram Last Changed By: Ms / 26.10.2007

    Figure 25 - TC0: instantiation (Test Sequence Diagram)

    TC0: instantiationmatch visibleowner EU-Rentstatus operational

    PostconditionsThis diagram specifies the available test data after running test case TC0: instantiation.

  • 7/31/2019 Mini EU-Rent IT

    38/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 38

    TC0: instantiation (postcondition)

    p1:person

    id = Johnis VIP = falsecredit limit = 1000

    p2:person

    id = Markusis VIP = falsecredit limit = 1000

    p3:person

    id = Danielis VIP = truecredit limit = 1000

    p4:person

    id = Billis VIP = falsecredit limit = 1000

    cm2:car model

    id = BMWcategory = limousineprice per day = 69service interval = 15000

    c1:car

    id = bmw1mileage = 0

    cm3:car model

    id = Land Rover category = SUVprice per day = 79service interval = 10000

    cm1:car model

    id = Audicategory = limousineprice per day = 59service interval = 15000

    c2:car

    id = vw1mileage = 0

    cm4:car model

    id = Porschecategory = sportscar price per day = 89service interval = 10000

    cm5:car model

    id = VWcategory = limousineprice per day = 49service interval = 20000

    c3:car

    id = vw2mileage = 0

    TC0: instantiation

    match = complete

    TC0: instantiation (postcondition)

    Type: Test Object Diagram Last Changed By: Ms / 26.10.2007

    Figure 26 - TC0: instantiation (postcondition) (Test Object Diagram)

    TC0: instantiation (postcondition)match completeowner EU-Rent

    status operational

    6.1.2.1.2 Test Case TC1: new car TC1: new carobjective Test purchasing of a new car.method Black-box testowner EU-Rentstatus operational

    PreconditionsThis diagram specifies the required precondition before running test case TC1: new car.

  • 7/31/2019 Mini EU-Rent IT

    39/60

  • 7/31/2019 Mini EU-Rent IT

    40/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 40

    status operational

    PostconditionsThis diagram specifies the postcondition after running test case TC1: new car.

    TC1: new car (postcondition)

    cm1:car model

    id = BMWcategory = limousineprice per day = 69service interval = 15000

    xUML Domain Object

    c1:car

    id = bmw1mileage = 19354next service = 30000

    xUML Domain Object c2:car

    id = bmw2mileage = 0next service = 15000

    TC1: new car

    match = visible

    TC1: new car (postcondition)

    Type: Test Object Diagram Last Changed By: Ms / 21.11.2007

    Figure 29 - TC1: new car (postcondition) (Test Object Diagram)

    TC1: new car (postcondition)match visibleowner EU-Rentstatus operational

    6.1.2.1.3 Test Case TC2: walk-in pricingTC2: walk-in pricingobjective Test of the pricing rules for a walk-in rental.method Black-box testowner EU-Rentstatus operationalverifies requirements autom. pricing

    Test Sequence TC2: walk-in pricingThis diagram specifies the steps required to perform test case TC2: walk-in pricing.

  • 7/31/2019 Mini EU-Rent IT

    41/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 41

    TC2: walk-in pricingTC2: walk-in pricing

    Description:EURISSUT

    :TesterTest Component

    Create initial data TC0: instantiationCreate rental w1 for 7 days new walk-in rental( 'BMW', 7 )Display w1 show walk-in rentalCreate rental w2 for 14 days new walk-in rental( 'BMW', 14 )Display w2 show walk-in rentalDeclare renter as VIP renter is VIPCreate rental w3 for 7 days (VIP) new walk-in rental( 'BMW', 7 )Display w3 show walk-in rental

    Try create rental w4 for 20 days new walk-in rental( 'BMW', 20 )Credit limit exceeded error

    Type: Test Sequence Diagram Last Changed By: Ms / 29.05.2008

    Figure 30 - TC2: walk-in pricing (Test Sequence Diagram)

    TC2: walk-in pricingmatch visibleowner EU-Rentstatus operational

    PostconditionsThis diagram specifies the postcondition after running test case TC2: walk-in pricing.

  • 7/31/2019 Mini EU-Rent IT

    42/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 42

    TC2: walk-in pricing (postcondition)

    w2:walk-in rental

    agreed duration = 14/total price = 917.7/discount = 5%/penalty = 0

    /promotion discount = 0

    p3:person

    id = Danielis VIP = truecredit limit = 1000

    w3:walk-in rental

    agreed duration = 7/total price = 458.85/discount = 5%/penalty = 0

    /promotion discount = 0

    p4:person

    id = Billis VIP = falsecredit limit = 1000

    p1:person

    id = Johnis VIP = falsecredit limit = 1000

    cm1:car model

    id = Audicategory = limousineprice per day = 59service interval = 15000

    c1:car

    id = Audi1mileage = 0

    w1:walk-in rental

    agreed duration = 7/total price = 483/discount = 0%/penalty = 0

    /promotion discount = 0

    p2:person

    id = Markusis VIP = falsecredit limit = 1000

    TC2: walk-in pricing

    match = visible

    TC2: walk-in pricing (postcondition)

    Type: Test Object Diagram Last Changed By: Ms / 26.10.2007

    Figure 31 - TC2: walk-in pricing (postcondition) (Test Object Diagram)

    TC2: walk-in pricing (postcondition)match visibleowner EU-Rentstatus operational

    6.1.2.1.4 Test Case TC3: normal walk-in rentalTC3: normal walk-in rentalobjective Test of the overall process of a walk-in rental.method Black-box testowner EU-Rent

    status operational

    Test Sequence TC3: normal walk-in rentalThis diagram specifies the steps required to perform test case TC3: normal walk-in rental.

  • 7/31/2019 Mini EU-Rent IT

    43/60

  • 7/31/2019 Mini EU-Rent IT

    44/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 44

    TC4: late walk-in rentalmatch visibleowner EU-Rentstatus operational

    6.1.2.1.6 Test Case TC5: change discount rulesTC5: change discount rulesobjective Test the usability of discount rule changes.method Usability testowner EU-Rentstatus under reviewverifies requirements NFRq1, autom. discounting

    6.1.2.1.7 Test Case TG1: all testsTG1: all testsobjective Perform all tests in one goowner EU-Rentstatus operational

    6.2 Performance Tests

    6.2.1 Test SetupThis diagram shows the physical deployment of EU-Rent's IT systems. This is also the configuration usedto carry-out performance tests.

  • 7/31/2019 Mini EU-Rent IT

    45/60

  • 7/31/2019 Mini EU-Rent IT

    46/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 46

    7 Architecture Model

    7.1 Deployment

    7.1.1 EU-Rent IT SystemsThis diagram shows the physical deployment of EU-Rent's IT systems. This is also the configuration usedto carry-out performance tests.

    EU-Rent IT Systems

    Mobile Device1ADSL/WLAN Gateway

    WLAN

    Jupiter (London)

    Solaris1 : [Solaris]

    AppServer1 : [IBM Websphere]

    Decision Service : [JRules]

    RB1 : Pricing

    ER1HP : EURIS

    Query Service : [Oracle]

    C-DB : Customers

    P-DB : Products

    Price List.hlp : Pricing Help

    LAN

    Notebook1: MS Office

    Desktop1: MS Office

    Internet

    Desktop2: MS Office

    Pluto (Zrich)

    DBMS : [Oracle]

    Locals : Customers

    Preisliste.hlp : Pricing Help

    EU-Rent VPN

    Desktop3: MS Office

    Router

    Hub1

    Hub2

    Boss

    Printer2

    Printer1

    IEEE 802.11

    VPN

    VPN

    VPN

    IEEE 802.11

    ADSL

    IEEE 802.11

    Type: Deployment Diagram Last Changed By: Ms / 04.03.2008

    Figure 35 - EU-Rent IT Systems (Deployment Diagram)

    7.1.2 Server DevicesThis section describes the server devices of diagramm "EU-Rent IT Systems".

    Jupiter (London)device model Sun Server

  • 7/31/2019 Mini EU-Rent IT

    47/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 47

    operating system Solaris 10location Londonserial no S123-9162owner EU-Rent

    status operational

    Pluto (Zrich)device model Sun Server operating system Solaris 10location Zrichserial no S124-9713owner EU-Rentstatus operational

    7.1.3 Network DevicesThis section describes the network devices of diagramm "EU-Rent IT Systems".

    ADSL/WLAN Gatewaydevice model Gatewaynetwork device type Gatewaylocation 2nd floor

    Hub1device model Cisco Hubnetwork device type Hublocation 1st floor serial no 78xh32

    Hub2device model Cisco Hubnetwork device type Hublocation 2nd floor serial no 93ab63

    Routerdevice model Cisco Router network device type Router location 1st floor

    7.1.4 User DevicesThis section describes the user devices of diagramm "EU-Rent IT Systems".

    Desktop1device model HP Desktopoperating system Windows XPlocation Londonserial no PC-001owner EU-Rentstatus operational

    Desktop2device model HP Desktopoperating system Windows XP

  • 7/31/2019 Mini EU-Rent IT

    48/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 48

    location Londonserial no PC-002owner EU-Rent

    Desktop3device model HP Desktopoperating system Windows XPlocation Londonserial no PC-003owner EU-Rentstatus operational

    Notebook1device model HP Notebook operating system Windows Vistalocation Zrich

    serial no PC-1001owner EU-Rentstatus operational

    7.1.5 Mobile DevicesThis section describes the mobil devices of diagramm "EU-Rent IT Systems".

    Mobile Device1device model PDAoperating system Windows Mobile 6.1serial no X5815-2983-1624

    owner EU-Rentstatus operational

    7.1.6 Execution EnvironmentsThis section describes the execution environments of diagramm "EU-Rent IT Systems".

    AppServer1deployed on Solaris1license key 18da-ff93-b6c2-285downer EU-Rentstatus operational

    DBMSdeployed on Pluto (Zrich)owner EU-Rentstatus operational

    Decision Servicedeployed on AppServer1owner EU-Rentstatus operational

    Query Service

    deployed on Jupiter (London)owner EU-Rentstatus operational

  • 7/31/2019 Mini EU-Rent IT

    49/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 49

    Solaris1deployed on Jupiter (London)license key D18824-X66242owner EU-Rentstatus operational

    7.1.7 ApplicationsThis section describes the applications of diagramm "EU-Rent IT Systems".

    (unnamed)app. type MS Officelicense key 789deployed on Desktop3owner EU-Rentstatus operational

    (unnamed)app. type MS Officelicense key 123deployed on Desktop1owner EU-Rentstatus operational

    (unnamed)app. type MS Officelicense key 112deployed on Notebook1owner EU-Rentstatus operational

    (unnamed)app. type MS Officelicense key 456deployed on Desktop2owner EU-Rentstatus operational

    ER1HP

    description This is the productive EURISapplication.app. type EURISdeployed on AppServer1owner EU-Rent

    7.1.8 RulebasesThis section describes the rulebases of diagramm "EU-Rent IT Systems".

    RB1owner EU-Rentstatus operationaldeployed on Decision ServiceRB type Pricing

  • 7/31/2019 Mini EU-Rent IT

    50/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 50

    7.1.9 DatabaseThis section describes the databases of diagramm "EU-Rent IT Systems".

    C-DBowner EU-Rent

    status operationaldeployed on Query ServiceDB type Customers

    Localsowner EU-Rentstatus operationaldeployed on DBMSDB type Customers

    P-DBowner EU-Rentstatus operationaldeployed on Query ServiceDB type Products

    7.1.10 DocumentsThis section describes the documents of diagramm "EU-Rent IT Systems".

    Preisliste.hlpdeployed on Pluto (Zrich)doc. type Pricing Help

    Price List.hlpdeployed on Jupiter (London)doc. type Pricing Help

    7.2 Test Cases

    7.2.1 Test SetupThis diagram shows the technical setup of EU-Rent's IT systems used to perform functional tests.

  • 7/31/2019 Mini EU-Rent IT

    51/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 51

    Test Setup

    Jupiter (London)

    Solaris1 : [Solaris]

    AppServer1 : [IBM Websphere]

    Decision Service : [JRules]

    RB1 : Pricing

    ER1HP : EURIS

    Query Service : [Oracle]

    C-DB : Customers

    P-DB : Products

    Price List.hlp : Pricing Help

    LAN Desktop1: MS OfficeHub1

    Type: Deployment Diagram Last Changed By: Ms / 26.10.2007Figure 36 - Test Setup (Deployment Diagram)

    7.2.2 Server DevicesThis section describes the server devices of diagramm "Test Setup".

    Jupiter (London)device model Sun Server operating system Solaris 10location Londonserial no S123-9162owner EU-Rentstatus operational

    7.2.3 Network DevicesThis section describes the network devices of diagramm "Test Setup".

    Hub1device model Cisco Hubnetwork device type Hublocation 1st floor serial no 78xh32

  • 7/31/2019 Mini EU-Rent IT

    52/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 52

    7.2.4 User DevicesThis section describes the user devices of diagramm "Test Setup".

    Desktop1device model HP Desktop

    operating system Windows XPlocation Londonserial no PC-001owner EU-Rentstatus operational

    7.2.5 Execution EnvironmentsThis section describes the execution environments of diagramm "Test Setup".

    AppServer1deployed on Solaris1

    license key 18da-ff93-b6c2-285downer EU-Rentstatus operational

    Decision Servicedeployed on AppServer1owner EU-Rentstatus operational

    Query Servicedeployed on Jupiter (London)owner EU-Rent

    status operational

    Solaris1deployed on Jupiter (London)license key D18824-X66242owner EU-Rentstatus operational

    7.2.6 ApplicationsThis section describes the applications of diagramm "Test Setup".

    (unnamed)app. type MS Officelicense key 123deployed on Desktop1owner EU-Rentstatus operational

    ER1HPdescription This is the productive EURISapplication.app. type EURISdeployed on AppServer1owner EU-Rent

  • 7/31/2019 Mini EU-Rent IT

    53/60

  • 7/31/2019 Mini EU-Rent IT

    54/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 54

    8 PSM Class Documentation

    8.1 Application

    8.1.1 Rental ModelRental Model

    Rental{Abstract}

    _agreed_duration : int# _expected_return : DateTime# _promotion_discount : int# _start_date : DateTime# _state : string-Rental (in signi ng_renter : Renter, in booked_model : CarModel, in start_date : DateTime, in agreed_duration : int)+

    property Discount () : int+property AgreedDuration () : int+property UsedCar () : Car +property BookedModel () : CarModel+property SigningRenter () : Renter +property StartDate () : DateTime+property ExpectedReturn () : DateTime+property TotalPrice () : float+property Penalty () : float+property PromotionDiscount () : int+

    AcceptPayment (in amount : float)+ChangeDays (in days : int)+PickUpCar ()+ReturnCar (in distance : int)+ToString () : string+

    Renter

    _id : string- _credit_limit : int- _is_VIP : bool- _state : string-Renter (in id : string, in is_VIP : bool)+

    property Id () : string+property CreditLimit () : int+property IsVIP () : bool+property OpenAmount () : float+property IsOnBlacklist () : bool+property SignedRentals () : Renter +

    GetRental (in start_date : DateTime) : Rental+

    NewAdvanceRental (in car_model : CarModel, in start_date : DateTime, in days : int) : Rental+NewWalkInRental (in car_model : CarModel, in days : int) : Rental+BlacklistRenter ()+RehabilitateRenter ()+AddRental (in rental : Rental)+RemoveRental (in rental : Rental)+ToString () : string+

    WalkInRental

    WalkInRental (in si gning_renter : Renter, in booked_model : CarModel, in agreed_duration : int)+property Discount () : int+

    Session

    _startDate : DateTime- _endDate : DateTime- _outputWriter : TextWriter -

    property Out () : TextWriter +property StartDate ()+property EndDate ()+

    DisplayMessage (in message : string)+SetOut (in writer : TextWriter)+

    AdvanceRental

    AdvanceRental (in signing_renter, in booked_model, in start_date, in agreed_duration)+property Discount () : int+

    Car

    _id : string- _mileage : int- _next_service : int- _state : string-Car (in car_model : CarModel, in id : string, in mileage : int)+

    property Id () : string+property Mileage () : int+property NextService () : int+property CarModel () : CarModel+property IsAvailable () : bool+

    AddRental (in rental : Rental)+RemoveRental ()+SellCar ()+MaintainCar ()+MaintenanceCompleted ()+ToString () : string+

    CarModel

    _id : string- _price_per_day : float- _service_interval : int- _state : string-CarModel (in id : string, in price_per_day : float, in service_interval : int)+

    property Id () : string+property PricePerDay () : float+property ServiceInterval () : int+property IsPhasedOut () : bool+property AvailableCars ()+property Cars ()+

    ChangePrice (in price : float)+Upgradable ()+NotUpgradable ()+BookCarModel (in rental : Rental)+RemoveRental (in rental : Rental)+PhaseOutCarModel ()+AddCar (in car : Car)+RemoveCar (in car : Car)+ToString () : string+

    *

    1

    using_rental

    used_car *

    1 is_of

    cars

    * *upgrade

    *

    1

    booked_model

    booking_rentals*

    1

    signing_renter

    signed_rentals

    BOM-Properties:Display textUpdateObjectStateVisible

    Type: Last Changed By: Ms / 09.05.2007

    Figure 37 - Rental Model ()

    8.1.1.1 ClassesThis section describes the classes of diagramm "Rental Model".

    AdvanceRental AdvanceRental (in signing_renter, in booked_model, in start_date, inagreed_duration)

    operation

    Discount () : intsuperclass Rental

    Car

    _id : string _mileage : intattribute

    _next_service : int

  • 7/31/2019 Mini EU-Rent IT

    55/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 55

    _state : stringCar (in car_model : CarModel, in id : string, in mileage : int)Id () : string

    Mileage () : int

    NextService () : intCarModel () : CarModelIsAvailable () : bool

    AddRental (in rental : Rental)RemoveRental ()SellCar ()

    MaintainCar () MaintenanceCompleted ()

    operation

    ToString () : string

    CarModel _id : string

    _price_per_day : float _service_interval : int

    attribute

    _state : stringCarModel (in id : string, in price_per_day : float, in service_interval : int)Id () : stringPricePerDay () : floatServiceInterval () : intIsPhasedOut () : bool

    AvailableCars ()Cars ()ChangePrice (in price : float)Upgradable ()NotUpgradable ()BookCarModel (in rental : Rental)RemoveRental (in rental : Rental)PhaseOutCarModel ()

    AddCar (in car : Car)RemoveCar (in car : Car)

    operation

    ToString () : string

    Rental _agreed_duration : int _expected_return : DateTime

    _promotion_discount : int _start_date : DateTime

    attribute

    _state : stringRental (in signing_renter : Renter, in booked_model : CarModel, in

    start_date : DateTime, in agreed_duration : int)Discount () : int

    AgreedDuration () : intUsedCar () : Car BookedModel () : CarModelSigningRenter () : Renter StartDate () : DateTimeExpectedReturn () : DateTime

    TotalPrice () : floatPenalty () : float

    operation

    PromotionDiscount () : int

  • 7/31/2019 Mini EU-Rent IT

    56/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 56

    AcceptPayment (in amount : float)ChangeDays (in days : int)PickUpCar ()ReturnCar (in distance : int)

    ToString () : string

    Renter _id : string _credit_limit : int _is_VIP : bool

    attribute

    _state : stringRenter (in id : string, in is_VIP : bool)Id () : stringCreditLimit () : intIsVIP () : boolOpenAmount () : float

    IsOnBlacklist () : boolSignedRentals () : Renter GetRental (in start_date : DateTime) : RentalNewAdvanceRental (in car_model : CarModel, in start_date :DateTime, in days : int) : RentalNewWalkInRental (in car_model : CarModel, in days : int) : RentalBlacklistRenter ()RehabilitateRenter ()

    AddRental (in rental : Rental)RemoveRental (in rental : Rental)

    operation

    ToString () : string

    Session _startDate : DateTime _endDate : DateTime

    attribute

    _outputWriter : TextWriter Out () : TextWriter StartDate ()EndDate ()DisplayMessage (in message : string)

    operation

    SetOut (in writer : TextWriter)

    WalkInRental

    WalkInRental (in signing_renter : Renter, in booked_model : CarModel,in agreed_duration : int)operation

    Discount () : intsuperclass Rental

  • 7/31/2019 Mini EU-Rent IT

    57/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 57

    9 Hardware Infrastructure Documentation

    9.1 Deployment

    9.1.1 Server TypesSun Serverdevice kind Server Devicedevice subtype Computing Devicemanufacturer Sun Microsystemsmodel Sun Fire V490 Server owner EU-Rentstatus operational

    9.1.2 User Device TypesHP Desktopdevice kind User Devicedevice subtype Computing Devicemanufacturer Hewlet Packardmodel HP Compaq dc5700owner EU-Rentstatus operational

    HP Notebook device kind User Device

    device subtype Computing Devicemanufacturer Hewlett Packardmodel nw8240owner EU-Rentstatus operational

    9.1.3 Network Device TypesCisco Hubdevice kind Network Devicedevice subtype Hubmanufacturer Cisco

    Cisco Routerdevice kind Network Devicedevice subtype Router manufacturer Cisco Systemsmodel 7200 Series

    Gatewaydevice kind Network Devicedevice subtype Gatewaymanufacturer Cisco

    model AS5350status operational

  • 7/31/2019 Mini EU-Rent IT

    58/60

    KNOWENTERPRISE

    Mini EU-Rent IT.DOC Markus Schacher 58

    9.1.4 Mobile Device TypesPDAdevice kind Mobile Devicedevice subtype Computing Device

    manufacturer Orangemodel SPV5000owner EU-Rentstatus operational

    9.1.5 Telephone TypesSnom 360device kind Telephonedevice subtype n/amanufacturer Snom

    model 3360owner EU-Rentstatus operational

    9.1.6 Printer TypesHP LaserJet 4000device kind Printer device subtype n/amanufacturer Hewlett Packardowner EU-Rentstatus operational

  • 7/31/2019 Mini EU-Rent IT

    59/60

  • 7/31/2019 Mini EU-Rent IT

    60/60

    KNOWENTERPRISE

    product Office 2003 / Version 11version 11.8215.8202 (SP3)status operational

    10.1.3 Database SchemataCustomersdescription This is the database schema that defines all tables related to

    customers.version 2.2owner EU-Rentstatus operationalstores domain objects advance reservation, organization, person, rental, renter, walk-in

    rental

    Productsdescription This is the database schema that defines all tables related to

    products.version 1.2owner EU-Rentstatus operationalstores domain objects car, car model

    10.1.4 RulebasesPricingversion 2.3.0

    inference forwardowner EU-Rentstatus operational