This course will become read-only in the near future. Tell us at if that is a problem.

Describing Web Application Systems

In order to build an application we first need to learn how to plan it out. We're going to begin this process by describing systems. Systems are comprised of elements, events, properties, boundaries and relationships. You can think of just about any web application as a system. Having a good understanding of the underlying system will help us as we build our django application.

An example:

On Facebook, YOU are an element (assuming you are on it). You have attributes that make up who you are on Facebook. You have relationships with other elements whether they are friends, articles you posted, things you Like, fan pages, groups, etc. There are also boundaries on who you can interact with and how you can interact with them. You can initiate certain events like "friending" or posting on someone's wall.


Describe 3 of the real systems below by listing the elements and their properties, relationships, boundaries, and events. Post your answers and feel free to ask for help.

  • YouTube
  • Ebay
  • StackOverflow
  • Reddit
  • Google search
  • Flickr

Task Discussion

  • dharol   2 oktober 2012 16:09


    • Ebay
      • Elements: Items for Sale, users
      • Properties: Cost, Items sold, Items Purchased
      • Relationships: purchase, sold, shipped
      • Boundaries: view items, send messages
      • Events: create account, login, purchase, sell, view your history, browse
    • StackOverflow
      • Elements: questions, users
      • Properties: reputation points, votes, acceptance
      • Relationships: poster of question, answerer
      • Boundaries: can edit responses, can vote on answers, can remove posts
      • Events: post, answer, edit, approve, vote
    • Google search
      • Elements: users, {{queries???}}, query results
      • Properties: ip address, date, number of results, type of query (search engine)
      • Relationships: {{not sure .... events and relationships seem highly overlapping ...??}}
      • Boundaries: safe search? 
      • Events: search, click on search result, change search type (images, scholar)
  • Anoniem   6 juli 2011 23:15


    • Users and videos are the elements
    • The users properties are their like and dislikes & the videos properties are its content
    • Likes and shared keywords are relations within Youtube
    • Events are video upload, like & dislike, and finally comments....
    • Boundaries unsure


    • Items are the elements
    • Their properties differ greatly but can be categorized as there data makeup
    • Relationships unsure
    • Boundaries unsure


    • Peoples questions elements
    • Relationships are the keywords between different questions
    • Properties & Elements unsure
  • Pein Junior   28 juni 2011 21:05

    YOUTUBE - users are the elements and videos, like, etc are elements also.  Boundaries on video if it is allowed in viewers country or if users are at the age for viewing. Relationships with users videos can be shared with other website.

    EBAY - elements - users items

                 events - bids

                 properties - buy and sell


    FLICKr - elements - pictures

                    events - uploading pictures

                    relationships - sharing of photos

  • Alex Kehayias   3 juli 2011 16:14
    Reageer op:   Pein Junior   28 juni 2011 21:05

    Try to think about the details of some of the properties of the elements in ebay for example. In ebay an "item" has a ton of properties. Properties is how ebay is able to keep everything categorized and tidy. For example a clothing item has properties like clothing type, size, color, brand etc. We will need to plan in that level of detail and more when we build applications.

  • Jessica Ledbetter   27 juni 2011 18:52


    YouTube allows people to upload videos, watch others' videos, comment on videos, and like/dislike videos. Videos have relationships with other videos based on whether or not they were uploaded by the same person or have similar keywords. A video can display how many times it's been viewed. Videos can be private or shared to certain people. A video can also be set to be a favorite video by a user.

    Users' channels can be subscribed to to see updates. Users can be friended and blocked.

    Videos and users can be found via search.


    Users can put in links for others to vote up or down on. Users can also comment on the links. 


    Users can upload photos, screenshots, art. They can be private, public or limited to family/friends. Flickr users can also have relationships with each other such as contacts and friends/family. Users can also favorite, tag, or comment on pictures. They can also be added to groups with others, their own sets, or collections. 

  • Alex Kehayias   3 juli 2011 16:15
    Reageer op:   Jessica Ledbetter   27 juni 2011 18:52

    Someone's done this before... :) 

  • Jessica Ledbetter   12 juli 2011 17:01
    Reageer op:   Alex Kehayias   3 juli 2011 16:15