20.02.2013 Views

Connie's Convenience Store - About Peter Coad

Connie's Convenience Store - About Peter Coad

Connie's Convenience Store - About Peter Coad

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Selecting Problem-Domain Objects Connie’s <strong>Convenience</strong> <strong>Store</strong> 13<br />

#34. “Select Kinds of Objects” Strategy selecting objects (kinds of objects)<br />

• Use generalization-specialization (gen-spec) to find additional classes.<br />

Look at each class as a generalization. Name its specializations, ones that fit with<br />

system objectives.<br />

Look at each specialization. Name its generalizations, ones that fit within system<br />

objectives.<br />

• Use gen-spec for domain-based reuse within an application; use configuration<br />

management for reuse across multiple applications, even multiple problem domains.<br />

• Use gen-spec to show domain-based “what’s the same, what’s different,” within an<br />

application.<br />

• Examples: equipment, kinds of equipment; participants, kinds of participants;<br />

transactions, kinds of transactions.<br />

A store is a kind of sales outlet. Perhaps over time, Connie will expand to other<br />

kinds of sales outlets (for example, catering centers or catalog sales). Connie might<br />

choose to do this in the future.<br />

<strong>Store</strong>s might be specialized into kinds of stores (for example, superstore, grocery<br />

store, convenience store). Connie might choose to do this in the future, too.<br />

Note how generalization-specialization is a useful tool for exploring what could<br />

happen, with success over time.<br />

For now, leave store as is.<br />

Select things<br />

Tangible things<br />

#16. “Select Tangible Things” Strategy selecting objects (pattern players)<br />

• Look for tangible objects, ones used in the problem domain.<br />

• Take a walk through the business. Select objects from the tangible ones around you.<br />

• Examples: account, cash box, cash drawer, item, plan, procedure, product, schedule,<br />

scheduled event.<br />

What are the tangible things in the store?<br />

– item<br />

– register<br />

– cash drawer.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!