Visual Studio Online, the next evolution of Microsoft Team Foundation server, is a cloud-hosted application lifecycle management (ALM).
Use Visual Studio Online to plan, create, construct, build, test, and monitor seriously demanding applications, from anywhere. Use it to:
No more servers, unlimited load testing, easy to use – I love it!
If you are a typical business application developer you probably work with a database which is cluttered with ‘type’ tables e.g. InvoiceType, CustomerType, PaymentType, CreditCartType, OrderType, ItemType, ProductType – which all have a schemas similar to these:
There are the same number of columns in each type table above.
The data type of the columns are the same in all the tables.
Some column names are the same in all the tables.
Columns names that are not the same in all tables do follow the same naming rule in each table e.g. ItemTypeId, OrderTypeId, ListTypeId which all end with ‘Id’.
Given how similar these tables are, why not use 2-3 tables for all standard ‘type’ data, maybe something like this?
More to follow in part 2 of ‘DB Schema Design–Rethinking ‘Type’ Tables’
In my three previous xRad posts I explained the use of well known names and how they help make extra rapid application development (xRad) possible.
In this post I will expand on the ‘well known’ concept that speeds up application development by discussing well known table schemas.
There are many database tables that are commonly used in business applications. A few examples are:
Since 1992 we have identified 1104 well known table schemas.
Like well known names, well known table schemas are used in my databases, models, code, generators, and snippets.
And, like well known names, well known schemas reduce development time because they are reusable.
Some benefits of well known table schemas are:
1. When a new project starts up no design time is spent on the well known tables.
2. Programmer documentation about well known schemas has not changed since 2011. We will add more well known tables schemas but they will be additions, not changes.
3. We run one script to install all well known tables at the beginning of a project.
4. Code, text, comment, and documentation generators - auto create data access code, enum code, validation code, classes, and more for the well known tables. Once we install the tables and run the generators everything just works.
We’ve found it’s easier to install the well known tables and generate supporting code than to pick and choose.
In my two previous vRAD posts I explained the concept of well known names and introduced ‘PostalCode’, a well known name I have used for application development since 1992.
At the end of my last xRAD post I asked: Can you think of at least three more ways the well known word PostalCode helps us build applications rapidly?
Here are a few of many correct answers:
In three posts I have explained the concept of well known names and how a single well known name can speed up application development by promoting re use over new development.
Since 1992 we have developed 1513 well known names. Examples are: PhoneNumber, EmailAddress, City, State, Country, Customer, FirstName, LastName, Contact, Url, Product, UnitOfMeasure.
Our well known names are used in schema scripts for databases, in models, in code, generators, in documentation, and much more. We have code snippets for every well known name.
When we start a new project an average of 88% of the names we need come from our well known names.
In future posts I will explain how the ‘well known’ concept applies to other things used for application development; things like ‘well known tables’, well known methods, well known constants, and more.
This post explains several ways well known names help my company build applications rapidly.
In my previous vRAD post I introduced ‘PostalCode’, a well known name I have used for application development since 1992.
In our development world, the well known word PostalCode is used where ever a zip code, post code, or postal code is represented or stored, for example:
1. as the column name of all database table columns that store a zip code, post code, or postal code 2. in data models where ever a zip code, post code, or postal code is used 3. as the property name in all classes that require a zip code, post code, or postal code 4. in programmer documentation 5. in code and other generators
1. as the column name of all database table columns that store a zip code, post code, or postal code
2. in data models where ever a zip code, post code, or postal code is used
3. as the property name in all classes that require a zip code, post code, or postal code
4. in programmer documentation
5. in code and other generators
PostalCode helps build applications rapidly because it reduces development and development project time.
How? Reuse. Reuse as in where the same thing is used again for the same function – again, and again, and again. Since 1992:
1. No design time has been spent coming up with what to name things that will represent or store zip codes, post codes, or postal codes.
2. Programmer documentation about PostalCode has not been changed since 1992.
3. Anyone who has worked for me for more than a couple of months can teach a new person to use PostalCode because it is – you guessed it – well known.
4. Code generators, which require postal codes, post codes, or zip codes - for schemas, models, code, and tests – used the well known name PostalCode. We never spend time modifying that part of our code generators.
Can you think of at least three more ways the well known word PostalCode helps us build applications rapidly?
Answers will be published in the next xRad blog post..
Well known names are part my rapid application development (xRAD) frame work. In this blog post I introduce a well known name that has helped me, since 1992, to rapidly develop applications for my clients.
In 1992 I decided PostalCode would be the well known name I would use for: postal code, post code,and zip code.
Zip code, post code, and postal code are different names for the same thing - a code that is appended to the end of addresses to make it possible to quickly sort mail.
PostalCode is consistently used in my databases, models, code, generators, snippets, control names – anywhere one of my applications uses a zip code, post code, or postal code.
Stay tuned for my next XRAD blog post in which I will explain how a well known name like PostalCode contributes to rapid application development.