Professional Documents
Culture Documents
CourseWork
to information systems
1.2
Figure 1
Website
UCD
Register
Register
View amount
designs
Creator Client
Accept or decline
There are basically two actors: creator of content (designer) and client (buyer),
too can see it in the Figure 1. The creator, first off-all have to register on the
website and insert some personal information: their name and contact info.
After registration account is created, then he is able to upload his designs
with specifications. In this instance it is the style of the work and its price.
After publishing his work creator is able to see the number of designs
he uploaded in his account. From the side of the client he goes through
a similar procedure of registration, but there is no contact information
necessary. Client is able to view the designs, if he finds it interesting, the offer
can be made. Price can differ from the one set by creator. If the price suits the
artist, he can accept the offer or decline it. Client can also contact the creator
directly to get more information about his work.
There are three primary keys: user_d_id, d_id, user_c_id. User_d_id is the
primary key in User Creator class. A user can have an unlimited amount of his
work uploaded to the platform, or none. User_info is optional for the creator
to fill in. Designs can have only one User Creator, as shown in Figure 2. There
is no straight connection between User Client and User Creator; they are
linked through Designs. User Client can make unlimited or none offers for
sustain design; also designs can have unlimited amount of offers applied.
That connection between the two classes is called Many-to-Many, and can
create unwanted duplication of information, so it should be normalized.
-d_id: int
-user_d_id: int
-d_style: string
-user_name: string
-price: int
0..* 1 -project_amount: int
-user_info: string
0..*
User Client
-user_c_id: int
-d_style_needed: int
Figure 2
Class Diagram
1.4
Figure 3 represents the normalised version of the class diagram in the form
of an ER diagram. To eliminate denormalised parts 1NF, 2NF, 3NF, and
4NF should be applied, transforming 4 initial tables into 5 tables.
As mentioned above, connection Many-to-Many can disturb the structure
of the database, because different designs can have various number of offers
from clients, that contradicts the 1NF (That no table column can have tables
as values and or no repeating groups).
The new entity holds information about offers proposed by the client, the
price of the design, and the end price that the work was sold for. That
enables to structure the table by the design id, client id, and the buying
process (price, offer, end price). Client can make multiple offers, but there
is only one client for each offer, the same with designs, and offer relation.
d_style
user_name
price
project_amount
contact_info (O)
Has Figure 3
ER Diagram
user_c_id
user_c_name
price
c_offer
c_offer
end_price d_style_needed
1.5
Figure 5
Figure 4
Design Table
Figure 6
Figure 7
Offer Table
Register Figure 8
First page
Figure 9
Style of style
Offers
1.7
Code and design visualization for the query that displays information for the
client of bought work and gives an option to contact the creator.
Name and the price offer Name and the price offer
Figure 11
Figure 12
While I was writing the first part of this course work, I remembered how hard
it was as a beginner to correctly evaluate your work. As an amateur designer
you never want to overprice or undersell your project, but it is not always clear
how to value it. Therefore, I decided to integrate a calculator that could help a
beginner designer and will integrate it with the website. For the user it will be
easy to use, because there are 4 different categories that should be filled in,
for further evaluation. Figure 13 represents a Used Case Diagram that
illustrates a case done by the creator, who is evaluating his work, and the
system that applies the formula to the input data.
Figure 13
System
UCD Inputs Data Applies
the formula
2.2
The main part of the whole spreadsheet is the formula that calculates the
estimated price. I conducted some research among my fellow creators and
also included my own experience to create this formula: (0,3*(amount of hours
spent)+0,3*(the complexity of the work)+0,2*(the style of the project)+0,2*(the
size of the canvas))*1000. The work is done in the Numbers program, which is
the alternative to Excel from Apple. In Excel this formula would have used the
SUM function. Most valuable inputs are the amount of hours and the
complexity of the project. Hours and complexity are self-explanatory
categories, but the style and the size require some explanation. The style of
the project highly influences the complexity of the project; for example
brutalism is one of the most complex styles in design, so in my formula it is the
highest scored style. The size of the project means the amount of content
displayed in the project that also influences the complexity and the amount of
work done. This formula applies mostly to beginner designers and for the
more advanced creators it is not fully useful. I also included a situation where
the creator tries to input an uncertified style or size.
Student Number: 210550773 7
In that situation, the system will forward the input to the administration and
they will evaluate alternative input. There is a button for this that creates a
request. Evaluation of alternative inputs is done by professional designers and
quickly added to the system. Figure 14
Formula
2.3
There are 4 different tables in the system. The first one is already uploaded
projects; the second table is a reference table with the type of style and the
equivalent in score; the third table functions the same as the second but
regarding the size of the project. The last table functions as an input table.
This table represents already uploaded work to visualize how the formula
works. I used this data to construct the formula because it is based on the
more advanced creators and the information I conducted from them. After
applying my formula, I asked them about the output price to confirm that the
formula was correct. The first iteration of the formula was different, but after
the feedback I adapted it for it to be more realistic.
Figure 15
Uploaded projects
This table represents the evaluation score for the specific design according to
the complexity of the style. The data could be altered by the administration to
add new styles.
Figure 16
Different styles
Figure 17
Different sizes
Last of all, this table gives representation for the input for the user with all
descriptions of different categories. In the bottom right cell recommended
price will be outputted.
Figure 18
Input table
2.4
Using colors is the following: dark brown represents cells that can’t be altered
by the user; for example in the table for the input the recommended price cell
is in dark brown. Also, the same color is used to highlight different types of
styles and sizes, that too cannot be changed.
Figure 19
Colour scheme
2.5
All the data that is altered by the administrator is checked by data validations
and filters for the user to correctly input the data. For example, complexity is
measured from 1 to 5, so only those values can be inputed. The same filters
are in the input table
Figure 20
Data Validation
2.8
The creator can also open analytics to research which complexities and styles
are the most popular to focus on them to create more desirable designs. The
popularity of style is represented in a pie chart, because, in my opinion, it is
the most convenient way to consume statistics of such sort. The second graph
is a bar chart, which is also great for visualizing such data.
Figure 21
Pie chart
Figure 22
Bar chart
Made on MacBook Pro with the help of: Figma, Numbers, ERD Plus, DBeaver