00:16i'm tom hathaway i'm wearing my ba hat
00:19so let's talk business analysis
00:22business data models are one of the
00:27it projects absolutely need in order to
00:30in this nugget we're going to discuss
00:32what a business data model is
00:34why it is important and why the business
00:37has to understand what the data model
00:41these ideas will help you when you are
00:43the one wearing the ba hat
00:46business data is any information that an
00:48organization needs to operate
00:53every business process within an
00:54organization consumes data
00:57and creates new data for instance the
01:00sell product consumes inventory data you
01:04have fewer items in stock
01:06and adds financial data you have more
01:08money in your register
01:12data modeling identifies essential base
01:15data and defines the context within
01:17which your organization uses
01:20and maintains the data independent of
01:22your information technology or
01:28based data is any data that comes from
01:32meaning it cannot be calculated or
01:36its corollary is derivable data for
01:39example your birth date
01:40is based data whereas your age is
01:44all the computer needs is a date of
01:46birth and today's date to calculate your
01:52why should you model business data
01:55missing base data is one of the most
01:57costly errors you can make on it
02:00it's relatively easy to add derivable
02:03if the necessary base data is available
02:06it's also relatively simple to add a
02:10if the base data that the process needs
02:15adding base data always impacts a
02:17minimum of two separate processes
02:20the process capturing it and the process
02:23processes that consume it
02:27redundant-based data identical based
02:29data stored in different locations
02:31is nearly as bad if you have customer
02:34addresses stored in two separate
02:37keeping both versions current requires
02:39extensive discipline
02:40or finely tuned automated programs
02:44what happens if they get out of sync
02:47which version of the address is then
02:51finding data errors late in the project
02:53is a major contributor to it project
02:56and canceled it projects
03:01a business data model creates a picture
03:03of the base data that your business
03:06helps you identify missing and redundant
03:11establishes a baseline for communication
03:13across functional boundaries within your
03:17provides a basis for defining business
03:20and makes it cheaper easier and faster
03:22to upgrade your i t solutions
03:26when should you model business data
03:30you should create a model of your
03:32business data independent of any it
03:35the business data model is one of the
03:37simplest steps to avoiding missing and
03:40before your project starts at the latest
03:43create the model before you make any
03:49it's important to recognize that this
03:50model does not depict databases or files
03:53but logical business data entities
03:57which are things someone needs to know
03:59something about to do their job
04:01by definition a data entity is something
04:04for which you need to track base data
04:06over some time span hours days months
04:12what does the business data model do for
04:17to make this clear i'm going to use a
04:21assume you have a video rental store
04:22serving a small city
04:24to keep it simple we're going to assume
04:26that renting videos is all
04:28you do you probably have more than one
04:32or you'll not be in business very long
04:35need to keep track of data describing
04:39i.e their name their address their email
04:44that makes customer a likely candidate
04:49to start your business data model we're
04:51going to use an oval
04:52as the symbol to represent data entities
04:55write the name of the entity
04:57customer inside the oval it is important
05:00to recognize that while you have many
05:03the data entity customer is singular
05:06because it represents a single
05:08occurrence of the data entity
05:12it's also noteworthy that a data entity
05:16and the names of things are always nouns
05:21the specific data you want to know about
05:23each occurrence of the entity
05:25name address contact info are its
05:29the attributes you absolutely have to
05:33as you can calculate any derivable data
05:35given appropriate base data
05:38there's no limit on how many attributes
05:40you want to store about each entity
05:42that depends on your business processes
05:45and what information you need
05:47to help you make decisions
05:51on the business data model write the
05:53names of the attributes
05:54beside the oval representing the entity
05:58in this case the customer entity
06:02you'll probably need many different
06:04videos again to stay in business
06:06so you need to track data describing
06:10i.e the title type whether it's a dvr
06:13cd blu-ray etc rental cost to name a few
06:17remember we're keeping this consciously
06:22in data modeling speak we say you have
06:25which has the attributes title type
06:28and potentially many more let's add an
06:31oval to represent the video entity and
06:33its attributes beside it
06:37expanding the example when a customer
06:39comes into your store to rent a video
06:41they are going to take your valuable
06:45in exchange for whatever you charge as a
06:48since you want to ensure that they
06:50return the video at some time in the
06:52you need to know who the customer is and
06:54which video they rented
06:58in the world of data modeling this is
07:00what we call a relationship
07:02a relationship represents an association
07:05between two data entities
07:07and is only relevant if someone needs to
07:10know something about the relationship
07:14the business transaction of renting the
07:15video creates a relationship between a
07:18an occurrence of the entity customer and
07:22and occurrence of the entity video they
07:26a simple line connecting the involved
07:28entities represents the relationship
07:32as a result you can look at each
07:33customer and identify which videos they
07:37conversely you can look at each video
07:39and recognize which customer currently
07:44where are your business rules
07:47okay you have many occurrences of the
07:50and many occurrences of the entity video
07:53and there's a relationship between them
07:55now we can ask some interesting
07:57questions to identify the nature
08:02can a single customer rent many videos
08:05that's actually a business policy
08:07question so you as the business expert
08:10are the only person qualified to answer
08:13in business data modeling speak it's a
08:16simple business rule
08:19on your business data model it refers to
08:22cardinality of the relationship
08:26cardinality describes the nature of the
08:28relationship the two data entities share
08:31in particular cardinality refers to
08:33whether the relationship
08:34is one-to-one one customer can only rent
08:39one to many one customer can rent many
08:41videos but each video can only be rented
08:43to a single customer at a time
08:45or many to many one customer can rent
08:50and each video can be rented by many
08:52customers at the same time
08:54assuming you have multiple copies of the
09:00we're going to represent the cardinality
09:01of the relationship by adding tiny
09:03quote crow's feet end quote to the end
09:11we assume that your business rules allow
09:14to rent many videos the crow's feet
09:17point towards the video entity
09:19and each video can be rented by many
09:22the crow's feet point toward the
09:24customer this represents the
09:26many-to-many relationship
09:28both ends of the relationship line have
09:33there's one final aspect of cardinality
09:35the business data model depicts
09:38and that is whether the relationship is
09:42there has to be at least one occurrence
09:44on that end of the relationship
09:46or optional there may be no occurrences
09:48on that end of the relationship
09:50for each associated entity
09:54in our example it would be logical to
09:57might not be associated with a customer
09:59if no one is renting it
10:01and a customer might not currently have
10:05ergo both ends of this relationship are
10:07optional indicated by putting a
10:10zero or o on the end of the relationship
10:13closest to the entity
10:17if we were to assume that you're only
10:19interested in keeping track of customers
10:21who currently have rented a video
10:23the model would have to change your
10:25business rule then states that the
10:28has to be associated with at least one
10:33this is represented in the diagram by
10:37on the end of the relationship line
10:39closest to the video entity
10:41to indicate that there has to be at
10:43least one occurrence of that entity
10:45for the relationship to exist
10:49the business data model would now
10:52a customer must be renting one or more
10:55videos to be considered a customer
10:57whereas a video can be rented by any
11:03summary simply put a business data model
11:06which business data entities you need to
11:08store information about
11:10how those entities are related to each
11:12other and what specific
11:14attributes aka based data you need to
11:21to identify the best it solution that
11:23supports your business
11:24you need to know your data a business
11:28should not be a sacred book that only
11:30the privileged can read
11:33as a snapshot of your business it will
11:36help you recognize whether a suggested