Order For Similar Custom Papers & Assignment Help Services

Fill the order form details - writing instructions guides, and get your paper done.

Posted: September 10th, 2021

Assignment 3 revolves around developing and testing a small application based on the classes you developed for Assignment 2 Paper

Assessment item 3

Asg 3 – Teamwork – Version Control – Testing

Task

Assignment 3 revolves around developing and testing a small application based on the classes you developed for Assignment 2.

You will be provided with some further requirement and design documentation describing a use case realization. These will be available in the Resources section of the subject’s Interact site.

Your task as a team is to develop and test the required classes and methods to support the use case. You are required to divide the development task equitably, complete your assigned task independently, and merge your contributions as required to produce an integrated and functional final product. Your development should take place within a version control system using appropriately sized, commented, and timely commits. You must plan and report on all activities performed through a set of iteration plans and evaluations.

Initially you are required to develop a suite of unit tests to demonstrate that the classes you developed for Assignment 2 meet the functional requirements specified. You then need to integrate your classes with a control class to support several system operations, and finally integrate the system operations to completely support the specified use case. You must then identify and specify user acceptance tests for that use case, and carry out and report on those tests

Please note that the focus in this assignment is on the process and techniques applied, not the complexity of the code. It is recognised that the process applied is ‘way over the top’ for the size of problem addressed.

Also note that it is recognised that standard practice is to specify user acceptance tests before development activities occur, and to conduct unit testing as classes are initially coded. Unfortunately, the semester timetable makes this impractical.

1. Teamwork (10 marks)

On a weekly basis:

Carry out your assigned development tasks using best practice version control within your individual branch.
Communicate as necessary and desirable with your team members.
Upload whatever you have completed to version control as evidence for evaluation of work items.
Attend the weekly iteration planning and assessment meeting. At the meeting present whatever you have done in the preceding week and evaluate it against the objective completion criteria specified in the iteration plan.
Create a plan for the next iteration, setting out individual tasks and objective completion criteria for the coming week. Divide work equitably between team members.
2. Version Control (10 marks)

Follow version control best practice during your implementation and testing of the required code modules. All code should be under version control from the beginning of the assignment.

3. Testing (70 marks)

a) Unit Testing – 25 marks

Implement the modules required to support your chosen use case according to the provided design. Use a unit test framework to comprehensively test your implementations as you develop them. Use stubs, fake, or mock objects as appropriate to isolate the class under test.

Commit your code changes to the version control system with every new addition of functionality (method or class implementation)

b) Integration Testing – 30 marks

Integrate your modules to support your chosen use case. Provide integration tests to check interaction between control, entity, and service classes without requiring GUI inputs.

Once again commit your code changes with every increment of functionality.

c) User Acceptance Tests (UAT) – 15 marks

On the basis of the requirement and design documentation identify some use case scenarios and test cases which can be used to check correct functionality in the implemented use case. Specify alpha stage user acceptance test procedures, test data, and expected results for the use case implemented. A template for an alpha stage UAT will be available in the Resources section of the subject’s Interact site.

Commit your UAT specifications to version control.

Once the use case has been implemented, carry out the alpha stage user acceptance tests you specified. Use the test data and procedures specified and check that it meets stated acceptance criteria. Report on the success or otherwise of the test.

Commit the completed test reports to your version control system.

4. Reflective Practice (10 marks)

Write a reflective ‘phase status assessment’ in which you address the following questions:

Did the team achieve the development task set for the assignment? What issues arose in achieving the final result? How did the team manage those issues?
How was workload distributed among team members? Was it equitable? Did all team members contribute fairly?
What issues regarding version control did the team encounter? How were these issues addressed?
What issues regarding the dynamic testing did the team encounter? How were these issues addressed? Note:you should specifically address unit testing, the use of test substitutes, the various levels of integration testing, and the specification and carrying out of alpha UAT in your response to this question.
Rationale

back to top

This assessment task will assess the following learning outcome/s:

be able to demonstrate autonomy, expert judgement, adaptability, and responsibility in applying specialised and technical knowledge and skills in the use of version control systems as part of professional programming practice.
be able to synthesise complex information regarding the purpose and limitations of software testing in order to generate, design and implement an appropriate suite of software tests to support the complete system development life cycle.
be able to critically analyse software programs and apply theories of debugging together with specialised and technical skills to generate solutions to complex debugging problems.
be able to work effectively in a team environment.
The intent of the assignment is to articulate taught concepts and skills in the context of developing a suite of unit, integration, and user acceptance tests for a small application.

Marking criteria and standards

back to top

Teamwork (10 marks)

Criteria

High Distinction

Distinction

Credit

Pass

How well did the team demonstrate the ability to work effectively?

Displayed comprehensive and effective planning and reporting of iterations, and clear and useful team meeting minutes that record issues discussed, key considerations and decisions taken.

Dealt effectively but sensitively and politely with any non-performance issues that arose.

Displayed effective planning and reporting of iterations, and useful team meeting minutes that record issues discussed, key considerations and decision taken.

Dealt effectively with any non-performance issues that arose.

Displayed sound planning and reporting, and team meeting minutes that record key considerations and decisions taken.

Dealt sensitively and politely with any non-performance issues that arose.

Displayed generalised planning and reporting of iterations, and abbreviated team meeting minutes.

How well did the student demonstrate the ability to work effectively in a team environment?

Displayed comprehensive insight and extensive application of teamwork principles through effective, engaged and polite participation in all team meetings, timely, useful, and polite communication and coordination with team members, application of SMART principles in specification of all work items, and timely, high quality completion of all work items as evidenced in iteration plans and evaluations.

Contributed equitably to team outcomes, neither monopolising work, nor failing to contribute adequately as evidenced in iteration plans and evaluations. Provided effective and appropriate support to other team members when requested or desirable from a team outcome perspective.

Displayed insight and detailed application of teamwork principles through effective, engaged and polite participation in all team meetings, timely, useful, and polite communication and coordination with team members, application of SMART principles in specification of most work items, and timely and high-quality completion of most work items as evidenced in iteration plans and evaluations.

Contributed equitably to team outcomes, neither monopolising work, nor failing to contribute adequately as evidenced in iteration plans and evaluations. Provided effective and appropriate support to other team members when requested.

Displayed sound understanding and thorough application of teamwork principles through engaged and polite participation in most team meetings, useful and polite though sometimes tardy communication and coordination with team members, concrete specification of most work items, and good quality completion of most work items as evidenced in iteration plans and evaluations.

Contributed adequately to team outcomes as evidenced in iteration plans and evaluations. Provided support to other team members when requested.

Displayed basic understanding of teamwork principles through polite participation in most team meetings, polite though tardy communication with team members, generalised specification of work items and adequate quality though often tardy completion of most work items as evidenced in iteration plans and evaluations.

Contributed adequately though somewhat inequitably to team outcomes as evidenced in iteration plans and evaluations.

Version Control (10 marks)

Criteria

Fail

Pass

Credit

Distinction

How well did the student apply knowledge and skills to effectively utilise version control?

Displayed comprehensive insight, and extensive application of the concepts and practices involved in best practice GIT based version control through correct use of feature branches, frequent, well commented single purpose commits, and timely, well-coordinated and successful merging of feature branch after code review.

Displayed insight and detailed application of the concepts and practices involved in best practice GIT based version control through correct use of feature branches, well commented single purpose commits, and well-coordinated and successful merging of feature branch after code review.

Displayed sound understanding and application of the concepts involved in GIT based version control through use of feature branches with relatively frequent somewhat meaningfully commented commits, and well-coordinated, troublesome though eventually successful merging of feature branch after code review.

Displayed basic understanding and application of the concepts involved in GIT based version control through use of feature branches with several commits although commenting may be obscure, and somewhat coordinated but troublesome merging of feature branch after code review. Merge required intervention by other team members to be successful.

Dynamic Testing (70 marks)

Criteria

High Distinction

Distinction

Credit

Pass

How well did the student demonstrate an understanding of the purpose and limitations of software testing in the context of dynamic developer and user acceptance testing?

How well did the student demonstrate skills in terms of designing and implementing an appropriate suite of software tests in the context of dynamic development and user acceptance testing?

Displayed comprehensive insight, and extensive application of the concepts and practices involved in dynamic developer and user acceptance testing through a thorough, well targeted, well prioritised test plan.

Demonstrates effective, well structured, well named and well organised unit testing; effective use of test substitutes;

Demonstrates targeted, well organised, and well structured integration testing covering all levels of software integration,

Demonstrates effective, well organised, and well presented alpha stage user acceptance test scripts with clear acceptance criteria which address all flows of the use case implemented.

Displayed insight, and detailed application of the concepts and practices involved in dynamic developer and user acceptance testing through a thorough, prioritised test plan.

Demonstrates effective well structured, well named and well organised unit testing; effective use of test substitutes.

Demonstrates well structured integration testing covering all levels of software integration.

Demonstrates effective and well organised alpha stage user acceptance test scripts with clear acceptance criteria which address most flows of the use case implemented.

Demonstrates sound understanding and application of the concepts and practices involved in dynamic developer and user acceptance testing through a thorough test plan.

Demonstrates well structured, named and organised unit testing; use of test substitutes.

Demonstrates integration testing covering key levels of software integration.

Demonstrates alpha stage user acceptance test scripts with clear acceptance criteria which address the most important flows of the use case implemented.

Demonstrates basic understanding and application of the concepts and practices involved in dynamic developer and user acceptance testing through a test plan which addresses most aspects of testing.

Demonstrates somewhat structured and organised unit testing.

Demonstrates integration testing covering some levels of software integration.

Demonstrates alpha stage user acceptance test scripts which address some of the most important flows of the use case implemented.

Reflective Practice (10 marks)

Criteria

High Distinction

Distinction

Credit

Pass

How well does the reflective report demonstrate an ability to reflect on and critically evaluate issues encountered involving teamwork, version control, and static code review?

Displayed comprehensive, objective, and insightful analysis of processes, consistent with an objective external view.

Given tasks and questions are thoroughly analysed and elaborated. Comprehensive, logical and objective conclusions are drawn.

Writing is free of errors in grammar, punctuation, and spelling.

Displayed objective, and insightful analysis of processes, consistent with an objective external view.

Given tasks and questions are thoroughly analysed. Logical and objective conclusions are drawn.

Writing is generally error-free, but some errors in language or grammar may occur.

Displayed objective, analysis of processes, generally consistent with an objective external view.

Given tasks and questions are analysed, although there may be some omissions. Some conclusions are drawn

Errors in style or grammar occur but are not particularly distracting.

Displayed analysis of processes, generally consistent with an objective external view.

Given tasks and questions are summarised.

Enough errors in style or grammar occur that they become distracting.

Presentation

back to top

There are four aspects of presentation for this assignment:

Evidence of teamwork.
Evidence of best practice version control.
Evidence of best dynamic testing practice.
Evidence of reflective practice
You should submit an individual summary pdfdocument through Turnitincontaining the following:

Teamwork
A summary of your contribution to the code base. I.E. identify which classes you developed and/or what testing tasks you performed.
A link to your team wiki from which all documents and version control repositories should be accessible.
Copies of and/or links to the iteration reports identifying and reporting on the work items associated with your contribution. Note:make sure the iteration reports contain links to the commits associated with work item completion.
Copies of and/or links to the team meeting minutes covering the period of the assignment.
Version control
An accessible link to your team’s version control repository.
A log of your commits to version control.
Either logs of, or a set of links to any merge/pull requests you submitted, allowing the merge/pull comments to be inspected.
Dynamic Testing Practice
Copies of the files, or a link to the directory/directories in your version control repository containing your unit tests.
Copies of the files, or a link to the directory/directories in your version control repository containing your integration tests.
Copies of the files, or a link to the directory/directories in your version control repository containing your alpha UAT test scripts and results.
Reflective Practice
A document in which you individually reflect on the questions put in that section of the assignment.

Order | Check Discount

Paper Writing Help For You!

Special Offer! Get 20-25% Off On your Order!

Why choose us

You Want Quality and That’s What We Deliver

Professional Writers

We assemble our team by selectively choosing highly skilled writers, each boasting specialized knowledge in specific subject areas and a robust background in academic writing

Discounted Prices

Our service is committed to delivering the finest writers at the most competitive rates, ensuring that affordability is balanced with uncompromising quality. Our pricing strategy is designed to be both fair and reasonable, standing out favorably against other writing services in the market.

AI & Plagiarism-Free

Rest assured, you'll never receive a product tainted by plagiarism or AI-generated content. Each paper is research-written by human writers, followed by a rigorous scanning process of the final draft before it's delivered to you, ensuring the content is entirely original and maintaining our unwavering commitment to providing plagiarism-free work.

How it works

When you decide to place an order with Nurscola, here is what happens:

Complete the Order Form

You will complete our order form, filling in all of the fields and giving us as much detail as possible.

Assignment of Writer

We analyze your order and match it with a writer who has the unique qualifications to complete it, and he begins from scratch.

Order in Production and Delivered

You and your writer communicate directly during the process, and, once you receive the final draft, you either approve it or ask for revisions.

Giving us Feedback (and other options)

We want to know how your experience went. You can read other clients’ testimonials too. And among many options, you can choose a favorite writer.