Skip to content

Latest commit

 

History

History
253 lines (198 loc) · 19.9 KB

sprint_1_product_development.md

File metadata and controls

253 lines (198 loc) · 19.9 KB

Product Development

Introduction to Project Requirements spoken by MyWebClass.org CEO

Greetings, fellow developers! As the CEO of MyWebClass.org, I'm here to talk to you about the most exciting part of our jobs: legal compliance! (insert sarcastic eye roll)

Now, I know what you're thinking. "But boss, I went into web development to avoid lawyers and paperwork!" Well, tough luck, my friends. We've got to comply with all those pesky regulations and laws if we want to avoid getting sued and keep our website running.

But don't worry, it's not all boring legal stuff. We've also got to make our website accessible to people from all over the world. That means translating everything into Klingon and emoji, right? (pause for laughter) Just kidding, we'll settle for some basic internationalization features.

And speaking of features, we've got to make sure our website is visible on search engines. Otherwise, we'll end up like that one website that nobody visits except for the owner's mom. (insert exaggerated sad face) So let's get our SEO game on and make sure we're the top result for "awesome web development resources"!

But wait, there's more. We've also got to make our website accessible to people with disabilities. Because who needs to see images or hear audio when you can just read text in size 72 font, am I right? (pause for laughter) Okay, I'm kidding again. Let's make our website inclusive and welcoming to everyone.

And don't forget about the most important task of all: choosing the best front-end framework. Will it be HTML, Next.js, Bootstrap, Foundation, or Material Design? It's like the Avengers of web development! (pause for laughter) But seriously, let's evaluate them all and choose the one that meets our needs and impresses our users.

Last but not least, we've got to comply with GDPR regulations and protect our users' privacy. Because we're not just web developers, we're superheroes who fight for justice and data protection!

So let's roll up our sleeves, grab some coffee, and get to work. We've got a website to develop and a world to conquer! (insert inspiring music and dramatic exit)

Development Requirements

1. Front-End Testing

  • Choose three different CSS frameworks and implement the homepage and content page using each one. Also, implement the same pages in plain HTML and CSS.
  • Test the performance of Next.js by comparing it to three CSS frameworks and static pages.
  • Use Playwright to automate browser testing of the pages that are currently in the project (homepage, content page, story). You will need tests for Next.js, Bootstrap, Tailwind, and any other version of the site you make.
  • Measure the following metrics: page load time, accessibility score, best practices score, first contentful paint (FCP), time to interactive (TTI), total blocking time (TBT), cumulative layout shift (CLS), page size, number of requests, bundle size, overall size, and other relevant statistics.
  • Include industry statistics for each of these metrics in your presentation, such as average page load time for websites in the same industry or the ideal score for accessibility and best practices.

2. Development Tasks

  • Conduct legal research for the website, implement necessary changes, perform testing, and resolve any issues that arise. This will help ensure that your website complies with relevant laws and regulations.
  • Conduct research and implement internationalization features for the website, perform testing, and resolve any issues that arise. This will make your website accessible to users from different countries and cultures.
  • Conduct SEO research, implement changes, perform testing, and resolve any issues that arise. This will help improve your website's visibility and ranking on search engines.
  • Conduct web accessibility research, implement changes, perform testing, and resolve any issues that arise. This will help ensure that your website is accessible to users with disabilities.
  • Develop a responsive content template and homepage for the website. This will help ensure that your website is visually appealing and easy to navigate on different devices.
  • Implement GDPR requirements with Google Analytics using Consent API and Javascript. This will help ensure that your website complies with relevant data privacy regulations.

Make sure to carefully follow the instructions for each task and pay close attention to any issues that arise during testing. By completing these tasks, you will ensure that your website is legally compliant, accessible, user-friendly, and optimized for search engines. Good luck with your project!

Product Development PowerPoint Report Requirements

I. Implementing Key Features

A. Internationalization

  1. Determine business requirements for internationalization
  2. Identify positive and negative tests to ensure internationalization works as intended
  3. Research and implement tools and technologies to support internationalization
  4. Recommend tools with data and specific reasons why each tool was chosen

B. Search Engine Optimization (SEO)

  1. Determine business requirements for SEO
  2. Identify positive and negative tests to ensure SEO works as intended
  3. Research and implement tools and technologies to support SEO
  4. Recommend tools with data and specific reasons why each tool was chosen

C. Web Accessibility

  1. Determine legal requirements for web accessibility
  2. Identify positive and negative tests to ensure web accessibility works as intended
  3. Research and implement tools and technologies to support web accessibility
  4. Recommend tools with data and specific reasons why each tool was chosen

D. Responsive Design

  1. Research front-end responsive frameworks for CSS and JavaScript
  2. Compare HTML/Next.js/Bootstrap/and at least two other front-end frameworks
  3. Explain recommendation and support with facts and data
  4. Demonstrate how the home page and content page appear on mobile and desktop
  5. Recommend tools with data and specific reasons why each tool was chosen

E. GDPR Compliance and Google Analytics Consent Mode API

  1. Research GDPR compliance and Google Analytics Consent Mode
  2. Explain technical implementation of GDPR compliance and the API
  3. Demonstrate implementation and show that it works
  4. Provide a privacy policy and confirmation modal for GDPR compliance
  5. Recommend tools with data and specific reasons why each tool was chosen

II. Key Performance Metrics Logging

A. Front-end Testing Metrics

  1. Measure page load time, accessibility score, best practices score, FCP, TTI, TBT, CLS, page size, number of requests, bundle size, and overall size
  2. Evaluate package managers and log metrics for them
  3. Recommend tools with data and specific reasons why each tool was chosen

B. Backend Testing Metrics

  1. Measure user capacity, concurrent user capacity, storage requirements, and bandwidth requirements
  2. Recommend tools with data and specific reasons why each tool was chosen

C. DevOps Tools Testing and Evaluation Metrics

  1. Measure build time, bundle size, code quality score, deployment time, developer environment setup time, and test running time
  2. Recommend tools with data and specific reasons why each tool was chosen

III. Additional Requirements

A. Include logs of key performance metrics in the final report

B./ Provide clear instructions for local installation and tool usage

By completing these tasks, we will be better equipped to deliver high-quality content to our users while improving our development process and optimizing our infrastructure.

Submission Instructions

  1. Upload the report to canvas and host your videos on YouTube, so the file's are not too big and embed them in the PowerPoint

Grading Rubric

Criteria Points Student Score
I. Implementing Key Features (total points: 8)
A. Internationalization 2
B. Search Engine Optimization (SEO) 2
C. Web Accessibility 2
D. Responsive Design 1
E. GDPR Compliance and Google Analytics Consent Mode API 1
II. Key Performance Metrics Logging (total points: 8)
A. Front-end Testing Metrics 3
B. Backend Testing Metrics 2
C. DevOps Tools Testing and Evaluation Metrics 3
III. Additional Requirements (total points: 4)
A. Include logs of key performance metrics in the final report 1
B. Include industry statistics for each metric 1
C. Provide clear instructions for local installation and tool usage 2
Total 20

Total Points __ out of Possible 20 Points

Website Development and Automated Testing Resources

Introduction

This document outlines important considerations for website development and the use of automated testing to ensure compliance with legal regulations, accessibility, internationalization, SEO optimization, and responsive design. It also provides information on HTML, CSS, and JavaScript and front-end frameworks like Bootstrap, Foundation, and Tailwind.

Website Development and Automated Testing

Hello students! This document outlines important considerations for website development and the use of automated testing to ensure compliance with legal regulations, accessibility, internationalization, SEO optimization, and responsive design. I hope that it will help you create websites that are user-friendly, accessible, and compliant with the latest web standards.

Legal Compliance

  • Legal compliance is important to ensure that your website is accessible to everyone and meets the necessary regulations.
  • To address legal compliance, you should research the relevant laws and regulations and test compliance with web standards.
  • You can use resources such as the Web Content Accessibility Guidelines (WCAG), the W3C Markup Validation Service, and Google Lighthouse to ensure compliance.
  • You can also use automated testing with Playwright to test accessibility compliance with WCAG standards, markup validity with the W3C Markup Validation Service, and performance and best practices with Lighthouse.
  • When researching legal compliance, you should use Google to search for relevant laws and regulations and consult reputable sources such as government websites and legal blogs.
  • You should also reach out to experts in the field, such as lawyers or web accessibility consultants, for advice and guidance.

Internationalization

  • Internationalization is important to ensure that your website can be used by people from different countries and cultures.
  • To address internationalization, you should implement language localization, date and time formatting, and currency conversion.
  • You can use resources such as the Google Translate API, Moment.js, and Currency.js to ensure proper implementation.
  • You can also use automated testing with Playwright to test language localization, date and time formatting based on the user's locale, and correct currency conversion based on the user's location.
  • When researching internationalization, you should use Google to search for best practices and consult resources such as the Mozilla Developer Network (MDN) and Google's Web Fundamentals.
  • You should also reach out to native speakers or cultural experts for guidance on language and cultural differences.

SEO Optimization

  • SEO optimization is important to ensure that your website can be found by people searching for relevant content.
  • To address SEO optimization, you should conduct keyword research, optimize meta tags, and build backlinks.
  • You can use resources such as Google Search Console, SEMrush, and Yoast SEO to ensure proper implementation.
  • You can also use automated testing with Playwright to test meta tags and headings, page speed and loading time, and accessibility compliance with WCAG standards.
  • When researching SEO optimization, you should use Google to search for best practices and consult resources such as Moz and Search Engine Land.
  • You should also reach out to SEO experts or digital marketing professionals for advice and guidance.

Web Accessibility

  • Web accessibility is important to ensure that your website can be used by people with disabilities.
  • To address web accessibility, you should implement alternative text for images, keyboard navigation, and ARIA attributes.
  • You can use resources such as ARIA Authoring Practices, Tenon.io, and WebAIM to ensure proper implementation.
  • You can also use automated testing with Playwright to test ARIA attributes, keyboard navigation, and image alternative text.
  • When researching web accessibility, you should use Google to search for best practices and consult resources such as the Web Accessibility Initiative (WAI) and Accessible.org.
  • You should also reach out to web accessibility experts or disability advocates for advice and guidance.

Responsive Design

  • Responsive design is important to ensure that your website looks good and works well on different devices and screen sizes.
  • To address responsive design, you should implement responsive design techniques such as media queries, flexible images, and fluid layouts.
  • You can use resources such as Bootstrap, Foundation, and Tailwind CSS to ensure proper implementation.
  • You can also use automated testing with Playwright to test scaling and layout on different devices and screen sizes, responsive navigation and menu options, and proper implementation of media queries and flexible images.
  • When researching responsive design, you should use Google to search for best practices and consult resources such as Smashing Magazine and A List Apart.

HTML, CSS, and JavaScript

  • HTML, CSS, and JavaScript are the building blocks of web development.
  • To learn HTML, CSS, and JavaScript, you can use resources such as the Mozilla Developer Network (MDN), Codecademy, and FreeCodeCamp.
  • You should also practice writing code and building websites on your own.
  • When using HTML, CSS, and JavaScript, you should follow common coding standards to ensure that your code is readable and maintainable.
  • You can use resources such as the Google HTML/CSS Style Guide and Airbnb JavaScript Style Guide to follow these standards.

Automated Testing with Playwright

  • Automated testing with Playwright can help you ensure that your website is compliant with web standards and works well on different devices and screen sizes.

  • Playwright is an end-to-end testing framework that allows you to write tests in JavaScript or TypeScript.

  • You can use Playwright to automate testing of web accessibility, performance, and compliance with web standards such as WCAG and the W3C Markup Validation Service.

  • To use Playwright, you should install it using npm and write tests using JavaScript or TypeScript.

  • You can also use the Playwright Recorder to record interactions with your website and generate tests automatically.

  • When using Playwright, you should follow best practices for testing and ensure that your tests are reliable and maintainable.

  • I hope that this document has provided you with useful information and resources to help you develop websites that are accessible, compliant, and user-friendly. Good luck with your website development projects!

Resources and Suggestions for How to Use PlayWright to write automated tests

Legal Compliance

Automated testing with Playwright can help ensure compliance with legal standards by testing accessibility compliance with WCAG standards, markup validity with the W3C Markup Validation Service, and performance and best practices with Lighthouse.

Internationalization

Automated testing with Playwright can help ensure proper implementation of language localization, date and time formatting based on the user's locale, and correct currency conversion based on the user's location.

SEO Optimization

Automated testing with Playwright can help ensure proper implementation of meta tags and headings, page speed and loading time, and accessibility compliance with WCAG standards.

Web Accessibility

Automated testing with Playwright can help ensure proper implementation of ARIA attributes, keyboard navigation, and image alternative text.

Responsive Design

Automated testing with Playwright can help ensure proper scaling and layout on different devices and screen sizes, responsive navigation and menu options, and proper implementation of media queries and flexible images.

HTML, CSS, and JavaScript

Automated testing with Playwright can help ensure proper implementation of HTML tags and attributes, correct styling with CSS, and correct functionality with JavaScript events and interactions.

To comply with GDPR when implementing Google Analytics, there are a few steps you can take:

  • Obtain user consent: Users must give explicit consent for their data to be collected and processed by Google Analytics. You can achieve this by adding a cookie consent banner to your website that explains what data is being collected and why.

  • Anonymize IP addresses: Google Analytics collects IP addresses by default, which is considered personal data under GDPR. To comply with GDPR, you can anonymize IP addresses before they are sent to Google Analytics by adding the following code to your tracking script:

  • Disable data sharing: By default, Google Analytics shares data with Google to improve its services. You can disable this by adding the following code to your tracking script:

  • Provide an opt-out mechanism: Users should be given the option to opt-out of Google Analytics tracking. You can achieve this by adding an opt-out link or button to your website that allows users to disable tracking.

  • It's also important to update your website's privacy policy to include information about the data collected by Google Analytics and how it is used.