IUP Portfolio Functional Specifications

Last updated

IUP Portfolio is an education platform for Swedish schools, focused around the students' individual development plan ("Individuell utvecklingsplan", IUP) and learning portfolio.

Contents

License

IUP Portfolio is published under the "GNU General Public License V2".

Technical

IUP Portfolio is a web application developed in PHP5 / MySQL5, and can be hosted on any operating system capable of running a web server, a PHP5 interpreter and a MySQL5 database system.

Typical running environments are:

Application definition

What is it?

In 2006, the Swedish government created a new law, saying that every Swedish pupil in K-12 schools must have an "individual development plan". This plan contains the goals that will be created in connection with parent/teacher/pupil talks that are held two times a year.

IUP Portfolio is meant to serve as an online plan repository so that all parties are able to access the document at any time and follow up on the goals that were created.

Purpose

IUP Portfolio has four different user roles, meaning, different kind of users which are able to do different things. Here are the functions allowed, per user role:

Pupil or parent

  • Front-end authentication with a login or logout box.
  • Plan "one-year" view.
  • Plan "one-semester" view, with the possibility to validate and comment the data entered by the teacher.
  • Portfolio view, with access to the three subdivisions (Documents or pictures or media).
  • Portfolio document view.

Teacher

  • Front-end authentication with a login or logout box.
  • Plan summary view for all of his students, for a year.
  • Plan "one-year" view for a single student.
  • Plan "one-semester" view, where the teacher can edit text fields with what was agreed upon during IRL talks with the pupil.

School administrator

  • Front-end authentication as any of his school pupils / teachers.
  • Back-end authentication with a login / logout box.
  • User Management.
    • Plan Management.
    • Portfolio Management.
      • Document Management.
      • Picture Management.
      • Media Management.

Administrator

  • Front-end authentication as any pupil, parent or teacher.
  • Back-end authentication with a login / logout box, or as any school administrator.
  • User Management.
    • Plan Management.
    • Portfolio Management.
      • Document Management.
      • Picture Management.
      • Media Management.
  • Admin Management.
  • School Management.

Application models

Designer's model

Front-end

  • User secured login.
  • User user interface.
  • User logout.

Back-end

  • User management.
    • User administration (Creation / Modification / Deletion). A user creation / deletion automatically creates / deletes a plan.
  • Plan management.
    • Plan administration (Modification).
  • School management.
    • School administration (Creation / Modification / Deletion).

Entities

  • User : A user is an entity that can authenticates itself on the IUP Portfolio system, and can interact with the website.
  • Plan : A plan is a static entity linked to a "Pupil-Parent" User, and accessible to all user roles.
  • School : A school is a static entity linked to a "Teacher" User, used as a safeguard during the registration of new users.

Programmer's model

Entities

  • User
    • First name.
    • Last name.
    • Sex.
    • Age.
    • Address.
    • Role.
    • School.
    • Plan.
  • Plan
  • School
    • Address.

Related Research Articles

<span class="mw-page-title-main">Database</span> Organized collection of data in computing

In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and analyze the data. The DBMS additionally encompasses the core facilities provided to administer the database. The sum total of the database, the DBMS and the associated applications can be referred to as a database system. Often the term "database" is also used loosely to refer to any of the DBMS, the database system or an application associated with the database.

Optimistic concurrency control (OCC), also known as optimistic locking, is a non-locking concurrency control method applied to transactional systems such as relational database management systems and software transactional memory. OCC assumes that multiple transactions can frequently complete without interfering with each other. While running, transactions use data resources without acquiring locks on those resources. Before committing, each transaction verifies that no other transaction has modified the data it has read. If the check reveals conflicting modifications, the committing transaction rolls back and can be restarted. Optimistic concurrency control was first proposed in 1979 by H. T. Kung and John T. Robinson.

Web development is the work involved in developing a website for the Internet or an intranet. Web development can range from developing a simple single static page of plain text to complex web applications, electronic businesses, and social network services. A more comprehensive list of tasks to which Web development commonly refers, may include Web engineering, Web design, Web content development, client liaison, client-side/server-side scripting, Web server and network security configuration, and e-commerce development.

Identity management (IdM), also known as identity and access management, is a framework of policies and technologies to ensure that the right users have the appropriate access to technology resources. IdM systems fall under the overarching umbrellas of IT security and data management. Identity and access management systems not only identify, authenticate, and control access for individuals who will be utilizing IT resources but also the hardware and applications employees need to access.

The following tables compare general and technical information for a number of relational database management systems. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.

A user-defined function (UDF) is a function provided by the user of a program or environment, in a context where the usual assumption is that functions are built into the program or environment. UDFs are usually written for the requirement of its creator.

In computing, a solution stack or software stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications. Applications are said to "run on" or "run on top of" the resulting platform.

<span class="mw-page-title-main">LAMP (software bundle)</span> Acronym for a common web hosting solution

LAMP is an acronym denoting one of the most common software stacks for the web's most popular applications. Its generic software stack model has largely interchangeable components.

The IUP Portfolio is an education platform for Swedish schools, focused around the students individual development plan and learning portfolio. It is released under the GNU General Public License.

<span class="mw-page-title-main">Silverstripe CMS</span> Content management system

Silverstripe CMS is a free and open source content management system (CMS) and framework for creating and maintaining websites and web applications. It provides an out of the box web-based administration panel that enables users to make modifications to parts of the website, which includes a WYSIWYG website editor. The core of the software is Silverstripe Framework, a PHP Web application framework.

mysqlBind/unxsBind is a DNS management software system. It supports Internet Systems Consortium BIND Domain Name System (DNS) and is distributed as open source software under the GNU General Public License.

<span class="mw-page-title-main">Apache Solr</span> Open-source enterprise-search platform

Solr is an open-source enterprise-search platform, written in Java. Its major features include full-text search, hit highlighting, faceted search, real-time indexing, dynamic clustering, database integration, NoSQL features and rich document handling. Providing distributed search and index replication, Solr is designed for scalability and fault tolerance. Solr is widely used for enterprise search and analytics use cases and has an active development community and regular releases.

A roaming user profile is a file synchronization concept in the Windows NT family of operating systems that allows users with a computer joined to a Windows domain to log on to any computer on the same domain and access their documents and have a consistent desktop experience, such as applications remembering toolbar positions and preferences, or the desktop appearance staying the same, while keeping all related files stored locally, to not continuously depend on a fast and reliable network connection to a file server.

The following tables compare general and technical information for a number of available database administration tools. Please see individual product articles for further information. This article is neither all-inclusive nor necessarily up to date.

Apache Empire-db is a Java library that provides a high level object-oriented API for accessing relational database management systems (RDBMS) through JDBC. Apache Empire-db is open source and provided under the Apache License 2.0 from the Apache Software Foundation.

<span class="mw-page-title-main">Apache Drill</span> Open-source software framework

Apache Drill is an open-source software framework that supports data-intensive distributed applications for interactive analysis of large-scale datasets. Built chiefly by contributions from developers from MapR, Drill is inspired by Google's Dremel system. Drill is an Apache top-level project. Tom Shiran is the founder of the Apache Drill Project. It was designated an Apache Software Foundation top-level project in December 2016.

<span class="mw-page-title-main">MEAN (solution stack)</span> JavaScript software stack

MEAN is a source-available JavaScript software stack for building dynamic web sites and web applications. A variation known as MERN replaces Angular with React.js front-end, and another named MEVN use Vue.js as front-end.

The following outline is provided as an overview of and topical guide to MySQL:

<span class="mw-page-title-main">Nextcloud</span> Free and open-source file hosting software suite

Nextcloud is a suite of client-server software for creating and using file hosting services. Nextcloud provides functionality similar to Dropbox, Office 365 or Google Drive when used with integrated office suites Collabora Online or OnlyOffice. It can be hosted in the cloud or on-premises. It is scalable, from home office software based on the low cost Raspberry Pi, all the way through to full sized data centers that support millions of users. Translations in 60 languages exist for web interface and client applications.