26 lines
2.4 KiB
Plaintext
26 lines
2.4 KiB
Plaintext
|
!3 ${domainObject}s
|
||
|
Examples of ''domain objects'':
|
||
|
* Company, User, Account, Project, !-RentalItem-!, Invoice, Container, Vehicle, Ship, Flight
|
||
|
* Payment, !-AlertSignal-!, Agreement, Document, Meter, Instrument, Debt, Tender, Contract
|
||
|
* !-GoldFuture-!, !-PurchaseAgreement-!, !-LegalDefinition-!, !-SecondParty-!, !-PaymentArrangement-!
|
||
|
A ''domain object'' is an object from the application/business/organisation domain.
|
||
|
* A ''domain object'' is relevant to Customers, Business Analysts, Product Managers and others with a business perspective
|
||
|
* A ''domain object'' may be well understood in the business, using a clear term
|
||
|
* A ''domain object'' may be invented during the development of a system, as the need for a new abstraction or conceptualisation arises. This could arise from refactorings carried out by the programmers, after discussions with the business-oriented people on a team
|
||
|
* What counts as a ''domain object'' depends on the particular business perspective
|
||
|
* You can't say whether something is a ''domain object'' without taking account of the context of the application
|
||
|
* For examples, people who do on-site installation may have access to ''domain object'' that the usual users are unaware of
|
||
|
See ${ddd} for some great discussions of the complexity and variability of ''domain objects''. This distinguishes between a ${entity} and a ${valueObject}.
|
||
|
!3 ''domain objects'' and ${storytest}s
|
||
|
Storytests can check and set up domain object values. For examples of checking the properties of ''domain objects'', see the following:
|
||
|
* [[''!-SimpleProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.SimpleProperties]]
|
||
|
* [[''!-ListProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.ListProperties]]
|
||
|
* [[''!-ObjectProperties-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectChecking.ObjectProperties]]
|
||
|
For examples of setting up domain objects, see:
|
||
|
* [[''!-DomainObjectSetUp-!''][.FitLibrary.SpecifiCations.DomainObject.DomainObjectInjection.SetUpSucceeds]]
|
||
|
Note:
|
||
|
* The above examples are a part of the specifications (${storytest}s) for ${fitLibrary} itself.
|
||
|
* These ${storytest}s are different from the ones you'll be using
|
||
|
* They show embedded tables for both a ${storytest} and the report that's expected when running that storytest.
|
||
|
* The overall ${storytest} passes if the actual report matches the expected one.
|