6. The Data Model

The first thing I want to implement is the model layer, the objects that represent the information in the BrowseOverflow app. I’ll take another look at the app description from Chapter 5, “Test-Driven Development of an iOS App,” this time with a requirements engineering hat on. Specifically, I’ll use a technique called domain analysis to see what classes and objects are required in the app.

In domain analysis, you look at the requirements with a view to deciding what objects exist in the problem domain and what their responsibilities are. Nouns in the software requirements represent either objects or properties of some object. Verbs represent actions (that is, methods), and the object and subject of the verb tell you which object ...

Get Test-Driven iOS Development now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.