CMP5321 Programming for Network Engineers

Hello, if you have any need, please feel free to consult us, this is my wechat: wx91due

Coursework Assignment Brief

Assessment - Undergraduate

Academic Year 2024-25

 

Module Title:

Programming for Network Engineers

Module Code:

CMP5321

Assessment Title:

Understanding Automation Concepts

Assessment Identifier:


Weighting:           100%

School:


Module Co-ordinator:

John Hayes

Hand in deadline date:

Friday @ 17:00

Re-assessment hand in deadline date:

 

Return of Feedback date and format

 

Support available for students required to submit a re-assessment:

Timetabled support sessions will be arranged for the period immediately preceding the hand-in date

NOTE:

At the first assessment attempt, the full range of marks is available. At the re-assessment attempt the mark is capped and the maximum mark that can be achieved is 40%.

Assessment Summary

 

 

IMPORTANT STATEMENTS

Undergraduate Regulations

Your studies will be governed by the BCU Academic Regulations on Assessment, Progression and Awards. Copies of regulations can be found at   https://icity.bcu.ac.uk/Academic-Services/Information-for-Students/Academic-Regulations-2018-19 

For courses accredited by professional bodies such as the IET (Institution of Engineering and Technology) there are some exemptions from the standard regulations and these are detailed in your Programme Handbook

Cheating and Plagiarism

Both cheating and plagiarism are totally unacceptable and the University maintains a strict policy against them.  It is YOUR responsibility to be aware of this policy and to act accordingly. Please refer to the Academic Registry Guidance at https://icity.bcu.ac.uk/Academic-Registry/Information-for-Students/Assessment/Avoiding-Allegations-of-Cheating

 

The basic principles are:

· Don’t pass off anyone else’s work as your own, including work from “essay banks”. This is plagiarism and is viewed extremely seriously by the University.

· Don’t submit a piece of work in whole or in part that has already been submitted for assessment elsewhere. This is called duplication and, like plagiarism, is viewed extremely seriously by the University.

· Always acknowledge all of the sources that you have used in your coursework assignment or project.

· If you are using the exact words of another person, always put them in quotation marks.

· Check that you know whether the coursework is to be produced individually or whether you can work with others.

· If you are doing group work, be sure about what you are supposed to do on your own.

· Never make up or falsify data to prove your point.

· Never allow others to copy your work.

· Never lend disks, memory sticks or copies of your coursework to any other student in the University; this may lead you being accused of collusion.

By submitting coursework, either physically or electronically, you are confirming that it is your own work (or, in the case of a group submission, that it is the result of joint work undertaken by members of the group that you represent) and that you have read and understand the University’s guidance on plagiarism and cheating. 

You should be aware that coursework may be submitted to an electronic detection system in order to help ascertain if any plagiarised material is present. You may check your own work prior to submission using Turnitin at the Formative Moodle Site.  If you have queries about what constitutes plagiarism, please speak to your module tutor or the Centre for Academic Success.

Electronic Submission of Work

It is your responsibility to ensure that work submitted in electronic format can be opened on a faculty computer and to check that any electronic submissions have been successfully uploaded. If it cannot be opened it will not be marked. Any required file formats will be specified in the assignment brief and failure to comply with these submission requirements will result in work not being marked.  You must retain a copy of all electronic work you have submitted and re-submit if requested.

Assessment Details:

 

Title: Network Automation Principles and Practice

 

Type: Coursework

 

Style: Report


 

For this coursework, you are tasked with simulating a real-world network design and automation task to understand the practical applications of Python in networking. These exercises will promo teamwork, problem-solving, and application of programming concepts.

 

Assessment Part 1 (30%):

· Group Coursework (form into groups of up to 4 students.)

· Your group have been tasked by an external company to improve their network infrastructure by proposing a new network design. They are expanding their operations so need to embrace a more efficient, scalable, and automated network.

· Pick one of the following departments:

a. Sales Department:  Design a topology and IP scheme for the sales department, consisting of 20 PCs spread across two floors.

b. HR Department: Design a topology and IP scheme for the HR department, consisting of 15 PC across one floor.

c. IT Department: Design a topology and IP scheme for the IT departments 10 PCs – they require to separate IP schemes (one for developers and one for network engineers)

· Tasks:

d. Design the topology and address scheme for your chosen department, making sure it meets the structural requirements – you do not need to consider VLANs etc.! Provide a short description with your rationale.

e. Write a short Python script to generate the addresses for your proposed scheme, and output the percentage usage of the address range.

Example topology:

 

Figure 1 Example topology

 

Example address scheme:

Network Address

Netmask

192.168.1.0

255.255.255.0 /24 (256 addresses)

Assignment:

Router/Gateway

192.168.1.1

Network printers

192.168.1.10-19

PCs

192.168.1.20-40

Example script:

def generate_ips(base, start, end):

return [base +str(i) for i in range(start, end+1)]

ip_list = generate_ips(“192.168.1.”, 10, 20)

for ip in ip_list:

print(ip)

Example script with error handling:

def generate_ips(base, start, end):

    try:

        if not (1 <= start < end <= 254):

            raise ValueError("Start must be less than End, must be in the range of 1-254.")        

        return [base + str(i) for i in range(start, end+1)]

        

    except ValueError as e:

        print(f"Input error: {e}")

    except Exception as e:

        print(f"An unexpected error occurred: {e}")

 

ip_list = generate_ips("192.168.1.", 10, 20)

 

if ip_list:

    for ip in ip_list:

        print(ip)

 

Produce a document containing the work you have produced above, make sure your document contains:

1. Your group members names

2. The network topology

3. The addressing scheme (example tables shown above)

4. The script to generate the addresses based on your scheme

5. Design documentation:

a. Topology design choice(s)

b. IP/Netmask design rationale

c. Security measures

d. Python script explanation


 

Additional information:

 

For advice on writing style, referencing and academic skills, please make use of the Centre for Academic Success: https://icity.bcu.ac.uk/celt/centre-for-academic-success

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注