Building a Tidy Database – An Overview

In this new series of articles, I am going to explain all the methods I use to help maintain a tidy and manageable database. As the size of a database grows, it can be very easy to fall into complacency, and become slack in areas such as naming conventions. I will give some tips on how to avoid this and keep your database spick and span :)

 

Why a Tidy Database?

Keeping your database tidy has huge benefits over the entire life cycle of the system. If you are building a database for the first time, or for a personal project, then you might think this is not important. Indeed, while you are in the development phase, you are “in the moment” – you know where everything goes, how everything works, and why everything is the way it is. Only later on down the track will it become apparent to you why you should have started keeping things tidy from the beginning. You might think you’ll never forget how your database works, but I guarantee that if you leave it for 6 months, it will feel like someone else built it when you return to do more development! The problem is people are continually learning, continually coming up with new ways to do things in FileMaker. The way you build a database 6 months from now may be completely different from the way you build a database now.

For this reason, it is important that you devise some simple conventions you can follow in the development of your database. If you maintain this consistency through your databases, then it becomes much easier to return to a database after a period of time, and be able to understand how it works.

For a developer, this is even more important. If you have multiple developers working on a project, then ensuring everyone is on the same wavelength when it comes to conventions is one of the most important things you should make sure of. Failing to do so usually results in everybody bringing their own ideas to the database, and the whole thing ends up in a mixture of conventions.

Most importantly, maintaining a tidy database is a great habit to get into. If you start early, and force yourself to stick to conventions, then you are well on your way to becoming a great developer!

 

What is a “Tidy” Database?

One of the biggest things that a tidy database contains is consistency. The term consistency encompasses a broad range of areas of the database, some examples are:

  • Consistency in naming conventions for tables, fields, table occurrences etc…
  • Consistency in layout design elements, ie fields, labels, portals all built to a similar standard.
  • Consistency in calculation design and scripting, ie commenting, spacing, common actions..
  • Now, being consistent does not necessarily mean being tidy. You can still have a database with consistently bad naming conventions! The goal is to find good naming conventions, and standards that you can understand and feel are easy to understand, and then stick with them! It’s no good switching your conventions halfway through development of a database unless you are prepared to change the conventions everywhere within the database.

     

    What’s to come?

    Within the coming weeks and months I will be writing articles (in order) on the following topics for this series:

  • Anchor-Buoy: An alternate approach to the relationship graph
  • Naming Conventions and good Practice: Database Schema
  • Naming Conventions and good Practice: Scripts
  • Naming Conventions and good Practice: Value Lists and Custom Functions
  • Consistency in Design: Building Layouts
  • Plus anything else that might crop up.
  • You may be asking yourself what Anchor-Buoy is. Well in a nutshell it is a design methodology for how to structure your relationship graph efficiently. Most beginners to FileMaker start with a few tables, and some table occurrences on their graph to match the tables. They will create some basic relationships between the table occurrences, but generally won’t go beyond a certain level. If the database ever begins to grow in size and complexity, they might become overwhelmed with the number of relationships and table occurrences on the graph, and more often than not, the graph evolves into a classic “spiderweb” structure, with everything related to everything else, one big mess!

    Anchor-Buoy breaks the cycle of the spiderweb graph. Hopefully I can do it justice and explain it sufficiently, because I believe it to be the single most significant thing you can use to help keep your database tidy and manageable going forward.

    With Anchor-Buoy explained, I will move onto discuss the naming conventions I use for table and field names, and also the naming of table occurrences on the graph. How my table occurrences get their names is specific to having an anchor-buoy structure, which is why I must explain that first.

    Next, I will go over some of the ways in which I keep scripts well organized. You might not think it necessary, but alot of larger FileMaker solutions contain over 500 scripts, so it pays to know how to locate them. I will also talk about some things you can do within your scripts to keep them tidy and more readable.

    Then I will talk about some other conventions that apply to more specific areas, such as value lists and custom functions. While perhaps not quite as important as other naming conventions, that is no excuse not to slack off when naming them!

    Finally, I’ll explain and demonstrate the importance of consistency when it comes to designing and building your layouts.

    Stay tuned for more soon!

    8 Responses to “Building a Tidy Database – An Overview”


    1. 1 EmKay July 8, 2009 at 8:46 am

      Hi Mat,

      Great reading! I’m really looking forward to more on ‘Building a Tidy Database’.

      I’d also be interested in your approach to User Interface Design. Has it changed with FMP10?

      Cheers!

    2. 2 marios July 23, 2009 at 9:37 am

      good stuff here,

      i m a step behind the spiderweb structure so im very interested in this technique.!

    3. 3 filemakerweetbix July 23, 2009 at 9:41 am

      Hi, I’ve been a bit behind in putting up new articles but plan to have a new one out in the next couple of days, thanks for reading!

    4. 4 EDL August 11, 2009 at 5:53 am

      Hi.

      Enjoyed the “Tidy” article. Is there a followup article after this one. I did not see a link that associates itself with the “Tidy” article.

      Also, I have been thinking about moving to New Zealand from US.
      Would you be willing to correspond with me about issues about such an adventurous move?

      Thanks,

      EDL

    5. 5 filemakerweetbix August 11, 2009 at 6:02 am

      Hi EDL,

      No followup yet but will be soon. I was going to write it a while back but was too busy. Im overseas in usa right now and will be back in NZ in a week or so, will be happy to correspond then

      Cheers

    6. 6 Mark Hardee September 26, 2009 at 1:34 am

      Weetbix:

      Totally unrelated post. Saw you were in Oregon. Beautiful country, no? I hope you got to go to Brookings (on the coast) and accross the state line to California. Don’t know when you were here, but, welcome to the US.

      Mark

      • 7 filemakerweetbix September 26, 2009 at 9:53 am

        Hi Mark,

        Oregon certainly is beautiful, and yes I was in Brookings! I was over there a couple of weeks before the big FileMaker Conference in San Francisco. My plan was to cycle from Florence OR down to San Fran. Had a few issues along the way so only made it as far as Arcata in California, but a great trip nonetheless

        I do remember Brookings, and I got a picture of the “Welcome to Brookings” sign that is on the North side of town which is written on the side of a big green warehouse type building :) I didn’t stay there however, I remember I carried on and stayed in Crescent City that evening.

        How did you know I was over in Oregon? I was also there last year around August. Last year I cycled across the USA starting in Virginia and going thru 10 states, ending up in Oregon, that time however I was East to west thru Central Oregon thru places like Baker City, Prairie City, John Day, Prineville, Sisters, Redmond, Eugene and Florence.

        I gotta apologise for the lack of articles going up on my blog recently, I had a big database rollout last week which I had been preparing for prior to, and it is just starting to calm down now, so I’ll be back into writing a new article very soon.

        Cheers

      • 8 filemakerweetbix September 26, 2009 at 9:58 am

        … oh and I just remembered that I did have lunch in brookings at a really great seafood restaurant which I think was on Lower Harbor road past the bridge.. wish I could remember what it was called. It was kinda down on the docks, and there was like a little shopping center just past it… then I carried on down that road and ended up on Oceanview Drive which went thru some nice suburbs on the way to California :)


    Leave a Reply




    Greetings

    Hello and welcome to my new blog - FileMaker Weetbix. I will be posting as many articles as I can write, all about FileMaker. If you have a suggestion for a topic you would like to see covered, drop me a comment. I am a FileMaker 8/9/10 certified Developer, working for Digital Fusion Ltd in beautiful Christchurch, New Zealand.

    Categories

    Blog Stats

    • 3,832 views

    Top Clicks

    Recent Comments

    filemakerweetbix on Sub-Summaries, and Displaying …
    freeflight on Sub-Summaries, and Displaying …
    freeflight on Join my Table? – Part…
    filemakerweetbix on Building a Tidy Database …
    filemakerweetbix on Building a Tidy Database …

    Weetbix Pics

    11 December Ride

    11 December Ride

    11 December Ride

    More Photos