Report Writing

There are some common mistakes students do the first time they try to write a report describing the project work they've done. In this lecture some of those mistakes are pointed out so you can avoid doing them yourself. But first some important theory to know before you start writing your report.

What is a project?

Most reports are associated with a project, so you must have a good understanding of what a project is before you write a report on one. Wikipedia's Project pageopen in new window has a long definition of the term, but let us only focus on projects where the goal is to implement some software. A project is always about a problem that should be solved, and the solution (in this case the software) you create should solve that problem.

The problem

The goal with the software you create is to get people to use it (no point in creating something no one will use). Why would they use it? Because it will help them in some way. So the first thing you should decide in a project work is: What is the problem people are having that we will try to solve in this project? Examples of problems are:

  • Crossing the road is dangerous.
  • Waiting (in line, at a bus stop, at the traffic lights, etc.) is boring AND a waste of time (two problems in one).
  • Leaving the children home alone is dangerous (parents are worried about both the house and their children).
  • Communicating with someone not speaking your language is hard.
  • Remembering when Arsenal plays their next game is hard, and it changes after each game.
  • Contacting all players in a hockey team (to notify them of cancelled matches, changed practice hours, etc.) is hard/time consuming.
  • Knowing what is cheap and what is expensive in a grocery store is hard.

If you can't come up with a problem on your own, simply ask a friend or a company about problems they're having, and then you can try to solve that problem as your project.

When you have identified the problem to solve, you need to analyze the problem in depth to get a better understanding of it, so you know things like:

  • Who are having the problem?
  • What is characteristic of those having the problem? E.g.:
    • Are they rich?
    • Do they live in big cities?
    • Are they old?
    • Do they all have driver licenses?
    • How much time are they willing to invest to solve the problem? (e.g. 15 minutes to learn how to use a new app?)
    • Etc.
  • When are they having the problem?
  • How does the problem impact the rest of their lives?
  • Etc.

Analyzing the problem in depth could be a big project itself taking many months, but let us keep things minimal here (you don't have time to do a proper analyze of the project in depth for the project you do in school) and move on.

The solution

When you have a good understanding of the problem, you need to come up with a solution to the problem. What the solution looks like do of course depends on what the problem is, but in our case the solution will always involve the creation of software. For example, if the problem is My children has grown up and now I have a lot of small clothes no one in the family can use, then maybe the solution could be to create a website where people can sell their clothes online to others.

Often you don't only come up with one solution, but many different solutions (coming up with different solutions could be a project itself taking many months), and then you continue to work with the solution you think is the most promising one. When you do, you need to be sure that the people having the problem really think that the solution you pick is a good solution they are willing to use (optimally willing to pay money for 🤑). You can compare your solution to existing solutions to see if your solution seems to be better. For example, parents might now throw/give away their children clothes for free now, but with your solution they would get some money for the clothes, making them prefer your solution. Making a survey and asking the people having the problem if they think your solution is a good idea is of course a very smart thing to do.

When you have decided which solution to go with, you need to realize it (in the previous example implement the website). When you're done realizing the solution, we'll for simplicity consider the project to be over. Real projects could however continue after this. For example, the following could also be part of the project:

  • Delivering the solution to a customer.
  • Running the solution for a customer.
  • Maintaining the solution for a customer.
  • Add new functionality to the solution for a customer.
  • Fix bugs in the solution.
  • ...

Report structure

Now that you have a basic understanding of what a project is, let's take a look at how we can write a report about one.

Reports describing projects tends to be quite long. Therefore we divide them into chapters, making them a bit more structured. But which chapters should we have? In which order should they be? There's no single correct answer to this, but let's go through an example of a good structure for a report.

Chapter 1: Introduction

The first chapter in the report should introduce the reader to the project. The reader does so far not know anything about your project, so the first thing you need to explain to the reader is which problem you try to solve and how you intend to solve it.

In this chapter you can think of the reader as an investor with a lot of money, and your goal is to convince the investor that the problem is a serious problem worth solving, and that your solution solves the problem in an excellent way. If you manage to convince the investor of this, she might be willing to invest some money in your project, and you get the money you need to start working on the project and to build the solution.

In our case the solution is a website, so we need to tell the reader what problem the users of the website are having and then explain how they solve that problem by using the website. A UML use-case diagram is an excellent tool to visualize what the user will be able to do on the website.

Keep it simple!

Investors are not technical people (just rich and stupid bastards 😉), so avoid using technical terms. Anyone reading your report should be able to understand all the text in the Introduction chapter, even your own grandpa who doesn't even know how to turn off the radio.

Chapter 2: Solution

So, you have decided on a solution and you've got the money you need to build it from an investor? Great, now we just need to figure out the technical details of how to build the solution. The solution is usually quite complex, so dividing the solution into multiple chapters is usually a good idea, but if the solution is small and simple, a single chapter describing the solution can be enough.

In our case, the solution is a website, so this chapter could be about giving an overview of how we will implement the website. In our case we could explain that a user will use her web browser on her computer to communicate with our web application running on our server, and our server in turn will communicate with our database that runs on yet another server.

In our case the solution consists of two components we create ourselves:

  • The web application
  • The database

We have a lot to say about these, but that will be implementation details, and those are probably better described in chapters dedicated to describe these in detail, so this chapter is just about the architecture of the solution (an overview of the solution). This way, readers who don't know much about programming should still be able to read and understand most parts of this chapters.

Tips!

In our case we describe the architecture of our solution in this chapter, so maybe Architecture is a more accurate chapter name than Solution? It's your report, you decide!

Keep it simple!

In the Solution chapter you have to get a little bit more technical compared to the Introduction chapter, but try to keep it simple (avoid mentioning technical implementation details unless it makes sense to mention them here) so most readers can read the chapter and understand the solution overall without being technical experts. Your grandpa should be able to understand most of what you've written, even though he doesn't know where the any key isopen in new window.

Database

We can use a separate chapter to describe the database component in our solution, so in this chapter we describe everything there is to know about the database, such as:

  • What database do we use (MySQL? SQLite?, MariaDB? Etc.)
  • What tables do we have in the database?
  • What columns do we have in the tables?
  • What constraints do we have in our database?
  • ...

Tips!

In this chapter you can expect the reader to know a lot about databases, so don't expect your grandpa to understand much of what you write here. This chapter will primarily be read by other developers working on the project to learn how they should use the database, and by quality assurance people (your boss, your team's quality assurance member, your customer's quality assurance checker, etc.) to verify that your solution has been implemented in a good way.

Remember!

This chapter is about the database only, so no need to mention anything about the web application in this chapter.

Web Application

We can use a separate chapter to describe the web application component in our solution, so in this chapter we describe everything there is to know about the web application, such as:

  • Which framework is the web application implemented in?
  • How is the source code structured?
  • How is authentication and authorization handled?
  • How is information about the clients remembered? E.g. cookies, sessions, tokens, etc.
  • Which security vulnerabilities has been thought of and is protected against?
  • Which libraries is the web application using?
  • ...

Tips!

In this chapter you can expect the reader to know a lot about how web applications work, so don't expect your grandpa to understand much of what you write here. This chapter will primarily be read by other developers working on the project to learn how they should add new features to the web application, and by quality assurance people (your boss, your team's quality assurance member, your customer's quality assurance checker, etc.) to verify that your solution has been implemented in a good way.

Remember!

This chapter is about the web application only, so no need to describe implementation details of the database. The only thing you need to mention about the database in this chapter is how you communicate with it/connect to it.

Other chapters

Add whichever other chapters you want that make sense to have. Maybe a chapter describing the website's graphical user interface is good to have? Or maybe designing the graphical user interface is an entire project on its own? Maybe the solution also includes a smartphone app? Then having a chapter explaining the implementation of that app would be good? Or maybe the smartphone app should be described in a separate report? Maybe our solution also includes special days people can come to a house and leave the clothes they want to sell there, and then others can come to the house and buy them? Then a chapter explaining how this works would be good, etc.

Readers are stupid!

When you write a report you must always remember that you write it for the readers. Each time you hesitate over something, such as:

  • Which chapters do I need?
  • In which chapter should I write this?
  • Do I need a figure to explain this?
  • Have I explained this good enough now?

Always think of the reader. Pretend you are a very stupid reader of the report, and that you don't know anything about the project. Then try to answer your question, and then go with the answer you come up with.

Your opinion about the report doesn't matter

It doesn't matter whether you think the report is good or bad, what's important is what the readers think of your report, since they are the ones who will read it. To make them think the report is good, you often need to do more work on it than you initially think is necessary, because you know YOUR project work by heart, but the reader doesn't know anything about it, so you need to explain more things than you think.

Be explicit

If you write something that can be interpreted in different ways, readers have no idea which way that is the correct interpretation, since they don't have anyone to ask for clarification. So, when it comes to written text, it's very important to be explicit about what you mean, so there's no way for readers to interpret the text in different ways.

Example

Let's take a look at an example from a report describing how a blog on an Android app works:

It doesn't work to create empty blogposts.

The problems with that wording are:

  1. There's no explanation of what doesn't work means. The app doesn't contain that functionality at all? Or the app crashes when that functionality is used? Or does nothing happen when one click on the create-button? Or is an error message shown to the user?
  2. There's no explanation of what empty means. Missing all of title, content and date? Or just missing title? Or what?

As you see, sentences in a report that are that vague are more confusing than helpful to the reader!

Let's take a look at a better worded sentence:

When creating a new blogpost with an empty content, an error message is shown to the user indicating that new blogposts must have some content.

This is much better! Everyone reading this sentence will get the very same understanding of how the app works. But most likely, you will have more validation rules than just that one, and you need to describe all of them. Then you should not describe each of them in separate sentences like that, but rather show them in a list, or a table, as in the example below.

When creating a new blogposts, the following validation rules are applied:

  • The content of the blogpost must not be empty
  • The content of the blogpost must at most consist of 1000 characters
  • The title of the blogpost must consist of at least 5 characters
  • The title of the blogpost must at most consist of 75 characters
  • The publication date can not be set to a date in the past

If some of the rules are not followed, they will be shown as error messages to the user.

This is a very good way of describing how it works;

  • Lists are used, so it's easy to see where all the validation rules are specified, and to count how many they are, etc.
  • It's very easy to add more validation rules in the future: just add a rule to the list

Even if your app only has a single validation rule, displaying that one in a list is still a very good idea, because it gives the report a very good structure, and it's very easy to add more validation rules to the report in the future.

Example

Another example from a report on a website:

The client communicates with the server, and then it crashes.

What crashes? The client? The server? The network? Or everything? Students love overusing the word it, but readers hate, because they often don't know what it refers to. It is much better to be explicit:

The client communicates with the server, and then the client crashes.

This is much better, now all readers gets the understanding that it's the client that crashes. But then in the sentence is still ambiguous. WHEN is then?

  • then = Directly after the request has been sent?
  • then = While waiting for the response?
  • then = When the response is being received?
  • then = After the response has been received?

Different readers will make different guesses here, and get different understandings. It's much better to be explicit than vague, for example:

The client sends an HTTP request to the server, and when the client receives the HTTP response from the server the client crashes.

This sentence is explicit all the way, so it's very easy to read and understand, and everybody gets the same understanding from it.

Common student mistakes

So, which are the common mistakes students do in their reports and that you should avoid? Here are some of them.

Non unique solution name

Mistake

The name of the solution is very general.

Don'tDo

My Website

ShoeSell

Camera App

CamAppo

Problem

The solution is hard to find for people searching on the web, and it's hard to talk about the solution (e.g. Person A: I like the Camera App, it's a great application, Person B: 😕 Which camera app?).

Solution

Use a more unique name on your solution. Compare to Google, Netflix, Spotify, etc. Hard to come up with a unique name? Use a project name generatoropen in new window.

Weird solution name

Mistake

The name of the solution is too strange.

Don'tDo

Jukioperlatino

Fnelly

dsfkjs

Klanga

Problem

People can't easily talk about the solution, and remembering the name is extremely hard.

Solution

Use an easier (and possibly shorter) name. Compare to Google, Netflix, Spotify, etc..

Components used before defined

Mistake

The text refers to components before they have been introduced.

Don'tDo

(first time database is mentioned in the report)

The database runs on a separate server.

(first time database is mentioned in the report)

The website has a database it uses to store the resources in.

Problem

The reader has no idea about what you refer to (which database The database in the example above refers to), nor that it's part of the solution.

Solution

Introduce components before you refer to them.

Ambiguous explanations

Mistake

The text is ambiguous, i.e. can be read in many different ways.

Don'tDo

The solution consists of a backend application and a frontend application. The application is...

The solution consists of a backend application and a frontend application. The frontend application is...

Any user can login to the application and upload photos.

In the application any user can create and login to an account, and thereafter upload photos belonging to the account they logged in to.

Problem

The reader doesn't know what the text actually means and have to guess what the intended meaning is. It can end really bad for you.open in new window

Solution

Be explicit about what you mean. Don't leave any room for different interpretations anywhere in the report.

Inconsistent terms

Mistake

The text uses different terms to refer to the same thing.

Don'tDo

The solution consists of an Android application. The app is designed... The software securely communicates with...

The solution consists of an Android application. The application is designed... The application securely comminutes with...

BikeIT is a website where you can buy a hi-tech bike. On the site you can also sell your old bike.

BikeIT is a website where you can buy a hi-tech bike. On the website you can also sell your old bike.

Problem

It's hard for the reader to read the text, and the reader gets unsure if you refer to the same thing or two different things when you refer to it using different terms.

Solution

Be consistent with which terms you use.

Making text stand out

Mistake

Some of the text stands out too much.

Don'tDo

"Pangoga" is a platform that...

Pangoga is a platform that...

Problem

The text is harder to read when a word stands out too much from the rest of the text. For example, when you read this paragraph chances are you noticed this smiley 😃 before you were supposed to, stealing your focus from the text. It can even steal your focus when you read this text, which appears after it.

Solution

Don't make the text standout too much. Just using italic is enough in most cases. When showing inline code, making it standout like this is very common.

Acronyms without explanations

Mistake

The text uses acronyms without explaining what they mean.

Don'tDo

The GUI has been...

The Graphical User Interface (GUI) has been...

Problem

The reader doesn't know what the acronym stands for and doesn't understand the text.

Solution

Always explain what an acronym stands for the first time you use it in the report.

Acronyms are introduced wrong

Mistake

The standard notation for introducing acronyms has not been used.

Don'tDo

The Graphical User Interface (from here on written as GUI) has been...

The Graphical User Interface (GUI) has been...

Problem

The standard notation is very short, if you use another notation the reader needs to do more work to read it. The reader also needs to learn your specific way of introducing acronyms, which is an extra effort for the reader.

Solution

Stick to using the standard notation for introducing acronyms, or (second best) don't introduce them at all (if you do introduce an acronym, you have to use the acronym somewhere later in the text).

Repeating information

Mistake

The same type of information is mentioned multiple times in the report, often across many different chapters.

Don'tDo

The database contains three tables: accounts, blogposts and comments. [...] The three type of resources in the database are accounts, blogposts and comments. [...] The resources stored in the database (accounts, blogposts and comments) are all validated before they are inserted.

The database contains three tables: accounts, blogposts and comments.

Problem

Making changes in the future will be hard, since the report needs to be updated at multiple places (and you will probably forget to update the report at all places, which makes it inconsistent). The report does also have a poor structure if the same information is described at multiple places. For example, if the user want to find this specific information and it's written at multiple different places, it is not obvious where in the report the user should start searching for it. Also, the reader doesn't get any new information by reading the same information multiple times, wasting the reader's time.

Solution

Don't repeat the same information; each thing worth mentioning should only be mentioned once, and it should be obvious where in the report (which chapter) each thing is described. If it's not obvious you probably need to re-structure your report somehow.

Chapters start with figures

Mistake

The first thing in the chapter is a figure.

Don'tDo

(in the beginning of a chapter)

[Actual Figure]

The figure above shows...

(in the beginning of a chapter)

The figure below shows...

[Actual Figure]

Problem

When the reader starts reading the chapter, she has no idea why there's a figure there, or why she should look at it.

Solution

Always start a chapter with text, and if you want the reader to immediately look at a figure, tell the reader to do that the first thing you write in the chapter.

Chapters missing figures

Mistake

No figures are used in a chapter; the chapter only consists of text.

Don'tDo

The default profile avatar is a picture of a human. Only the head is shown, the human is almost smiling and has blue ring above the head.

The default profile avatar is shown in Figure 1 below.

👼
Figure 1: The default avatar profile.

Problem

Figures are much easier to understand and faster to interpret than reading a long wall of text. It's also easier to remember a figure than it is to remember something described in text. It's also easier to have a discussion about a figure than it is about something only described in text. Each user reading a text creates their own image in their head about what they're reading, by using a figure all readers get the same picture in their head.

Solution

Use many figures in your chapters.

Figures don't have captions

Mistake

Figures don't have captions.

Don'tDo

🐵

🐵
Figure 1: Picture of Peter's pet DK.

Problem

Without a descriptive caption, the reader is not always sure what the figure represents, nor why it's there.

Solution

Each figure should always have a descriptive caption that explains what the figure shows, no matter how easy it is to interpret it.

Captions aren't descriptive

Mistake

The caption doesn't describe the figure good enough.

Don'tDo

🐵
Figure 1: A monkey.

🐵
Figure 1: What students transforms to if they eat too many bananas (a monkey).

Problem

The user doesn't know why the figure is there, how it's relevant to the text nor how to interpret the figure.

Solution

Use a descriptive caption. If the figure consists of components, colors, arrows, etc., describe what each component, color, arrow, etc. represent.

Figures don't have figure numbers

Mistake

Figures don't have figures number.

Don'tDo

🐵

🐵
Figure 1: What humans looked like just before we evolved from apes.

Problem

You can't refer to a specific figure from the text, and the reader can't easily send the report to a friend and ask the friend to look at a specific figure in the report.

Solution

Give each figure a unique figure number.

Figures aren't referred to properly

Mistake

The text refers to figures without using their figure numbers.

Don'tDo

Some text that doesn't mention the figure above/below at all...

Figure 5 below shows...

The figure below shows...

Figure 5 below shows...

Problem

If you don't refer to the figure from the main text at all, it's unclear when and why the reader should look at the figure. If you refer to a figure without using the figure numbers it's often ambiguous which figure you refer to. For example, the figure below could refer to any of all the figures below the text, which are quite many in the beginning of the report.

Solution

Always refer to figures using their figure numbers.

The figure is far away

Mistake

The text refers to a figure, and the figure is far away.

Don'tDo

(at the begging of the chapter)

Figure 4 at the end of the chapter shows...

(at the end of the chapter)

[Actual Figure 4]

(at the begging of the chapter)

Figure 4 below shows...

[Actual Figure 4]

...

Problem

The reader needs to stop reading, scroll to the figure, interpret the figure, and then scroll back to the text. This is inconvenient, and the reader loses her concentration, making the report very hard to read.

Solution

Place figures close to the text referring to the figure.

Putting the figures at the end

Mistake

The figures are put after most of the text, making the reader first read the text, and then look at the figures.

Don'tDo

...

(at the end of the chapter)

Figure 8 below gives an overview of the architecture.

[Actual Figure 8]

(at the begging of the chapter)

Figure 8 below gives an overview of the architecture.

[Actual Figure 8]

...

Problem

Reading text is hard and takes time, interpreting figures is easy and can be done fast.

Solution

Put figures (often) at the beginning of the text. They give a good understanding of the big picture, and then the reader can read the text to learn the details.

Images display text

Mistake

Code (text in general) is shown as images/screenshots instead of text.

Don'tDo

Figure 5 below is a screenshoot of the getAllBlogposts() function.

Code in image

Figure 5 below contains the code for the getAllBlogposts() function.

function getAllBlogposts(){
   ...
}
Problem

Searching does not work, zooming works poorly (images have limited resolution) and copy-pasting the text doesn't work.

Solution

Always display code (and text) as text, not as images.

Use contractions

Mistake

Contractions (didn't, can't, won't, etc.) are used.

Don'tDo

If the client doesn't receive back a response within 5 seconds...

If the client does not receive back a response within 5 seconds...

Problem

Contractions should not be used in reports.

Solution

Never use contractions in a report.

Use I, we, etc.

Mistake

Words such as I, we, us, our, etc. are used.

Don'tDo

We use the database MySQL to...

A MySQL database is used to...

Problem

The reader doesn't know who I/we/etc. are. Also, the report should often describe a solution/product, and that should be independent of who created it, so there should be no need to use I/we in a report unless you express you own opinions/decisions. Also, if you write This application is developed and maintained by me., then you need to update the report if you give away the project to someone else or if you invite someone else to work on the project with you.

Solution

Avoid using I, we, etc. unless you are expressing your own opinions/decisions.

Don't properly mark up the text

Mistake

A bold paragraph is used as a header.

Problem

The header won't appear in the table of content, the reader gets unsure about whether the bold paragraph is a paragraph or a header. You also risk ending up with the bold paragraph at the end of one page, and the text belonging to it on the top of next page.

Solution

Properly mark up the text: mark headers as headers, paragraphs as paragraphs, etc.

Inconsistent usage of white-space

Mistake

Different parts of the report use white-space differently around headers, lists, paragraphs, tables, figures, etc.

Don'tDo

First paragraph...

Second paragraph...
Third paragraph...

First paragraph...

Second paragraph...

Third paragraph...

Problem

It's hard to see the structure of the report when white-space is used inconsistently.

Solution

Be consistent with how you use white-space throughout the entire report.

Describe things where they shouldn't be described

Mistake

One thing is described in a chapter where it doesn't make sense to describe it.

Don'tDo

The database chapter describes parts of the web application (e.g. how the web application communicates with the database, or how the source code in the web application that communicates with the database has been structured, etc.).

The database chapter only describes the database, the web application is not mentioned at all since the database doesn't use the web application.

Problem

When the reader is looking for some specific information, she won't find it in the chapter she expects to find it in. And when she wants to only learn about a specific thing by reading the corresponding chapter, she's also forced to read the unrelated thing you describe there.

Solution

In a chapter, only describe the thing the chapter is about.

Spelling names wrong

Mistake

The spelling of names (languages, frameworks, libraries, etc.) are wrong.

Don'tDo

The graphical user interface is implemented in html.

The graphical user interface is implemented in HTML.

The framework express is used to implement the web application.

The framework Express is used to implement the web application.

Problem

It's harder for the reader to read the text, and the reader is unsure what you refer to.

Solution

Use the correct spelling of names. Feel free to name your own things whatever you want, but be sure to use the correct names others have given their solutions.

Describing others work

Mistake

Techniques used to implement the solution (for example HTTP, HTML, CSS, Express, etc.) has been described in detail.

Don'tDo

The graphical user interface is implemented in HTML. HTML is a markup language that contains the tags <a>, <br>, <p>, <link>...

The graphical user interface is implemented in HTML1open in new window. HTML is a markup language used to define what different type of text represents, such as headers and paragraphs.

The web browser communicates with the web application by sending HTTP requests to it. HTTP is a protocol built on top of TCP, which is a transfer protocol for sending small packages (messages) from one computer to another. ...

The web browser uses HTTP1open in new window to communicate with the web application. In HTTP, the client (the web browser) simply sends an HTTP request to the server (the web application), telling the server what it wants it to do, then the server do that and sends back an HTTP response.

Problem

The report should be about the solution you have created, not details about the techniques you have used to implement it. Many readers do probably already know these techniques, and reading about them is no fun, and you describing them in vain wastes your time.

Solution

Only describe what's unique to your solution. You can describe the techniques you are using (HTTP, HTML, etc.) very short and briefly, but for more information about these, provide references to their specifications/documentations and let the reader read more about them there instead. No use in you writing a tutorial about how other techniques work.

Figures are referenced after the figure

Mistake

First a figure is shown to the reader, and then the reader is instructed to look at the figure.

Don'tDo

[...]

🐵🐵
Figure 5: Picture of two twins (Bob to the left, David to the right).

Figure 5 above shows an example of two twins.

[...]

[...]

Figure 5 below shows an example of two twins.

🐵🐵
Figure 5: Picture of two twins (Bob to the left, David to the right).

[...]

Problem

Humans read text from top to bottom. If the text below the figure refers to the figure, the reader will look at the figure before she has been instructed to look at it, and she has no idea why she looks at the figure. Then when she gets to the text below the figure, she needs to go back up to the figure again, breaking the readers "from top to bottom" reading flow.

Solution

The text instructing the reader to look at the figure should always be placed above the figure.

Chapter titles ending with colon

Mistake

Colon is written at the end of chapter titles.

Don'tDo

Web Application:

The web application...

Web Application

The web application...

Problem

The standard way of writing headers is not followed, making it harder to read the text.

Solution

Write headers the way headers are usually written; don't end chapter titles with colon.

Paragraphs consist of a single sentence

Mistake

Many paragraphs consist of a single sentence.

Don'tDo

Users can create accounts on the website.

The primary color on the website is yellow.

Admins can see things ordinary users can't see.

Users can create accounts on the website. After a user has logged in to an account, the user can create blogposts belonging to that account. Newly created blogposts are not shown on the website by default, but must first be read and approved by an admin.

For the graphical user interface the primary color is yellow. That color was chosen because it reminds the user of the sun and gives the user a warm and nice feeling.

Admins can do some things ordinary users can't do on the website. They see and can use links and forms through which they get extra functionality, such as Delete button next to each blogpost they can click on to delete blogposts.

Problem

Paragraphs consisting of a single sentence are usually no good paragraphs. Compare to a sentence consisting of a single word, or a list consisting of a single list item. Most paragraphs should consist of multiple (related) sentences, otherwise your report won't have a good structure.

Solution

Plan a good structure and consist of multiple sentences in one paragraph.

Images missing border

Mistake

Much of the image has the same color as the background of the report.

Don'tDo
Screenshot of the website.

Is this text part of the figure? Where does the figure end?

Screenshot of the website.

Is this text part of the figure? Obviously not.

Problem

It's hard to see where the image starts and ends.

Solution

Give images consisting of the reports background color a border.

Wall of text

Mistake

The student tries to explain everything using only text, often in a gigantic paragraph.

Don'tDo

What happens when the user use the website is that the user first starts the web browser, then the web browser sends an HTTP request to the server. When the server receives the HTTP request, it carries out the request and generates and send back an HTTP response to the web browser. The HTTP response contains a webpage the web browser then displays.

What happens when the user use the website is that:

  1. The user starts the web browser.
  2. The web browser sends an HTTP request to the server.
  3. The server receives and carries out the HTTP request.
  4. The server generates and sends back an HTTP response to the web browser.
  5. The web browser displays the webpage in the HTTP response to the user.

What happens when the user use the website is that the user first starts the web browser, then the web browser sends an HTTP request to the server. When the server receives the HTTP request, it carries out the request and generates and send back an HTTP response to the web browser. The HTTP response contains a webpage the web browser then displays.

Figure 8 below shows what happens when the user uses the website.

Figure 8: What happens when the user uses the website.

Problem

Of all the different ways one can describe how something works (text in paragraphs, lists, figures, tables, etc.), text in paragraphs is the hardest and slowest one to read.

Solution

Try to explain as much as possible using lists, tables, figures, etc. Use paragraphs as a last resort.