Skip to content
This repository has been archived by the owner on Nov 14, 2017. It is now read-only.

Releases: MonPlan/monPlan-API

v0.6.0

20 Jan 03:33
Compare
Choose a tag to compare
v0.6.0 Pre-release
Pre-release

v0.6.0 Release Canditate

This release also contains v0.5.0 files, and more security fixes

  • move foward with more functional, and security patches for the API. This patch allows the server to be in HTTP and HTTPS mode, and depends on a SSL/TLS certificate and private key to be within the /ssl/ directory for HTTPS to be enabled.
  • fixing potential security vulnerabilities within the API, most of the security vulnerabilities have been fixed, by updating potential codes. There are however potential security loopholes, which mainly depends on TLS/SSL certificate.
  • interact with the result within the rules database within our DataBase.
  • updated coursemaps within the main API database, the courses basic JSON was also updated
  • Snapshots on the API side has been implemented and is integrated within monPlanR (v0.3.0-preview).
  • uploaded SETU Data into API database
  • updated GET requests
  • uploaded Course Infomation into API database
  • built demo system of updating unit rating system
  • some minor text and security fixes

v0.4.0-rc1

09 Jan 04:37
Compare
Choose a tag to compare

Overhaul of v0.3.x including:

  • Course Maps which allows for templating to be enabled in the web application
    • updates to Course Maps (as we begin to rollout cleaner maps)
    • minor text fixes
  • Status Code Headers allowing clearer communication better from the API server and our app which uses the axios HTTP request package
  • Update Core Package so that it also responds with a basic response (e.g. only UnitName, UnitCode and Faculty)
  • Pre-0.4.0 Security Packages and Code
  • Security Fixes
  • Minor Text Fixes

This version completely overhauls on our Course Map calling method, the API basic course has been updated so that it is more better, and easier to control. The following course maps are not included:

  • B2013-2
  • B2017-3
  • B2013-3
  • B2012-2

Following Maps have been rebuilt to new standards:

  • F2001-0
  • E3006-0

To report problems with this release, you will need to submit feedback via the web application and/or via the Issue Submission System.

v0.3.25-rc2

04 Jan 05:43
Compare
Choose a tag to compare
v0.3.25-rc2 Pre-release
Pre-release

Introduction

The 0.3.x Series completely overhauls our API system, allowing more data to be called from our system. This update includes:

  • More Data when you call the API more information is returned for each individual unit
  • Course Maps which allows for templating to be enabled in the web application
    • updates to Course Maps (as we begin to rollout cleaner maps)
    • minor text fixes
  • Status Code Headers allowing clearer communication better from the API server and our app which uses the axios HTTP request package
  • Update Core Package so that it also responds with a basic response (e.g. only UnitName, UnitCode and Faculty)
  • Pre-0.4.0 Security Packages and Code
  • Security Fixes
  • Minor Text Fixes

What's Coming (Roadmap of API) - v0.4.x and Beyond

  • Security (oauth) layer for response
  • mongodb backend upgrade
  • Faculty-by-faculty upgrade with perquisites and co-requisites. Expect rollout to be Mid-January to End-February, this is then used for advanced validation
  • mongodb for Unit Ratings

Update Details

More Data

Our third version of the API increases usability of our API calls, allowing more information to be displayed across more options. For example calling a unit - FIT2004, the server responds with

{
  "UnitCode": "FIT2004",
  "UnitName": "Algorithms and data structures",
  "Description": "This unit introduces students to problem solving concepts and techniques fundamental to the science of programming. In doing this it covers problem specification, algorithmic design, analysis and implementation. Detailed topics include analysis of best, average and worst-case time and space complexity; introduction to numerical algorithms; recursion; advanced data structures such as heaps and B-trees; hashing; sorting algorithms; searching algorithms; graph algorithms; and numerical computing.",
  "UnitLocationTP": [
    [
      [
        "Clayton"
      ],
      [
        "First semester 2017 (Day)",
        "Second semester 2017 (Day)"
      ]
    ],
    [
      [
        "Malaysia"
      ],
      [
        "First semester 2017 (Day)",
        "Second semester 2017 (Day)"
      ]
    ]
  ],
  "CreditPoints": 6,
  "Faculty": "Faculty of Information Technology",
  "EFTSL": 0.125,
  "SCABand": 2,
  "Prerequisites": "One of FIT1008, FIT1015, FIT2085 or CSE1303 and 6 points of Level 1 mathematics.",
  "Prohibitions": "CSE2304, FIT2009"
}

This is then used in conjunction with our web app for simple validation and other details such as Credit Point and Course Cost estimator.

Course Maps

Also we are happy to announce - using scraped data from https://study.monash we have designed course map templates which can be integrated with our app, the introduction of course maps, allows rendering of 'Course Maps' on monPlan, allowing students to place and move around units.

For example the call of C2000 (Bachelor of Information Technology), the server responds with:

{
  "courseCode": "C2000",
  "courseName": "Information Technology",
  "courseType": "Bachelor degree",
  "teachingPeriods": [
    {
      "code": false,
      "numberOfUnits": 2,
      "units": [
        {
          "CreditPoints": 6,
          "Description": "This unit introduces programming fundamentals and the Python language to students. The unit provides a foundational understanding of program design and implementation of algorithms to solve simple problems. Fundamental programming control structures, built in and complex datatypes and mechanisms for modularity will be presented in Python.Topics covered will include basic input and output, program control structures, basic data structures and modular program structure. Problem-solving strategies and techniques for algorithm development, iteration and recursion, algorithm efficiency and the limitations of algorithms will be introduced.",
          "EFTSL": 0.125,
          "Faculty": "Faculty of Information Technology",
          "Prerequisites": "VCE Mathematics Methods or Specialist Mathematics units 3 & 4 with a study score of 25 or MTH1010.Note: For 2016 Further Mathematics with a study score of 35 will be accepted.",
          "Prohibitions": "FIT1029",
          "SCABand": 2,
          "UnitCode": "FIT1045",
          "UnitLocationTP": [
            [
              [
                "Clayton"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)"
              ]
            ],
            [
              [
                "Malaysia"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)",
                "October intake 2017 (Day)"
              ]
            ]
          ],
          "UnitName": "Algorithms and programming fundamentals in python"
        },
        {
          "CreditPoints": 6,
          "Description": "The unit introduces students to fundamentals of computer systems, networks and security. It provides basic knowledge of computer organisation and architecture, operating systems, networking architecture, technology and operation. It introduces the concepts of security goals for protecting common modern computer systems and communication networks from adversaries and the deployment of suitable countermeasures to achieve these goals.",
          "EFTSL": 0.125,
          "Faculty": "Faculty of Information Technology",
          "Prerequisites": "",
          "Prohibitions": "FIT1031 and FIT2078",
          "SCABand": 2,
          "UnitCode": "FIT1047",
          "UnitLocationTP": [
            [
              [
                "Clayton"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)"
              ]
            ],
            [
              [
                "Malaysia"
              ],
              [
                "First semester 2017 (Day)",
                "October intake 2017 (Day)"
              ]
            ],
            [
              [
                "South Africa"
              ],
              [
                "First semester 2017 (Day)"
              ]
            ]
          ],
          "UnitName": "Introduction to computer systems, networks and security"
        }
      ],
      "year": 2016
    },
    {
      "code": false,
      "numberOfUnits": 1,
      "units": [
        {
          "CreditPoints": 6,
          "Description": "This unit provides a practical and theoretical introduction to what it means to be an IT professional today. Students will encounter a range of issues relevant to professional practice in the workplace, as well as an understanding of the wider responsibilities that professionals are called upon to uphold in society. Topics addressed include: organisational and professional communication; mindfulness; teamwork; the nature of the IT professions; the role of professional associations; problem solving and information use; cross-cultural awareness; personal and professional ethics and codes of practice.",
          "EFTSL": 0.125,
          "Faculty": "Faculty of Information Technology",
          "Prerequisites": "Completion of 12 points of FIT units.",
          "Prohibitions": "FIT2003",
          "SCABand": 2,
          "UnitCode": "FIT1049",
          "UnitLocationTP": [
            [
              [
                "Clayton"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)"
              ]
            ],
            [
              [
                "Malaysia"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)"
              ]
            ],
            [
              [
                "South Africa"
              ],
              [
                "Second semester 2017 (Day)"
              ]
            ]
          ],
          "UnitName": "IT professional practice"
        }
      ],
      "year": 2017
    },
    {
      "code": false,
      "numberOfUnits": 2,
      "units": [
        {
          "CreditPoints": 6,
          "Description": "The unit introduces students to systems analysis and design as a problem solving activity, within the framework of a selected methodology. It will focus on contemporary industry practice; investigating understanding and documenting system requirements; a range of design and implementation activities; and professional skills required for systems development.",
          "EFTSL": 0.125,
          "Faculty": "Faculty of Information Technology",
          "Prerequisites": "24 points of FIT units",
          "Prohibitions": "BUS2021, CPE2003, CSE1204, CSE1205, GCO1813, GCO2601, GCO2852, GCO2826, IMS1001, IMS1002, IMS1805, IMS2071, IMS9001",
          "SCABand": 2,
          "UnitCode": "FIT2001",
          "UnitLocationTP": [
            [
              [
                "Clayton"
              ],
              [
                "First semester 2017 (Day)",
                "Second semester 2017 (Day)"
              ]
            ],
            [
              [
                "Malaysia"
              ],
              [
                "First semester 2017 (Day)"
              ]
            ],
            [
              [
                "South Africa"
              ],
              [
                "First semester 2017 (Day)"
              ]
            ]
          ],
          "UnitName": "Systems development"
        },
        {
          "CreditPoints": 6,
          "Description": "This unit will provide an introduction to the concepts of database design and usage and the related issues of data management. Students will develop skills in planning, designing, and implementing a data model using an enterprise-scale relational database syste...
Read more