v0.3.25-rc2
Pre-releaseIntroduction
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 system (Oracle). Methods and techniques will also be presented to populate, retrieve, update and implement integrity features on data in the implemented database system.",
"EFTSL": 0.125,
"Faculty": "Faculty of Information Technology",
"Prerequisites": "One of FIT1040, FIT1045, FIT1048, FIT1051 or equivalent introductory programming unit",
"Prohibitions": "FIT1004, FIT3171",
"SCABand": 2,
"UnitCode": "FIT2094",
"UnitLocationTP": [
[
[
"Clayton"
],
[
"First semester 2017 (Day)",
"Second semester 2017 (Day)"
]
],
[
[
"Malaysia"
],
[
"First semester 2017 (Day)"
]
],
[
[
"South Africa"
],
[
"First semester 2017 (Day)"
]
]
],
"UnitName": "Databases"
}
],
"year": 2018
},
{
"code": false,
"numberOfUnits": 1,
"units": [
{
"CreditPoints": 6,
"Description": "This unit introduces students to the many concepts, tools and techniques for managing information technology projects. Exploring traditional and agile approaches for managing projects, topics include project lifecycles, project planning, project scheduling, team building, risk management, time and quality management. A case study approach will be used to provide learning opportunities, with an emphasis on the unique aspects of information technology projects.",
"EFTSL": 0.125,
"Faculty": "Faculty of Information Technology",
"Prerequisites": "Completion of at least 36 points of study, including one of (FIT1002, FIT1040, FIT1045, FIT1048, FIT1051, ENG1003) (or equivalent) and one of (FIT1049, FIT2003, EDF2005, SCI2010) (or equivalent)",
"Prohibitions": "AFW3043, BEW3640, BUS2176, CIV3205, CPE2006, CSE2203, GCO3807, GEG3104, GSE3003, FIT3086, MGW2700, MMS2203",
"SCABand": 3,
"UnitCode": "FIT2002",
"UnitLocationTP": [
[
[
"Clayton"
],
[
"First semester 2017 (Day)",
"Second semester 2017 (Day)"
]
],
[
[
"Malaysia"
],
[
"Second semester 2017 (Day)"
]
],
[
[
"South Africa"
],
[
"Second semester 2017 (Day)"
]
]
],
"UnitName": "IT project management"
}
],
"year": 2019
},
{
"code": false,
"numberOfUnits": 0,
"units": [],
"year": 2020
},
{
"code": false,
"numberOfUnits": 0,
"units": [],
"year": 2021
}
]
}