Implementation of a small business information system

Assignment Help Software Engineering
Reference no: EM132530945

ITECH7201 Software Engineering: Analysis and Design - Federation University

Overview - For this assignment, you will logically extend the functionality of the Maze Game introduced during the lectures, via the modification of the code base as well as documentation and implementation of various user stories.

Learning outcome 1: Understand the significance of detailed project planning and control, good communication and documentation and the use of appropriate tools in order to provide a quality product.

Learning outcome 2: Understand the distinction between software engineering and programming, and thus the distinction between a software configuration and a program.

Learning outcome 3: Understand the methods and techniques involved in designing, implementing and maintaining an information system, in particular using an object-oriented approach.

Learning outcome 4: Understand how unit tests are used during software development to assist in agile programming techniques such as refactoring and demonstrate skills in designing Unit tests.

Learning outcome 5: Work together in small teams to complete a fully documented, detailed design and implementation of a small business information system.

Learning outcome 6: Demonstrate skills in designing and implementing an information system.

Assessment Details -

You are required to logically extend the functionality of the Maze Game introduced during lectures, via the modification of the code base as well as documentation and implementation of various user stories. You will use the Boost methodology discussed during lectures, which requires the use of pair programming. All documentation, other than the customized game map, must be completed individually.

The codebase provided for this assignment has already implemented the "warm-up" and some "sets". You will be implementing numerous other "sets" for this assignment using the Boost methodology. The "warm down" stage is not required.

You are free to take ideas discussed during lectures and implement these in your own version of the codebase provided in Moodle for this assignment.

This assignment will be marked according to the functionality of your code, in addition to the elegance and extensibility of your design and the quality of your documentation.

Note: It is recommended that you spend some time familiarizing yourself with the provided code base prior to beginning any work on this assignment. You should start by spending some time exploring the structure of the code to gain an understanding of the roles each class plays within the system and then complete Lab 7-8.

Assignment Requirements -

In Pairs:

1. Design and implement a custom environment for your maze game. This requires producing your own unique hand-drawn map of the maze game environment and changing the HardCodedData file to reflect the locations and items on your map. At least M (M>=4) locations, including exactly N (N>=3) shops with a condition M>N, must be included, as well as enough items to allow for proper testing of the game functionality. For example, there must be sufficient items to verify that a player cannot collect an item if the weight restriction has been met. Note: you should not retain the original locations or items from the provided codebase in your version of the game.

2. Implement each of the following deliverables/milestones:

a. functionality as detailed in Lab 7 and Lab 8

b. commands to manage the various item management commands:

i. listItems, getItem, and dropItem, to allow the listing of all held items, collect a new item, and drop a held item.

ii. equipItem and unequipItem, to wear/wield a held item, and to stop wearing or wielding an equipped item.

iii. purchaseItem and sellItem, to buy an item from a vendor and to sell an item to a vendor.

iv. getmazestatus to show the status of the maze (i.e., the value of M and N)

Ensure that weight restrictions are not exceeded and that the context for each command is appropriate. For example, purchasing and selling of items should only occur in a shop.

c. Basic combat functions, allowing a player to attack or to be attacked by a non-player character (NPC). A player may flee combat or continue to attack until such time as one combatant loses all life points. The end result must not be hard-coded, and neither the hostile NPCs nor player may have their attributes configured in such a way that the final outcome is pre-determined. Note that combat functions should only be available when the player is in the presence of a hostile NPC, and combat may take whatever form is appropriate for your game context rather than being limited to just hits with a weapon.

d. Collectable items that, when used, restore life points to a player. The number of life points regained should be determined by the roll of 2 six-sided dice up to the player's maximum health. You can elect to allow these to be used during combat if you wish.

3. Write 3 (Three) Unit test cases for each of the methods you are developing in this assignment. You can write the test cases in any Java framework, but Junit is preferred.

4. Prepare a short Power-point presentation to demonstrate your software/program as if you are going to sell this software/program to a prospective customer. The Power-point presentation must contain the following items:

i. A demonstration of the game - how the game play works and how this was implemented.

ii. Explanation of the role of design patterns in the game, clearly identifying the functionality where design patterns have had an impact and how this has occurred.

iii. An analysis of the use of a development methodology in creating the game describing how did this assist, or make the development of the game more complicated.

This presentation will be assessed based on the clarity and accuracy of the explanations and how clearly it demonstrates an understanding of how the game was coded, the design patterns used, and the impact of using a development methodology.

Individually:

1. Prepare an individual report, to be submitted as a Word document or a PDF, which includes:

a. The student number and name of each person on your team (including yourself)

b. User stories for each of the deliverables/milestones

c. Class diagrams for Lab 7 and Lab 8

d. Sequence diagrams for two (2) of the item management commands, taken from separate groupings (i.e. you will not get credit for both getItem and dropItem as they are both in group i)

e. A statement of your own personal contribution to the assignment

f. A statement of your partner's contribution to the assignment.

Do not work with your partner or any other person to complete your individual report. These must be unique and your own work.

Attachment:- Assignment File - Maze Game Analysis and Design.rar

Reference no: EM132530945

Questions Cloud

What is the most you would be willing to pay for the condo : If the cash flows grow at 4% per year, the interest rate is 11%, and the building lasts forever, what is the most you would be willing to pay for the condo?
How much will be raised in the last hour : The first hour costs $1.00, and then the cost per hour goes up by 1% every hour. Suppose the fundraiser lasts for 111 hours.
Project fcf during explicit modeling period : The project is expected to grow fast for five years then at terminal growth rate at 2%. Project FCF during explicit modeling period, which ends 5 years from 201
What is the initial investment outlay : Tannen Industries is considering an expansion. The necessary equipment would be purchased for $17 million, and the expansion would require an additional
Implementation of a small business information system : Demonstrate skills in designing and implementing an information system - Maze Game introduced during the lectures, via the modification of the code base
What is the price of the bond now : Several years ago, Castles in the Sand Inc. issued bonds at face value of $1,000 at a yield to maturity of 8.8%. Now, with 7 years left until the maturity
What is the 1-year interest rate : The following table shows the prices of a sample of Treasury strips. Each strip makes a single payment at maturity.
Price of the 4-year bond if its yield increases : The short-term bond has a maturity of 4 years, the intermediate-term bond has a maturity of 8 years, and the long-term bond has a maturity of 30 years.
Disciplinary mechanisms used to dispel concerns : Conflict of interest is a common problem that corporations have to deal with. Discuss in detail the disciplinary mechanisms used to dispel the concerns of share

Reviews

Write a Review

Software Engineering Questions & Answers

  Develop a context diagram for the mars climate orbiter

Develop a Context Diagram for the Mars Climate Orbiter. Develop Operational Requirements based off of the new mission needs.

  Description of the new image processing system

If the image and record do not match (for instance, a three-leg ticket sold but only two legs used), the ticket number is included in the audit data. If the image and record do match, the ticket record is written to the passenger revenue data.

  Classification of symbols

In few programming languages a comment can be enclosed either in braces {} or in the symbols (* *). Discuss how do you think a scanner would group the four symbols {, }, (*, *) for purposes of classification.

  How many access points should you encompass and explain

a manufacturing company consists of three buildings within two blocks of each other. each building houses approximately

  Develop a detailed design to support the ccrd

A logical view (class diagram) showing all classes required to support the CCRD use case, including all required attributes methods, and inheritance, compositional, or using relationships.

  Short notes on it department

Examine five (5) issues that the IT department is likely to face when it comes to supporting virtual teams.

  Determine the screen output of code segment

Determine the screen output of the following code segment? Explain your answer.

  Develop a high-level plan for implementing the changes

Develop a high-level plan for implementing the changes and mitigating vulnerabilities and convergence issues. The high-level plan should include all the system development life cycle (SDLC) gates/decision points and all relevant tasks

  Review the agile and systems development life cycle

Review the agile and systems development life cycle (SDLC) software development methodologies.

  Improve local software process

Why is it that software organizations often struggle when they embark on an effort to improve local software process?

  What would you look for in a company software system

Identify and explain reasons why you think that companies using a management systems approach might be in a position to perform better than competing companies. What would you look for in a company software system to support your ESH endeavors and ..

  Research on software testing and standards

ITECH7409 - Software Testing - Federation University - Analyse and critically evaluate appropriate tools and techniques to support the testing 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