Giter VIP home page Giter VIP logo

ct417assignment1's Introduction

CT417Assignment1

Soft Eng III . Assignment 1

Assignment Brief:

CT417 - Assignment 1 – Student Registration System – You have been asked to build a student registration system as follow:

a) [7 marks] Create a Java project using Maven. The project should contain three classes and each class should have suitable accessor and mutator methods:

a. A student class should contain some attributes such as (Name, Age, DOB, ID, username, courses and modules registered for, etc.). A specific method (getUsername()) will generate the student’s username by concatenating their name and age.

b. A module class, which should contain information such as module name, id (e.g. CT417), list of students, courses it is associated with).

c. A course programme class containing course name (CS & IT or ECE, etc.), list of modules, list of students that are enrolled, academic start date and end date. Start and end dates should use Joda Time classes (i.e. DateTime), which must be added as a project dependency.

Write a simple unit test using JUnit to make sure that all the above works (e.g. get getUsername()) as expected. Also, use Git and Github to setup a local / global repository (the latter is required for part b).

b) [6 marks]

A second Maven project adds the project in part a) as a dependency using Jitpack (https://jitpack.io/), i.e. pulling it from the GitHub repository on demand and providing you with ready-to-use artifacts.

Part b) acts as a driver project creating a handful of fictional students with mock data, adding the students to a number of modules and adding a number of modules to a course. Further on, the program should print out a list of all the courses, their respective modules, and all students, their usernames, assigned modules and the course(s) they are registered for to the console.

Again, use Git and Github to setup a local / global repository.

c) [2 marks] Finally, you must create an account using Shippable which will act as the continuous integration server for part a). You will need to specify a .yml file to automate the build.

Assignment deliverables: • Links to your Github repositories which contain the source code for part a) and b). • Log files /screenshots from your local build (of part b)) / test run (of part a)), as well as a screenshot of the console output of part b). • Screenshots of your local (Git) revision histories, i.e. your Git commits, for part a) and part b). • Screenshots from Shippable’s Jobs and Insights pane to see the build history of the automatic build of part a).

ct417assignment1's People

Contributors

diarmuidbeirne avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.