Code Monkey home page Code Monkey logo

oopp-gogreen's Introduction

README GROUP 42

Go Green is an application that helps you reduce the amount CO2 you produce on a daily basis. Add activities and track the amount of CO2 you saved by performing it. Follow your friends and compare the score.

Getting started

The folder src contains all the code for the Go Green project of group 42. To run the server go to the package server and run the Application. Keep the server running and go to the gui package to run Main.main(). From there on you can either register or login.

Installation:

  1. Generate a SSH key and add it to GitLab (see https://docs.gitlab.com/ee/gitlab-basics/create-your-ssh-keys.html). For steps 2 and 3 use the git terminal.
  2. Create a new directory in which you want to save the project and type git init.
  3. Now type git clone [email protected]:cse1105/2018-2019/oopp-group-42/template.git < Folder you want to save the project in >.
  4. Open this in intellij and add the pom.xml file to maven.
  5. Run maven install to install the libraries used.
  6. Start Application.main() in the server package to run the server.
  7. Run Main.main() in the package gui to run the application.

Running the tests:

For running the tests jdk 8 is required
  • Mockito – used to test methods using a mocking server or database connection.
  • Power Mockito – used for testing static methods.
    Navigate to the directory src > test, now right click on the folder and click on run all tests.

For code coverage with jacoco run:

Maven install Go to target > site > jacoco > index.html and open this in your browser.

For checkstyle run:

Maven site Go to target > site > checkstyle.html and open this in your browser.

Built with

  • Spring framework – web framework used
  • Maven – dependency management

Authors

  • Amna Ahmad
  • Rick Huizer
  • Simran Karnani
  • Pien Kastelein
  • Eduard Klein Onstenk
  • Chaiwon Park
  • Omar Said

License

This project is licensed under the MIT license (see LICENSE.md).

Personal Development Plans

Student number: 4847652 (Rick Huizer)

Personal Development Plan:

My name is Rick , and I feel like my strong points are that I am disciplined and often have a positive mindset. This can be of great use in a team environment to motivate the other team members, and because of this I will not give up quickly.

One of my weak points is planning. I find it difficult to already plan weeks ahead and actually stick to the planning. I will often be way ahead or start falling behind, I need to make sure I have a good and realistic planning. In my team this will show if the plans we make are not realistic, but when they are I will do my best to stick to the planning.

My other weak point is writing too much code without testing it properly first. I need to make sure to test everything very thoroughly before moving on to the next part to prevent having many bugs at the end of the project. In my team this will not show (hopefully) since if you did not test your code thoroughly you will fail.

During this course I would like to learn how to organise seven people working on the same project. How do you make sure everybody does their part and how do you evenly divide the project? How do you make sure everybody stays synchronized and how do you merge all the code together? How do you keep track of what is finished and what still needs to be implemented? I hope to learn how to manage all these problems efficiently and in that way finish such a big project without too much stress. I can achieve this goal by staying up to date with the planning.

Of course i also want to learn about the actual programming itself, in particular how to communicate with websites through an application and how to connect a database to that.

I hope I can finish the project without too much stress and keep an overview of the situation the entire time. If that has succeeded in the end then I think i have achieved my goals for this course.

Pien Kastelein 4666135

Two of my strong points.

  • I am direct; I say what I think and I'm not afraid to get or give positive or negative feedback.
  • I want to work/learn; this is my 2nd first year (I did mathematics last year and it didn’t really go that well) so I really want to do everything better this year, so I really want to work hard for my points.

Two of my weaker points.

  • I am not good at planning; I have a pretty busy schedule because I train 5 times per week. I sometimes have difficulties with doing everything on time.
  • I sometimes lack concentration; it depends on the day how concentrated I am. There are days I can work for hours and there are days I can work for 10 minutes.

My Main goal during the project is learn to plan. In a group it is important to do everything on time and as planned. It is one of my weaknesses and I really want to improve that.
Another goal for me is to learn how to really divide the work evenly and to use all the strengths of the group. To make the best project everyone has to have his or her input. Not just one person who decides everything.\

I am working on planning better and making more use of agenda’s. It helps a lot but it still needs some improvement. For my concentration I haven’t really found something. So that could also use some improvement. I try to sleep better, exercise, eat well, all those things. I haven’t found the perfect solution yet.
I do notice my concentration increases when working with others, so my best solution for now is to work with a few people together as often as possible. For my planning, I need to be more strict. The first quarter went really well, but I let it slip the second quarter. I really want to make it better this quarter.

Amna Ahmad

Personal Development Plan

4870441

Step 1:

  • One of my strong point is that I have a lot of perseverance once I start working on something. I also take responsibility for the work I do. For example when I take responsibility of something I try my best to make it work and to understand it on my own before asking help. In this case that would be trying my best to get my work done every week.
  • My weaker point is that sometimes my way of working can get messy. Also my order of getting my work done is not that logical. For example when programming whenever I come with an idea I just write it down but afterwards I would never use that piece of code again, so it gets confusing. I am trying to make sure that I remove the pieces of code I don’t use to keep it comprehensive.

Step 2:

  • Goal: During this course I want to learn how to learn together in a team to create something on a larger scale than a programmer could do on its’ own. Also do I want to see how combining the different programming skills works in such teams. Besides that I would like to see how I would handle the workload of a project. I do also want to develop my programming skills during this course. This goal is important because this is how projects are going to work in the future as well, as not programming is always done in teams and not on your own. I think that after this course I will have somewhat of an impression of how it works for real projects, but after the bachelor I will have enough experience to actually work in a team.
  • Reality: As I am following this course, I’m actually working on achieving my goal. What is going well is that I am motivated to work on it and make it work as a team.
  • Options: The only option I have set for myself is putting a lot of effort in the work and keeping up every week. Something that could be stopping me from reaching my goal would be the other courses in this quarter, so time management will definitely be needed to achieve my goal.
  • Will: In order to achieve my goal I am going to put a lot of effort in my work. I also want to work on my programming beside it to make sure I understand everything that is done for the project. The teammates could help me by helping me out whenever I have an issue with my tasks.

Omar Hassan Said Student Number: 4757955

What are two of my strong poi nts?

  • I am good at communicating with people, and working in groups. An example of that would be my web and database assignments, and the Main core of this course is working together as a group.
  • I am also good at problem solving and overcoming obstacles with researching solutions online, so this would be crucial point when we run into an obstacle in programming. What are two of my weaker points?
  • one of my weaker points would be that I am not that organized, so being the note taker of the group will be a little bit of a hard task.
  • I am also bad with showing up on time, so as my group mates decided, I will be the one always bringing snacks to the group :) What are my learning goals for this course?
  • Increasing my communicating skills, and the ability to work in sync with a group as one mind.
  • Making the most out of this experience, as this will be the closest experience I have to working in an actual work field of this sort. What are my options to achieve my goals?
  • Focusing on always being in touch with my group mates and updating each other with our progress frequently.
  • Try to be as professional as I can, so arriving on time, submitting my work on the agreed date, helping my group mates if they are stuck. What motivates me to achieve my goals?
  • The feeling of achievement is always a good drive to keep working harder, because you see a positive result at the end.
  • Also being in a group project means people are depending on you to get your part done, so you have to be more strict with yourself.

Simran Karnani

Student Number: 4798341

Personal Development

Working in many collaborative projects and being a good listener, I am able to note down the different strengths each of the group members have and then collaboratively thinking of how to put all these strengths together to make one interesting project. However, I lack in the communication department, so getting these points across to a big group is a struggle for me. I’m hoping to improve on this skill through this project, since we must constantly take up the role of being a leader. As I lean more on the introvert side, I don’t speak too much, but will try to always give some input so my group understands my vision as well. I would identify another strength of mine being that I’ve worked on making a java application previously, hence I know the basics of using database in java and making a graphical user interface. The application I made was a very simplified version hence I hope to gain more knowledge and improve my skills on making applications.

Goal

As one of the core focuses of this project is group collaboration, my Main goal is to work collaboratively with my group members. We all should share the same vision and develop off each other’s strengths. Moreover, everyone should be on the same page since it’s many of us working on only one application. In this way, everyone will understand what must be done on his/her part and should be able to deliver their products on time. We will succeed in achieving this goal when we understand each other’s perspectives, help each other out, and of course deliver the final product. Besides for teamwork, my goal is to improve my database skills.

Reality

In terms of working as a team, we’re still in the stage of getting to know each other and each other’s skills. In the self-development part, working with database, I‘m going to start watching tutorials and practicing with them.

Options

My options of reaching my Main goal is to hear everyone’s ideas first and then come together to either use one of those ideas or put together a few of the ideas.

Will

As off right now, we can discuss what we want to use, for example the preferred frame work, IDE, etc., and brainstorm a little more about the project.

Chaiwon Park (4813790)

Personal Development Plan

My strong points

I can work hard and put effort so that I can be helpful to the team.

I learn new things quite fast, so that I will be able to handle with lots of new things we are going to be doing alright.

My weaker points

I haven’t been programming for a long, so I don’t have much knowledge or skills of the programming.z

Goal

  • Improve programming skill
  • Handling with a big project
  • Team work and effective communication between team members

It is important in order to work efficiently and complete the project without any troubles. In order to achieve my goal, I have to be active in a team, speak out my opinions and obviously respect others’ opinion and integrate with that.

Eduard Klein Onstenk

4930894

Strong/weak points group related

I’m always quick to take a different perspective on things. With a somewhat weird family situation I learned that things often are more complex than first meets the eye, even if I don’t agree on something or dislike something. This could be useful for the team if two team members can’t figure out an argument or just for general group discussion. A second good quality is that I’m always pressured into doing work if it’s for a group and won’t be quick to neglect putting in time into the project because I don’t want to let anybody down. My weaker points are that although I’m interested in things that are difficult for me I can get quite annoyed if I can’t figure something out or understand something. So if I have to do a certain task for the group which I can’t figure out that could be frustrating and I might want to postpone things which I shouldn’t. And my second weak point is that I’m an excellent procrastinator. This speaks for itself.

Goals SMART formulated

S

  1. When I don’t understand something I want to be quick on gathering information on it or seek help elsewhere.
  2. When I have work to do get on it early and be done with it so that I don’t have time problems later in the project.
  3. Have a well structured and up to date planning so that procrastinating becomes difficult and the group works well because everybody is up to date.

M

  1. Keep track of things I researched during the project in separate documentation
  2. When I’m not where I should be or ahead of current planning discuss with teammates and there should be consequences.
  3. Have a personal planning in which I should be able to show what I’m planning on doing at least 1 week in advance and it should also be up to date.

A All of these goals should be done by me, except when I slack then my teammates (or we as a group) should decide what the consequences are.

R I should definitely be able to have a well structured planning and since this projects subject and programming language are well discussed on the internet I should be able to find out everything I need to know in a realistic setting.

T Before the start of each new week my personal planning should state when I have time to work on the project. My part of the project planning should be finished before the deadlines set up with the team. If I can’t figure something out I should get on it asap.

oopp-gogreen's People

Contributors

chaiwon 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.