Demonstrate using oop and programming concepts

Assignment Help Software Engineering
Reference no: EM133286136

Object-Oriented Software Development

Assignment: Development Task

Learning Outcome 1: Explain and use key programming constructs to create correct and efficient programs

Learning Outcome 2: Design, and implement Object-Oriented programs

Learning Outcome 3: Develop applications with graphical user-interfaces

Learning Outcome 4: Develop technical software solutions to complex problems

Problem 1 - The Smart Tic Tac Toe game

This game aims to win the game on a 3 x 3 grid with the victory of three identical symbols (X or O) on horizontal, diagonal, or vertical lines. The players will play alternately. This game has two options: player one against player two or human against computer. When a human plays against the computer, there are two options: (a) Random logic, where the computer randomly selects one of the empty boxes on the grid and places a symbol on that box (X if the computer starts the game first, O if human starts the game first). (b) Smart logic that follows the steps below:

1) If the computer can win the game in one move, it makes a move, and the game ends. So, if there is one line with two symbols given by the computer and an empty box, the computer must place a symbol in the empty box.
2) If the computer can block with one move, it makes a move, and the opponent cannot win the game in the next move. So, if there is a line with two symbols given by a human and an empty box, the computer must place a symbol in the box.
3) If there is no possibility of winning or the computer cannot block the opponent, then the movement is carried out in this order: the middlebox, one of the four corner boxes, or one of the four side squares (the order is important)

The game should display a scoreboard with players' names and scores (e.g., [name of human user] vs computer). The scoreboard should be accessible while playing the game so players can keep track of their score. Every time a user wins (get 3 of their symbols in a row (up, down, diagonally)), 1 point should be added to their total score.

Problem 2 - The Preston Athletic Club

The Preston Athletic Club are organising their first international marathon in the spring of next year. A field comprising world-ranking professionals and amateur runners (some in fancy dress) will compete on the 26.2-mile route around Preston. Each amateur runner fundraises for a charity and has a sponsorship form. A sponsorship form has the number of sponsors, a list of the sponsors, and a list of amounts sponsored. You must design a software system to manage all aspects of the race efficiently, including registration and volunteer management. The functional requirements for the system are the following:

1) The system would allow registering participants (runners and volunteers) for the marathon;
2) The system would maintain each runner's number (e.g., "Runner 10", where ten is their number), result status ("Not finished" or "Finished"), and time finished (recorded in hours, minutes, and seconds);
3) For each professional runner, the system must show the world ranking (e.g., Runner 200 (Ranking 6));
4) For each amateur runner, the system must show a list of sponsors and the associated amounts;

5) The system would allow adding a sponsor and associated amounts for each amateur runner;
6) The system would allow printing a collection list for an amateur runner from their sponsorship form;
7) The system must display an amateur runner with a costume (e.g., "Runner 406 (Snow White)")
8) The system must allow creating and listing of different volunteer types (e.g., drink station, marshalling) and their schedules;
9) The system must allow creating and printing personalised certificates for each participant (runners and volunteers).

Problem 3 - Message management system

Giannis owns a small shop close to the University of Central Lancashire, selling a range of stationery, office supplies, and printing and laminating services.

Giannis plans to acquire an LCD message display board mounted above the shopfront to show scrolling text messages. Giannis intends to use this to advertise his products and offers and provide a message display service for fee-paying clients (e.g., local events, staff required, etc.)

Each client is given a unique ID string (e.g., "Andreas4") and has a name, an address, a phone number and an amount of credit in "credit units". A book of clients is maintained to which clients can be added, and we can look up a client by their ID.

Each message is for a specific client and comprises the text to be displayed, the number of days it should be displayed and the cost of that message in units. No duplicate messages (i.e., the same text for the same client) are permitted.

A set of current messages is to be maintained: new messages can be added, the message set can be displayed on the display board, and at the end of each day, a purge is performed - each message has its days remaining decremented and its client's credit reduced by the cost of the message, and any messages which have expired or whose client has no more credit are deleted from the message set.

The software is to be written before the display board is installed. Therefore, the connection to the board should be via a well-defined interface and a dummy display board implemented in software for testing purposes.

Task details:

You will need to analyse, model and program a solution in .NET C# for your selected problem. Specifically, you must:

Task 1: Create a UML Class diagram based on the requirements of your selected problem. Your diagram should show all the potential classes, their associated methods, properties and relationships between classes. You should create your UML diagram electronically and fully annotate it.

Task 2: Implement your class diagram in .NET C#. You should demonstrate using OOP and programming concepts as your selected problem requires.

Task 3: Create a GUI .NET C# application which implements the functionalities defined in your selected problem. You should design your GUI using Windows Forms or WPF.NET.

Task 4: You can meet one or more requirements of your selected problem using external files or a database (e.g., MySQL for Visual Studio). You should include the file(s) or DB in your project to ensure I can run the application.

Task 5: Test your software using a standard technique (e.g., Blackbox, Unit). You must show evidence that you tested your app during the demonstration to your tutor.

Task 6: Demonstrate your work to your tutor. During the demonstration, you should explain how your work meets the requirements of your selected problem. Demos are strictly limited to 10 minutes and will include questions from your tutor. Students must only present materials which communicate how their work satisfies the marking scheme. A PowerPoint may support this if necessary

 

Reference no: EM133286136

Questions Cloud

Discuss why has information visualization become centerpiece : Information Visualization Question - Discuss why has information visualization become a centerpiece in business intelligence and analytics
Explain how the company uses the total cost approach : MGT 400 Logistics Management Assignment - University of Arizona Global Campus - Explain how the company uses the total cost approach
Compare different software development approaches : Explain and use key programming constructs to create correct and efficient programs and Critique and compare different software development approaches
Confucian virtues of ren : What role do the Confucian virtues of ren, li, xiao, and yi have with respect to social harmony?
Demonstrate using oop and programming concepts : Create a GUI .NET C# application which implements the functionalities defined in your selected problem. You should design your GUI using Windows Forms
Write a proposal to increase your staff : Adler Theory of Individual Psychology Discussion - Write a proposal to increase your staff in order to accommodate the increased work volume
Which gospel it most reflects in its storyline : Movie 2014 "The Gospel of John" which gospel it most reflects in its storyline?
Education and training services : You are required to research The First Aid and Infection Control WHS policy for the Education and Training services
Describes alcohol addiction among women in canada : Describes Alcohol Addiction among Women in Canada. Describes the importance of using reference lists from previous research in your topic

Reviews

Write a Review

Software Engineering Questions & Answers

  What is the maximum number of paths through the graph

What is the maximum number of paths through the graph and what is the approximate minimum number of paths through the graph?

  Representative set of quadratic equations of the form

ITECH7410 Software Engineering Methodologies - You will need to create your own set of equations; state why you chose them and why they are needed to show that the application is working correctly.

  Develop a list of uses cases and a use case diagram

When a purchase is made, Pizza'sR'Us.com sends an e-mail notice to the customer with the order choice as well as payment information. It also notifies the store of the oreder. The system maintains an open order until it receives notice that the pi..

  Q1 use the following method printprimes for questions a-f

q1 use the following method printprimes for questions a-f below.1. 2. finds and prints n prime integers4. 5. private

  Case study beyond the black box a case study in c to java

case study beyond the black box a case study in c to java conversion and product extensibility 1. explain why you

  Given the following description answer the questions belowa

given the following description answer the questions below.a hard real-time rt system is one where the failure to

  What is the need to identify test deliverables

What is a test plan? List out the processes that are covered in a test plan. What is the need to identify test deliverables?

  What are the danger of not cross checking between the models

What are the dangers of not cross checking between the models? What is the principal distinction (purpose) between a use case activity diagram and a system sequence diagram?

  Assume that you are leading a team of designers for a new

imagine you are leading a team of designers for a new software product. during the kickoff meeting the team starts to

  The design development and deployment of a product

The design, development, and deployment of a product are the first steps toward a finished product ready for distribution in the marketplace. The next step is the evaluation of the user experience in order to gather data on the usability of the pr..

  Making a flowchart of the program

Make a flowchart of the program, using the pseudo code from Unit four Topic two as a guide. For your convinence you can access this pseudo-code through selecting following;

  Draw the sequence diagram step by step to withdrawal money

Draw the sequence diagram step by step to withdrawal money considering four objects Patron, ATM, Control and database for ATM process.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd