makbar10A2.docx PROG2007 Assignment 2 Name Muhammad Gulraiz Akbar ID XXXXXXXXXX Date 20/09/2021 Written Exercise 1 Describe your game, including the back story and the setting of the game This class...

1 answer below »
It contains two tasks and I need the same expert who worked on 90009 order ID Assignment because it was assignment 2 now this is assignment 3 and it follows up from the assignment 2 which is made by Expert Ali So Please same Guy ! and I have attached all the files which needed in the assignment and Ask the expert to connect me on zoom so that we can communicate so that he can work better on the assignment Thanks !


makbar10A2.docx PROG2007 Assignment 2 Name Muhammad Gulraiz Akbar ID 23316337 Date 20/09/2021 Written Exercise 1 Describe your game, including the back story and the setting of the game This class is the main class of the Zuul application. Zuul is a very simple, text based adventure game. Users can walk around some scenery. That's all. It should really be extended to make it more interesting! To play this game, create an instance of this class and call the "play" method. This main class creates and initialises all the others: it creates all rooms, creates the parser and starts the game. It also evaluates and executes the commands that the parser returns. List the items in the game and how to use it Command, Command Words, Game, Item, Parser, Room etc. Use it through Bluej. Explain how the player wins Run the game. Written Exercise 2 Label the rooms Yes we have labelled in Room.java file. Label the exits (connections between rooms) Yes we have labelled it in Room.java file Specify the locations of the items Yes we have specified it in the setExists function. Written Exercise 3 Program Plan: • Open the zuul-better project. • Add the Transporter Room class which is an extended class of Room class. o Declare the Room Randomizer class. o Define the constructor containing the description of the room as String and Room Randomizer object as parameters. o Initialize the Room Randomizer variable. o Define the get Exit () method which accepts the String object which holds the direction. o This method should return the Room object returned by the find Random Room () method of the Room Randomizer object. • Add the Room Randomizer class. o Declare two variables one to hold the Array List of Room objects and a Random class object. o Define the constructor and initialize the class variables. o Define a method called add Room () that has Room object as parameter and adds the parameter to the Array List. o Define a method called find Random Room () that returns the random room object from the Array List. • Modify the Game class as follows: o Add an array of String object which holds the directions. o In the create Rooms () method do the following modifications: • Add the Transporter Room variable and Room Randomizer variable. • Now initialize the Room Randomizer variable and add the existing rooms to the Room Randomizer object by using add Room () method. • Now initialize the Transporter Room variable by passing the description of the room and Room Randomizer object. • Set the exit for the Transporter Room object. • Now add the Transporter Room object as exit room for required existing rooms. o In the go Room () method in the else part, just add a condition check whether the next Room is a transporter room or not. • If it is transporter room, then • Display about in which the player is. • Set the next Room as Room object returned by the get Exit () . • Display a description about player being transported. • Rest of the code remain same. Written Exercise 4 The printWelcome method and the goRoom methods contain code duplication and both print a description of the current room and a list of the exits. This is not a good design because printWelcome method can be used for the code duplication and the code duplication is not a good idea for the zuul bad project. Also the goRoom method can be give the description for the current room and it can give the exit list. So the duplication also arrived here so it’s not a good design for both methods. Written Exercise 5 The get Room Exits And Description method can be used to print the description of the current room and a list of the exits. So this is not the good design that can be provide the room existents. So the current room can be providing the Game class that cannot worked as the designing class. Written Exercise 6 Program Plan: • Open the zuul-better project. • Add the Transporter Room class which is an extended class of Room class. o Declare the Room Randomizer class. o Define the constructor containing the description of the room as String and Room Randomizer object as parameters. o Initialize the Room Randomizer variable. o Define the get Exit () method which accepts the String object which holds the direction. o This method should return the Room object returned by the find Random Room () method of the Room Randomizer object. • Add the Room Randomizer class. o Declare two variables one to hold the Array List of Room objects and a Random class object. o Define the constructor and initialize the class variables. o Define a method called add Room () that has Room object as parameter and adds the parameter to the Array List. o Define a method called find Random Room () that returns the random room object from the Array List. • Modify the Game class as follows: o Add an array of String object which holds the directions. o In the create Rooms () method do the following modifications: • Add the Transporter Room variable and Room Randomizer variable. • Now initialize the Room Randomizer variable and add the existing rooms to the Room Randomizer object by using add Room() method. • Now initialize the Transporter Room variable by passing the description of the room and Room Randomizer object. • Set the exit for the Transporter Room object. • Now add the Transporter Room object as exit room for required existing rooms. o In the go Room () method in the else part, just add a condition check whether the next Room is a transporter room or not. • If it is transporter room, then • Display about in which the player is. • Set the next Room as Room object returned by the get Exit() . • Display a description about player being transported. • Rest of the code remain same. Written Exercise 7 Has the design improved? Yes It is Improved. You must explain why or why not? The design is improved for the name of instance that can be provided according to the user choice. So the game can be used as the name of instance. Zuul Bad Game/Command.class Zuul Bad Game/Command.ctxt #BlueJ class context comment0.target=Command comment1.params=firstWord\ secondWord comment1.target=Command(java.lang.String,\ java.lang.String) comment2.params= comment2.target=java.lang.String\ getCommandWord() comment3.params= comment3.target=java.lang.String\ getSecondWord() comment4.params= comment4.target=boolean\ isUnknown() comment5.params= comment5.target=boolean\ hasSecondWord() numComments=6 Zuul Bad Game/Command.java Zuul Bad Game/Command.java public class Command {     private String firstWord;     private String secondWord;     public Command(String firstWord, String secondWord)     {         this.firstWord = firstWord;         this.secondWord = secondWord;     }     public String getCommandWord()     {         return firstWord;     }     public String getSecondWord()     {         return secondWord;     }     public boolean isUnknown()     {         return (firstWord == null);     }     public boolean hasSecondWord()     {         return (secondWord != null);     } } Zuul Bad Game/CommandWords.class Zuul Bad Game/CommandWords.ctxt #BlueJ class context comment0.target=CommandWords comment1.params= comment1.target=CommandWords() comment2.params=aString comment2.target=boolean\ isCommand(java.lang.String) comment3.params= comment3.target=java.lang.String\ getAllCommand() numComments=4 Zuul Bad Game/CommandWords.java Zuul Bad Game/CommandWords.java public class CommandWords {     private static final String[] validCommands =      {         "go", "quit", "help", "look" , "splash", "back","take","inventory","drop"     };     public CommandWords(){}     public boolean isCommand(String aString)     {         for(int i = 0; i < validcommands.length; i++)          {=""             if(validcommands[i].equals(astring))=""                 return true;=""         }=""         return false;=""     }=""     public string getallcommand()=""     {=""         string commandstring =" "";"         for(string command : validcommands)=""         {=""             commandstring +=" (command)+" ";"         }=""         return commandstring;=""     }="" }="" zuul="" bad="" game/game.class="" zuul="" bad="" game/game.ctxt="" #bluej="" class="" context="" comment0.target="Game" comment1.params="comment1.target=Game()" comment10.params="comment10.target=void\" displayinventory()="" comment11.params="command" comment11.target="boolean\" quit(command)="" comment12.params="command" comment12.target="void\" look(command)="" comment13.params="command" comment13.target="void\" drop(command)="" comment14.params="command" comment14.target="void\" take(command)="" comment15.params="comment15.target=void\" splash()="" comment16.params="comment16.target=void\" goback()="" comment2.params="comment2.target=void\" createrooms()="" comment3.params="comment3.target=void\" play()="" comment4.params="comment4.target=void\" printwelcome()="" comment5.params="command" comment5.target="boolean\" processcommand(command)="" comment6.params="comment6.target=void\" getroomexitsanddescription()="" comment7.params="comment7.target=void\" getroomitem()="" comment8.params="comment8.target=void\" printhelp()="" comment9.params="command" comment9.target="void\" goroom(command)="" numcomments="17" zuul="" bad="" game/game.java="" zuul="" bad="" game/game.java="" import java.util.*;="" public class game ="" {=""     private parser parser;=""     private room currentroom;=""> roomStack;         private Room previousRoom;     private ArrayList inventory;     private static final String key="Key";     private int moves=10;     public Game()      {         createRooms();         parser = new Parser();         roomStack = new Stack();         inventory = new ArrayList<>();     }     private void createRooms()     {         Room outside, theater, pub, lab, office, cellar,classRoom,playGround;         outside = new Room("outside the main entrance of the university",false);         theater = new Room("in a lecture theater",true);         pub = new Room("in the campus pub",true);         lab = new Room("in a computing lab",false);         office = new Room("in the computing admin office",false);         cellar = new Room("in the cellar",true);         classRoom = new Room("in the classroom",true);         playGround = new Room("in the playground",false);         outside.setExits(theater,pub,playGround,lab,null,null);         theater.setExit("west",outside);         pub.setExit("east",outside);         lab.setExits(office,null,outside,null,classRoom,null);         office.setExits(null,lab,null,null,null,cellar);         cellar.setExit("up", office);         classRoom.setExit("down",lab);         playGround.setExit("south",outside);         outside.setItem(new Item("Torch","Bright Light"));         theater.setItem(new Item("Sword","Melee Weapon"));         pub.setItem(null);         lab.setItem(null);         office.setItem(new Item("Key","Unlock Doors"));         cellar.setItem(null);         classRoom.setItem(new Item("Medicine","Healer"));         playGround.setItem(new Item("Rope","Climbing"));         previousRoom = outside;         currentRoom = outside;      }     public void play()      {                     printWelcome();                    boolean finished = false;         while (! finished)          {             Command command = parser.getCommand();             finished = processCommand(command);         }         if(moves==0)         {             System.out.println("Total moves exhausted");             System.out.println("Better Luck Next Time !!!");         }         else         {             String[] item = new Item().validItemList();             for(int i=0;i
Answered 31 days AfterSep 20, 2021

Answer To: makbar10A2.docx PROG2007 Assignment 2 Name Muhammad Gulraiz Akbar ID XXXXXXXXXX Date 20/09/2021...

Ali Asgar answered on Sep 27 2021
129 Votes
1.0 Executive Summary
1.1 Summary of Options
Financial Summary
2.0 Current Situation
2.1 Policy Context
SCU has decided to upgrade its Cisco LAB network to bring it at par to the current security standards and implement newer technologically advance network equipment to prepare the network for the future demands.
It wants to increase capacity of its existing branches and add 2 new branches to cater to business needs m
ore efficiently.
2.2 Current Technical Environment
SCU currently has 3 sites connected via internet. These sites are: Headquarter (HQ) and two offices: Branch A and Branch B.
The current topology is as shown in image below:

    Sno
    HQ
    Branch A
    Branch B
    1
    Router R3
    Router R2
    
    2
    Switch SW01
    Switch SW11, SwitchSW12
    Switch SW21, SwitchSW22
    3
    Server SVR-1
    
    
    4
    15 PCs
    5 PCs
    10 Pcs
2.3 Business Problem
With increase in cyber security risks and implementation of regulatory compliances has made it mandatory for SCU to upgrade its old network and implement the modern Security and additional devices.
As per new Security requirements:
· Network routers must be centrally managed and controlled from a Management network.
· Router logins and credentials must be managed using an authentication server installed in HQ.
SCU management is also determined to implement an expansion in network:
· Two new branches Branch C and D is to be implemented
· Additional staff will be seated in each branch increasing the capacity of existing sites and also seating new staff at the newly created branches. Employees at HQ will be increased to 60, at branch A to 40, at branch B to 30, at branch C to 20 and at branch D to 10.
· Each branch will have a local server
· Each employee will be using a PC and an IP phone.
2.4 Stakeholder Impact
    Stakeholder
    Impact
    SCU
    Unable to efficiently increase the number of students enrolled
    
    Delivery of restricted and inefficient student experience hurting on University’s international ranking
    Administration Staff
    Unable to provide facilities to students
    
    Unable to provide better services to Students
    Teaching Staff
    Restricted in providing teaching material to students
    Technical Support Staff
    Costly maintenance of network services
    
    Increased cost of adding additional user devices
    Students
    Unable to gain benefits of campus services and restricted use of campus resources.
2.5 Current Risk
SCU IT network is prone to outages and is vulnerable to external and internal threats of cyber attack.
1. Unauthorized users are able to access data and services.
2. Not able to increase student capacity due to limitations of Network capacity
3. High risk of data theft in privacy violation of students and teachers.
4. Slow and unreliable network speed leading to delay in work done.
3.0 Proposed Response
This section convers the proposal and how it is aligned with SCU’s vision and the management decisions. It will outline the expectations of the management team and the outline of how the network is supposed to look after the implementation of upgrade.
3.1 Strategic Alignment
The network upgradation plan bein laid out is in alignment with the management decision to organise the SCU IT network and implement new branch offices and increase the capacity of existing offices.
3.2 Future Network Environment
The new network will contain:
1. Additional routers to have each branch connected behind a router.
2. Each branch will have its own local server
3. Each user will have a dedicated PC and an IP phone.
The proposed network design is shown in below image:
3.3 Proposed Business Environment
The proposed network will allow SCU to further expand in the future by easily adding additional users in the network. Since all branch network can work independently of other, by adding local servers, the users will be able to work faster and reliably. Also instead of older internet based connections, new ISP provided WAN connectivity will be used to connect the branches.
3.4 Expected Benefits
    Stakeholder
    Benefit(s)
    Achievement Timeframe
    SCU
    Enroll additional Students
    Immediately
    
    Deliver World class services to students
    Immediate to medium term
    
    Easily expand network in future
    Medium to long...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here