HYF-Class20/home

Emran Hamdard: Agile development Loruki: 4 Weeks

Closed this issue ยท 0 comments

Learning Objectives

0. Developing HTML & CSS

Practice with the skills, tools, and workflows you will need to efficiently develop websites written with HTML & CSS.

  • ๐Ÿฅš VSCode: you can ...
  • use the LiveServer extension to launch an HTML page in the browser
  • use autocomplete to begin a new HTML document, create new tags, and much more
  • use the HTML CSS Support and IntelliSense fo CSS class names extensions to make writing HTML & CSS more efficient
  • ๐Ÿฅš Formatting HTML & CSS: You can ...
  • use VSCode configurations to format your code on save
  • use npm run format to format all the code in your repository
  • ๐Ÿฅš Linting CSS: You can use the npm run lint:css script to find mistakes in your CSS, and you can fix the mistakes.
  • ๐Ÿฅš Validating HTML: You can use the npm run validate:html script to find mistakes in your CSS, and you can fix the mistakes.
  • ๐Ÿฅš Browser Developer Tools: You can ...
  • inspect the source code of a web page using the Sources tab
  • find any part of the web page in the Elements tab of your Dev Tools DOM inspector
  • find the styles for any element in the Elements tab
  • make temporary changes in a web page from the Elements tab to see how they will look

1. Following Plans

Practice working together in a group to build small websites in incremental steps according to a plan. You will be given final code, a detailed plan to rebuild it, and will need to work as a group following the processes in Planning and Collaborating.

  • ๐Ÿฅš Project Definition and Scope: As a group, you can agree on what you are trying to build, and can clearly describe the project using a README and a repository description.
  • ๐Ÿฅš Project Constraints: As a group you can define project constraints by discussing your strengths, weaknesses and context. You can set these types of constraints:
  • External: constraints that come from outside your group
  • Internal, Involuntary: constraints that come from within your group, but your group did not decide to have.
  • Internal, Voluntary: constraints your group decides on to improve the quality of your development process and final software.
  • ๐Ÿฅš Communication Plans: You can work with your group mates to agree on a communication plan to follow during development.
  • ๐Ÿฅš Communicating Challenges: During development you can discuss with your group when ...
  • you are blocked and need help the agreed channels of communication.
  • your schedule or availability changes
  • you are having trouble getting along with each other
  • ๐Ÿฅš Using a Backlog: You can develop from a backlog of features organized by priority:
  • must-have
  • should-have
  • could-have
  • ๐Ÿฅš Follow a Development Strategies: You can follow a development strategy to understand the code required for must-have user stories.
  • ๐Ÿฅš Create Issues From a Dev Strategy: You can create issues for user stories in your project based on the development strategy.
  • ๐Ÿฅš Retrospective: Your group can complete a retrospective to ...
  • assess how well you worked as a group
  • find ways to improve in the next project
  • compare your plan to the reality of developing your website
  • ๐Ÿฃ Claiming and Completing Issues: You can claim issues from the TODO column of a project board and ...
  • track your progress with the project board
  • develop your code locally on a separate branch
  • send a PR that passes CI checks and meets the requirements
  • ๐Ÿฃ Code Review: You can both review a group mate's PR, and productively participate in a review of your own code.
  • ๐Ÿฃ Match a Design & Acceptance Criteria: When developing your tasks, you can write code that matches the project's Wireframe and meets your issue's Acceptance Criteria.

2. Writing Plans

Practicing writing your own plans as a group. You will be given only the final code for HTML/CSS web pages, your group will need write a detailed plan for rebuilding the website in small steps.

  • ๐Ÿฅš Write User Personas: As a group you can describing your site's users with User Personas, and you can use the personas to plan your website from the user's perspective.
  • ๐Ÿฅš Write User Stories: Given a working web page, you can describe it with user stories and acceptance criteria for each user story.
  • ๐Ÿฃ Write a Backlog: After listing all the user stories for a web page, you can organize them into a Backlog by priority: must-have, should-have and could-have
  • ๐Ÿฃ Create a Prioritized Design: Using your backlog and the original site as a guide, you can create a Wireframe of the site your group will build. You can use different colors and comments to indicate a priority for each component in the Wireframe.
  • ๐Ÿฃ Write a Development Strategies: You can translate your Wireframe and Backlog into a Development Strategy for the must-have user stories.

3. Adapting Plans

Even the best plans are not perfect, it's not possible to know everything ahead of time! You may be able to plan everything ahead of time when the web pages you build are very small and you have the code ahead of time, but it's a whole different thing when you need to build a larger web page over a longer period of time.

In this chapter you will practice full Agile Development by developing a larger, open-ended web pages and adapting your plans as you go. Your team will need to make an initial plan, but the plan will change! Practice having regular meetings with your group to review the website's progress, review your plan, and make any changes in the plan that are necessary to keep the project on schedule.

  • ๐Ÿฃ Adjusting the Backlog: As a group you can agree to changes in the backlog when necessary.
  • ๐Ÿฃ Adjusting the Design: As a group you can agree on changes to the design during the development process when it becomes clear your old design needs updating.
  • ๐Ÿฃ Updating the Project Board: You can manage the project board by adding, removing or updating issues when necessary. This includes changing labels, milestones, or assignees when necessary.

AGILE (4 weeks)

  • Understanding AGILE
    Agile is a about teamwork! We create small circle to achieve the project goal. Agile is flexible because it's build with small steps. Different with waterfall method in agile if we need to make any changes we still can go back to the previous step. In waterfall method the project needs to be break down in order to make any changes.

Agile Methods

  • Requirement definition & analysis of concept
  • Planning of sprint
  • Collaborative design development
  • Create & implement
  • Review & monitor

Agile Methodology

  • User persona an imaginary audience. It helps us to understanding the targeted group audience. Without user persona we can't make wireframe.
  • User stories/backlog is sorted by PRIORITY! It contains needs of the audience. Must have, Should have and Could have.
  • Acceptance criteria example: A user can't submit a form without completing all mandatory
  • Wireframe must be create based on user story/backlog.
  • Development strategy converting the must have or priority needs of audience to coding phase.
  • Retrospective intern feedback in group. It's about BEHAVIOR not people. We are not allowed to pointing someone in this session. Mostly done at the end of the week.
  • Stand-up meeting is a brief daily meeting. It's like updating our work project to the group, what we've done, what we are currently busy with or even which problem do we have about the task. Mostly done for max 15mins
  • Constraints consist of planning, availability timetable, template file, code of conduct.

Planning

  • Make a group availability timetable
  • Set-up meeting hours for the whole week based on availability timetable
  • Creating repo using template
  • Protecting master repo
  • Set the repo live/live url
  • Adding collaborator
  • Creating additional labels
  • Creating Project Board and organising it
  • Creating issue to be put in PB
  • Discussing README content
  • Discussing code of conduct
  • Discussing user persona
  • Discussing backlog
  • Discussing design
  • Creating wireframe
  • Retrospective

Week 1 (April 2nd, 2023)

I Need Help With:

Nothing for a moment

What went well?

  • planning. our team leader didn't planned good

What went less well?

The wireframe

Lessons Learned

  • Understanding AGILE

Sunday Prep Work

Not yet.

Week 2 (April 13, 2023)

I Need Help With:

Nothing for a moment

What went well?

  • everything went well. according to the plan

What went less well?

The code

Lessons Learned

  • Understanding AGILE

Sunday Prep Work

Not yet.