Quick Index
Objective


The objective of this challenge is twofold:


Simplifying code is about the most important skill a coder can gain.

Problem background:


This (1000 to 50) will take some effort. Think 80% design, 20% coding. Jump head first into the design. Come up with questions.

Design Technique


Note that the design technique referenced here one suggested approach; feel free to try or invent your own design technique.

(start here) Here is the suggested technique:


Provided Initial Design and Context


Our area of study for this challenge is specialized linear structures.

Here is the provided info:


Provided Files


Download the provided files.

File listing:


All of these files are empty files.

Please unzip them so they remain in the "SS-Design" directory (and submit that directory).

The Challenge Work


The challenge is to normalize the provided "Initial Design" for specialized linear structures so it is in third normal form (see "The Technique" section).

The basis:


The work:


Notes on Documentation


Most Important Documents


The most important file in your submit is "3NF.txt".

That is where you will put your "third normal form" design (final design).

For an example, see "Third Normal Form (3NF) Achieved" here.

Other Documents


The other four documents (in addition to "3NF.txt") are optional.

However, if needed, they could help the grader award partial credit.

Document Format


Concise and clear is the goal. They can be in an "notes" style, as long as they are clear.

The examples are verbose by design -- your notes can be more concise. The only requirement is to make your ideas clear.

For your final design, this listing will be helpful

Filenames


Please use the provided files (do not change filenames) and leave them in the provided directory ("SS-Design").

Exception: if you would prefer another format that is not plain text, you may submit PDF files. In that case, please use the same filenames but with a PDF (".pdf") extension.

Getting Started


First:


Then you can start working on your design mimicking the normalization examples and using the provided initial design and context.

It may take a little bit to get started, as this could be a bit of a different approach.

How to Submit


The design solution for this assignmnt does not need to be submitted, only the coding solution.

See coding section on how to submit code.

FAQs (Frequently Asked Questions)


Go here for FAQs.

References