Functional design

First order principles sets by domain

Things and relations

First order principles are the things that cannot be broken down into smaller things.

Every single things is an elementary thing or a composite thing.

Things have their own characteristics and they have relationships with other things.

Process: {people, tools, procedures}

Projects: {stakeholder value, product qualities, design solutions}

Requirements: {interface, data, computation}

Online commerce


In online commerce, a merchant sales products or services to consumers using an online distribution channel.

The service catalog contains all the items offered, and includes packaging, pricing and delivery information. The consumer puts into a basket what he wants to buy. After the consumer had added into the basket all items to buy, he will proceed to check out. During the checkout, the consumer indicates the destination, delivery method and payment method. If the merchant has the items available, and he is able to ship to destination and has the confirmation of the payment, it will initiate the distribution process.

The consumer can also put the goods into a wish list. If the wish list is private, then the consumer can come later and buy the items. If the list is public, then friends of the consumer are able to pay for the items; this strategy is used for birthday or wedding gifts.

[1] e-commerce on wikipedia

Straight through processing


In economics, a supplier sells goods or services to a clients, which pays a price in return.

When a supplier and a client reach an agreement to exchange the goods and services against the price, a contract is signed by both parties.

The contact contains the identification of the supplier and the client, the conditions under which the goods or services are provided, and payment received, the right and the obligations of the parties.

A straight through processing (STP) system can facilitate the realization of a contract between the supplier and the client.

The STP is an online application that allows the client to submit a request for a contract. The client starts by filling in it’s own identification and desired conditions for receiving the goods or the services. Then the system will qualify the request and determine if the goods or services can be delivered in the given conditions. In case that qualification is successful, a draft contract is presented to the client. The draft contract contains the conditions and the price. The client reviews the contract and he can adjust the conditions, agree with the contract or refuses the contract.

If the client wants to adjust the conditions, then the system goes back to the beginning.

If the client agrees with the conditions, the system will make the contract final, send a notification to the client and on the supplier side initiate the procedure to deliver the goods or services.

If the client refuses, then the system will simply cancel the order.



In education, the body of knowledge represents the facts that are accepted to be true, and are validated by observation or reasoning. The student aims to learn the knowledge in a specific domain. He can prove his level of knowledge by reproducing the knowledge, or by solving problems.

The quiz is a tool used to verify the level of knowledge. The quiz is composed of a list of questions from a specific domain. For each questions there are several response options, out of which none, one or multiple options can be true.

The student can take a quiz once, or multiple times. Each time the student take the quiz the responses are stored in the response list. Since each questions has a right answer, it is possible to define a scale and evaluate the correctness of the responses. The selection of the scale is completely arbitrary. Scoring can be done by assigning to each response a number of points and adding up the points. The total number of points represents the score of a student.

The quiz can have properties that indicate how many times a student can retake the quiz, the time limit per question or per whole quiz, the ability to navigate back and change previous responses, feedback indicating the correctness of the response immediately after each question or at the end of the quiz, a summary list with the given responses,

The interpretation of the score can be done by comparing the score of a student with one or multiple thresholds. The comparison reveals the level of knowledge on the specific domain. Another method to evaluate the results is to create a hierarchy with the highest score on top and the lowest score at the bottom.

When the purpose of the quiz is to assess the level of knowledge, then the thresholds are used. If the quiz is used for resource allocation, (and the number of positions are fixed), then the hierarchy is used and the top students are assigned to the available positions.