Meetings - DIT113-V22/group-06 GitHub Wiki
- Present our progress
- Discuss how we send the information to the car (structure of message)
- Revisit our requirements
- Assign tasks
- The JSON structure is not possible on the Arduino
- In order to stop it instantly we will just send for example "f" 20 times for 20 steps
- We will work on one branch for the issues of sending commands to the car (both sending and receiving it)
- We also discussed what "turn x degrees right" means - That the car is 90° turned from the original position. It will probably have to move a little bit
- Maybe we can make them a little more specific, now that we know more about the domain
- Maybe we can add a priority to them
- We will all take a look at them until the next meeting and bring some suggestions
Task | Assigned | Estimated time (left) |
---|---|---|
Website mqtt connection | Kwabena | 30 minutes |
Reading mqtt input Arduino | Michael, Oscar, Kwabena | 1 hours |
Process mqtt input | Michael, Oscar, Kwabena | 2,5 hours |
Add code block shape | Nia, Elisa | 3 hours |
Update our documentation | Carlotta | 3 hours |
- Drop JSON idea
- Turn x degrees right/left definition
- Leaving possible for loops/ if statements as code blocks for the last sprint
- Present our progress
- Review drag and drop
- Revisit and refactor our user stories
- Install mqtt
- Assign tasks for next week
- Discovered how to allow the drag when hovering over a specific block
- Add puzzle piece form with css
- Add a trash can (to drag the blocks into and delete them) - should be in the control menu
- Change the form a little bit (more space on top and on the sides)
- Fixed inconsistency with drag and drop and magnetism
- Write user stories for "Read and execute code blocks"
- Add user story for block shape and deletion of code blocks
We discussed some ideas for the mqtt connection and explained to each other how the connection works. We also discussed how we can implement the "stop" button and how to make that stop button can interrupt the sequence. Since we need to do some more research on this we have not come to a decision yet.
- Finish user stories
- Decision on some user stories
- Design of delete feature
- Present our progress
- Discuss alternatives for the code blocks
- Discuss again which solution is better
Options:
- Creation of the code blocks within JavaScript: Code blocks stored in a javascript object that becomes visible with a draw function and can be moved inside a canvas.
- Create the blocks within html, make them draggable and allow for them to be dropped within the canvas.
Arguments:
- First idea
Pros:
- We already know how to implement it
- We have an example video that does nearly the exact same thing
- We have a lot of control over how the blocks can look
- The blocks can be stored in a sorted array and therefore easily be executed in sequence
- Each blocks stores its position so we can easily determine whether a block is close to another and snap it into the right position
Cons:
- It does not look that pretty
- It is probably not very effective since we call the draw function very often
- The text is very blurry
- It looks very complicated and is not that easy to understand
- It would be hard to implement the attributes like number of steps
- We would have to change the way the html is build, since we can only move those blocks within a canvas
- Second idea
Pros:
- It looks a lot prettier
- The dragging works smoother
- A lot is already implemented by setting the value draggable to true
- It is easier to understand and read
- We can easily implement a change of attributes in the code block (example number of steps)
Cons:
- We don't have an example that is close to what we are doing
- We don't have much control over the form of the buttons
- We don't know how to do the magnetism for this version yet
- We don't know how to execute the blocks in sequence yet and how we store them.
- We haven't researched yet how to delete the blocks
Decision:
We did not come to a decision in this meeting yet, we will therefore discuss it in our next meeting after we all have done some more research on it.
- Meeting tomorrow on campus (+Zoom for Nia and Kwabena) at 10:00
- Until then understand both options
- Research on option 2 (magnetism, execute them in order, forms, deletion)
- Do research for option 2 (and option 1)
- No decision on code blocks
- Meeting tomorrow at 10
- Decide how we will design the connection
- Present our progress
- Decide which code blocks we want to use
- Split tasks for next week
Options:
- Connect every code block to a letter and have the logic of the action running on arduino
- Letters connected to e.g., more 1 step and then run it for several times
- Use f,b,r,l,s for the movements and send e.g., f then wait until we reach a certain distance or wait a certain amount of time and then send stop.
Arguments:
- We are very limited in what we can do, but it would be very easy to implement.
- It would stop several times during the movements, but we would have more flexibility and it would be easier to implement
- Hardest to implement, but gives us the most flexibility and still has a smooth movement.
Decision:
We decided to go for option 3.
Move ___ steps forward
Move ___ steps backwards
Turn ___ degrees right
Turn ___ degrees left
Turn around
Do a circle / Turn 360°
Wait ___ seconds
Eventually: Repeat ___ times
- Finish Page Layout - Oscar, Elisa, Nia
- Basic Obstacle Avoidance - Oscar, Elisa, Nia
- Research MQTT - everyone
- Research for code blocks - Kwabena, Michael, Carlotta
- Implement the code blocks - Kwabena, Michael, Carlotta
- Add some basic actions (Drag and Drop) to the code blocks - Kwabena, Michael, Carlotta
- Finish Page Layout
- Do Research on MQTT
- Do Research for code blocks
- Implement code blocks with some basic actions
- Decision on Code Blocks
- How the connection should work
- Present progress since last meeting
- Discuss work with GitHub
- Discuss goals/concerns for this sprint
- Discussion topics with the TA’s
Fika from @Elisa and @Kwabena for being late
GUI:
- Explored HTML and CSS
- Research into Drag&Drop, etc.
- First elements added to the GUI (view Attachments) Car:
- Modified prewritten code
- set speed to 50%
- Setup serial port
- two methods
- Detect obstacles: Get the distance recorded from the ultrasound sensor in the front
- Handle inputs: stop (s), forward (f), left (l), right (r), backwards (b)
- Branches are created from the issue
- If you work on an issue you commit to that branch
- We can have multiple branches for one issue, but they should be named so that others can understand their meaning.
- If what you are working on does not fit any issue we should create one together
- You should make commits often, so that we don’t have commits to multiple issues.
**Meetings: **
- Oscar, Carlotta - easter weekend gone
- Friday 14.4 no team meeting
- Tuesday 12.4 online
- Thursday 14.4 mandatory meeting
- Nearly everyone doesn’t know when exactly they will be gone for easter
- Friday 8.4 Elisa on Zoom
Code related:
Make code blocks so that drag and drop is easy to implement
Communication:
For meetings: book rooms (@Nia @Michael Larsson) and schedule zoom meetings (@Óscar Reina Gustafsson) Progress checkup in every meeting
- Present our idea
- Revision of the milestones - Tipps, Suggestions, Clarification of the feedback
- Issues for Milestone 1
- GitHub
- Are we allowed to commit to master? Could we have a branch for each sprint and after a review we merge that to master
- Work with GitHub
- Easter
- Room bookings
Current Version of the static GUI
- Write Stories for Print #1
- Discuss Work Devision
- Should we add a new Milestone to setup the Arduino?
- We will need to decide that as soon as we have more information on how much code runs on the micro controller and how much on our laptop
- We will know that after the task for Wednesday
- View GitHub for the stories
- Discussion about Left/right movement the car resulted in decision to add that as a story for sprint 2.
Week 1:
Basic Obstacle Avoidance @Kwabena Asare Boström @Carlotta Hillger @Michael Larsson
Canvas, Selection menu and page Layout @Nia @Elisa Ahlbäck Norris @Óscar Reina Gustafsson
Week 2:
Basic Car Movement @Nia @Elisa @Óscar Code Blocks, Controls Buttons @Kwabena @Carlotta @Michael
Meetings:
- Meet 15 minutes before we actually start working
- After those 15 minutes we start working even if not everyone is there
- If there is no valid reason for being late then you have to buy fika for the team
Deadlines:
- We should all ask for help if we struggle to finish a task
- We should all be available to help others if we have time
- We should reflect on how much time something took so that we can make better time estimations for the next sprint.
- Write User Stories as GitHub issues
- Decide whether to add another Milestone
- Left/Right Movement in Sprint 2
- Rules for being late to meetings
- Rules for missing deadlines
- Our goals for this meeting
- Create first version of the Work Breakdown Structure and User Stories
- Create Milestones for GitHub
- Decide on our Work Devision
- Explore and setup GitHub Project Management tools
13:15 - GitHub PM tool
We will use the GitHub PM tool in combination with Confluence pages
13:30 - Create Milestones
- Milestones completed
- Requirements need to be refined
- View GitHub for more detail
Refine and add requirements for the milestones
- We will use the GitHub PM tool
- Decision on Milestones
📆 : Date Mar 28, 2022
- Finish Project Proposal
- Decide on tools to use
Presentation
- Got approval from the teachers
- We should think about what age group to target and make some research about it
- Start with sequential code blocks and then maybe add loops and/or if statements
Project Proposal
Updated README.md
Tools
- JavaScript - to get inspiration from Scratch
- HTML and CSS
- C++ and Arduino for the car
- Tools we will use
- Project Proposal
📆 : Date Mar 25, 2022
- Our goals for this meeting:
- Decide on project scope
- Create project idea slide
- Start with user stories - use Work Breakdown Structure
- Think about what programming tools to use (e.g. javaFX, …)
Item | Notes |
---|---|
Summary of Brainstorming |
|
Scope of the project | view below or view Milestones and Requirement specification |
Presentation Slide | Link to the slide |
Scope | Items |
---|---|
Out of scope |
|
Desired |
|
Important |
|
-
Get Dimitris approval @Carlotta
-
Finish the slide @Nia
-
Think about what tools to use
-
Think about how to divide work
- Scope definition
📆 Date Mar 22, 2022
- Set expectations for this project
- Decide on documentation
- Finish group presentation
- Decide on meetings
Time | Item | Notes |
---|---|---|
Weekly Meetings | Tuesday 13:00-15:00, Thursday (optional) for work, Friday 10:00-12:00 | |
Time | Next Tasks |
|
Meetings on Tuesdays and Fridays (plus optional work meeting on Thursday)