--- title: Team_3 --- # Team_3 Group Activity ## week_2 ### edge cases > - len(firstName) < 3 => Return False > - len(firstName) > 30 => Return False > - len(lastName) < 3 => Return False > - len(lastName) > 50 => Return False > - isalapha(firstName[i]) => Return true > - isalapha(lastName[i]) => Return true > - len(middleName) < 0 => Return False > - len(middleName) > 50 => Return False > - len(middleName) > len(firstName) => Return False > - len(middleName) > len(lastName) => Return False ## week_3 Each group in the tutorial should share a summary of their teams plans and progress in relation to: - When (or if) they are running standups and whether they are synchronous or asynchronous - - How often they meet, how they meet, and what the goals/outcomes of any meetings so far have been - one time per three days - task - - Have they or will they try pair programming - - Any challenges they've faced already after being in a group for a week - no, good cooperation Other group members (in other teams) are encouraged to ask questions and learn from what other groups are doing/saying. ## week_4 **Requirement Activity** **Q**. What are attributes of good requirements? **Q**. How could we clean this up into well described requirements? >"I want a burger with lots of pickles and mayo but I need to make sure that the mayo doesn't make the burger bun really wet. Oh, and it needs to be warm, like, made less than 5 minutes ago warm but not so hot that I burn myself. I'm also not a big fan of plastic containers so if it could be in a paper bag that would be good. Actually, make that a brown paper bag, I like the colour of that" - component: with lots of pickles and mayo - wet/dry: burger bun dry and not so hot - time made(tempture): mayo made less than 5 minutes ago - bag - Material : paper - colour : brown **Code Reviewing activity** ```python= def check_password(password): if password == "password" or password == "iloveyou" or password == "123456": return "Horrible password" elif (len(password) >= 12 and any(x.isupper() for x in password) and any(x.isdigit() for x in password) and any(x.islower() for x in password)): return "Strong password" elif len(password) >= 8 and any(x.isdigit() for x in password): return "Moderate password" else: return "Poor password" if __name__ == '__main__': print(check_password("ihearttrimesters")) # What does this do? ``` ```python def check_password(password): ''' Takes in a password, and returns a string based on the strength of that password. The returned value should be: * "Strong password", if at least 12 characters, contains at least one number, at least one uppercase letter, at least one lowercase letter. * "Moderate password", if at least 8 characters, contains at least one number. * "Poor password", for anything else * "Horrible password", if the user enters "password", "iloveyou", or "123456" ''' horrible_pw = ["password", "iloveyou", "123456"] digit = False upper = False if password in horrible_pw: return "Horrible Password" elif len(password) >= 8: for char in password: if char.isdigit(): digit = True elif char.isupper(): upper = True if digit and upper and len(password) >= 12: return "Strong Password" elif digit: return "Moderate Password" return "Poor Password" if __name__ == '__main__': print(check_password("ihearttrimesters")) # What does this do? ``` Compare these two pieces of code from a pythonic, style, and readability point of view and choose which one you prefer. When you choose one, you must justify your reasonining in teh shared documnet your tutor gives you.