-
Create a code branch
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice determines which version of the software is needed to be used as a basis for the branch
apprentice checks out code from the trunk as branch
apprentice creates a branch
apprentice commits the finished work
apprentice does not merge code unless it is ready for deployment
apprentice deletes a branch
-
Resolve merge conflicts
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice collaborates on a source file with other developers
apprentice identifies the cause of the merge conflict
apprentices locates the conflicts
apprentice tests any code differences that were merged
apprentice selects the right changes from the current branch and from the source branch apprentice forms working code
apprentice checks in and tags the new version after conflicts are resolved
apprentice consults team members to resolve conflicts
-
Define basic object-oriented programming (OOP) principles
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice defines the Single Responsibility Principle
apprentice defines the Open-Closed Principle
apprentice defines the Dependency Inversion Principle
apprentice defines the Don't Repeat Yourself Principle
apprentice defines the Encapsulate What Varies Principle
apprentice defines the Program to Interfaces Principle
apprentice defines the Favor Composition Over Inheritance Principle
apprentice defines the Principle of Least Knowledge
-
Implement object oriented programming (OOP) principles
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice implements the Single Responsibility Principle
apprentice implements the Open-Closed Principle
apprentice implements the Dependency Inversion Principle
apprentice implements the Don't Repeat Yourself Principle
apprentice implements the Encapsulate What Varies Principle
apprentice implements the Program to Interfaces Principle
apprentice implements the Favor Composition Over Inheritance Principle
apprentice implements the Principle of Least Knowledge
-
Utilize file storage for applications
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice selects the appropriate data storage format
apprentice optimizes the data storage design for storage efficiency
apprentice provides for indexing of the data to optimize queries
-
Implement event-driven programming
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice utilizes user interface controls
apprentice validates information entered in user interface controls
apprentice defines an event handler
apprentice invokes the event handler
-
Implement unit tests
Assessment Strategies
Oral, Written and/or Skill Assessment
Criteria
apprentice creates a unit test project
apprentice creates the test class
apprentice creates the test method
apprentice builds and runs the test
apprentice fixes the code and reruns the test
apprentice uses the test result to improve the code
apprentice considers application security