i am 4 days old learning this stuff, so apologies in for ignorance!
this is not really a TDM specific question, but i hope someone wil be kind enough to give me some pointers as i am learning alone (thanks wikipedia )
im creating a logical model which i originally though would be about 6/7 entities, but has grown to around 40 and i cant even see them on the screen all together. i am thinking to break the model into subprojects.
here is a screenshot of my work so far. i have not put relatinship lines in yet, as i know them mentally and i am yet to decide it i should chop up the model into chunks
do people who work in this field do this kind of thing, is it possible, or does it create problems or break the relational model?
also, when i get to the point where i am creating a physical database, should i be trying make smaller databases and somehow get them to telk to eachother in the application (or maybe even at the database level?
not sure which dbms i will learn, probably SQL due it its ubiquity and the fact one of the main reasons for learning this stuff is to get a job?
Question #1 - Your thinking is spot on. People normally break models down into subject areas or submodels. In TDM we clal those workspaces (although I keep harping on our dev team to embrace the more popular terminology).
Question #2: “Divide and Conquer” is critical technique in everything we do - remember that people tend to only be able to focus on 3-7 items at a time. So whether some PhD thinks it’s good or not according to book theory - in real life we often have to work in an efficient and productive manaer. Breaking problems into smaller and more manageable pieces is our best tool. So it’s OK.
Question #3: That depends. Oracle and SQL Server mean different things when we say database. So it depends not just on your application being developed - but also to some extent what database paltform. There is no best answer here. So do whatever feels right when thinking about both.
Question #4: Database platform to learn/embrace is like a politics or religion question (i.e. subjective). All the major database platforms (Oracle, SQl Server and DB2) are fine products that a person can pin a career on. My experieince is that is you know one of the big three - you get two benfits. First, moving from one enterprise or inductrial strength database to another is pretty easy. And second, moving down to a smaller fish like MySQL or PostgreSQL is even eaier - sicne they don’t implement much of what the big boys do.
If you’re going dwon the road of windows and visual studio - then MS SQL Server is the best answer. Remember, SQl Server 2005 and 2008 offer a free version (as does Oracle and DB2) that make learning their technology easy and cheap