9.3 Final Project Check In

Overview

9.3 Final Project Check In

Work through the stories in order. Use the acceptance criteria to check each feature, and complete the nested tasks using the specified names, values, and scenarios.

Plan a project that meets the design requirements
Acceptance Criteria
Acceptance criteria
  • Three or four possible applications are considered.
  • The proposal supports at least three design patterns and explains their role.
  • The planned application meets the stated SOLID, input/output, UI, and code-quality requirements.
Instructions
1.Final Project Requirements:
A Incorporates 3 of the design patterns you have learned.
B Adheres to SOLID principles.
C Console or WPF Application
D Takes user input.
E Displays output.
F Does not crash at any point during use.
G Clean code and StyleCop compliant (with actual descriptions not just filler).
2.The patterns that can be incorporated into your application:
A Creational:
1 Factory
2 Singleton

Using this pattern arbitrarily will be looked for. If you intend to use this pattern it must have a purpose in your design.

3 Builder
B Structural:
1 Adapter
2 Decorator
3 Proxy
4 Composite
C Behavioral:

Since this check-in takes place before the State and Command patterns, look into them to see if they are something you might want to use. Consider this check-in a rough draft; your design could incorporate these patterns later on.

1 Strategy
2 Observer
3 Template
4 State
5 Command
3.Think of 3-4 possible idea for an application. Some things to think about/consider:
A How long will it take me to make? Time estimate should be around 16 hours.
B How complicated will it be? We aren't looking for polished. We are looking that you understand the concepts of patterns and…

How complicated will it be? We aren't looking for polished. We are looking that you understand the concepts of patterns and where it is appropriate to use them.

C What interests me? Success comes from passion. We don't care if we've never heard of what you're making an application on/about.
D What if I can't think of anything? Talk to some of your peers and do a brainstorming session (remember, brainstorming means…

What if I can't think of anything? Talk to some of your peers and do a brainstorming session (remember, brainstorming means no bad ideas). Talk to some of the leadership (other instructors, tutors, IAs) to get an idea of what they've done or some other past student projects.

E Can it incorporate 3 patterns? This is going to be the toughest part of the rough draft process because generally patterns…

Can it incorporate 3 patterns? This is going to be the toughest part of the rough draft process because generally patterns emerge while writing code and not before. Do an outline to help you think of where patterns might fit in.

Discuss the proposal before the final-project period
Acceptance Criteria
Acceptance criteria
  • The instructor is contacted on Slack at least one week before the final-project timeframe begins.
  • The discussion addresses the required questions below.
  • A snippet showing the conversation date and time is submitted to Canvas.
Instructions
4.Reach out to an instructor on Slack AT LEAST A WEEK BEFORE the final project timeframe begins. Failure to do so will result…

Reach out to an instructor on Slack AT LEAST A WEEK BEFORE the final project timeframe begins. Failure to do so will result in a point reduction. Be prepared to discuss:

A Your ideas for your project.
B The patterns you are looking to incorporate.
C Possible strengths and weaknesses.
5.Snip the date and time of your conversation with your instructor and submit it to Canvas.
A Snip the date and time of your conversation with your instructor and submit it to Canvas.
Completion review
6.Review the feature acceptance criteria
A Confirm the required results

Return to each story and verify its acceptance criteria. Preserve the submission format and destination stated in the activity; a reading, setup guide, lab, video demonstration, and oral final may require different evidence.

Plan a project that meets the design requirements Discuss the proposal before the final-project period