COM714 Software Design and Development Assignment

Assignment Help Software Engineering
Reference no: EM132865203

COM714 Software Design and Development - Solent University

Assessment - Estate Management System

Solent Council owns multiple estates that are occupied by local community members in different parts of the country. Each estate consists of thoroughfares and homes occupied by different occupants (owners or tenants). Estate occupants are required to pay yearly service charges to the council, which can be paid as a one-off payment or by instalments. Currently, the council employs a paper-based system where occupants make payments directly to the council staff and a receipt will be manually issued as evidence of payment. This process results in tremendous paperwork for staff, ineffective validation of payment and process and serious complaints from occupants regarding inefficiency.

As the estates grow over time, there is a significant need for an electronic system for the management of these activities.

Requirements

Consider the following features in the development of the system:

(a) Estate

An estate has a name and consists of multiple thoroughfares and properties. Each estate will always have a contact, the estate manager, who is in-charge and manages the estate affairs. The estate will have a location in a specific area of the country among other features.

(b) Thoroughfare

Every estate is made up of multiple thoroughfares with names and properties on one or both sides of a thoroughfare. For this case study, a thoroughfare can be a street, close, avenue, crescent, lane, court or road.

(c) Property

A property is a building on a thoroughfare within an estate. A property type may be in the form of a detached house, semi-detached, terrace or a block of flats. A property may be occupied by single or multiple households. A property will always have an address (usually the building name, number and thoroughfare name), associated owner or custodian, and a completion date among other features. A property may be owned, rented or managed by a body.

(d) Household

A household refers to occupants of a property who live together as a single unit. For example, a detached house and its occupants will be a single household. A block of flats, on the other hand, may consist of multiple households. Any form of an individual unit of a property (e.g. a house or an individual flat) is regarded as a

household. Each household will have a custodian who usually will be solely responsible for activities related to the household.

(e) System users

Users are considered to be the system actors who will carry out different activities using the system. The system users are considered in three categories as follows:

1. Basic System User

A basic system user is associated with an estate and will be able to carry out basic functionalities in the system. These include:

i. create, view and update thoroughfare for the estate.
ii. create, view and update properties on a thoroughfare in the estate.
iii. create, view and update a household and its associated custodian for a property on a thoroughfare.
iv. generate an invoice for a specific household.
v. take payment on behalf of a custodian and generate a receipt.
vi. print invoices and receipts for any payments that have been made.

2. Manager

An estate manager will be able to complete all basic system user tasks as stated above and, additionally, the following:

i. delete thoroughfares, properties, households and associated custodians.
ii. create a basic system user that is restricted to the estate for which the estate manager has charge.
iii. view the total invoice for the estate i.e. all households.

3. Administrator

An administrator will be able to complete all basic system user and estate manager tasks as stated above as well as the following:

i. create, view, update and delete estates including an associated estate man- ager and basic system users.
ii. view, update and delete estate invoices and payments.
iii. view the total invoice and payment receipt for all estates within the system.


Assessment Tasks

Solent Council has now considered employing you as a software developer to help develop their estate management system.

Using Python, your task is to develop and test an estate management system that meets the requirements described in this assessment brief. You should complete the following tasks to help you achieve this goal:

a) Analyse the problem scenario and derive suitable UML diagrams (use-case, robustness, sequence and class diagram). These should be included in your project in a suitable folder.
b) Implement a graphical user interface-driven object-oriented system using Py- thon. You should use Tkinter to implement the graphical user interface.
c) Suitably test your system using appropriate unit tests.


Scope
You are required to develop an Object-Oriented application with a graphical user interface using Python that meets the requirements as described in this assessment brief. It is expected that you will develop Python classes that model the features of the system as well as a suitable graphical user interface through which users can interact with the system. You are not required to implement a database. You are also not required to implement a payment system or print physical invoices. Instead, you should simulate these aspects of the system by appropriately displaying the results.


Environment
You are required to use the following tools:
- PyCharm as your integrated development environment
- Python 3.9 as the standard python library
- Additionally, the following libraries/modules may be imported and utilised:
csv - to process CSV files
datatime - to manipulate dates and times enum - to add enumerations
json - to process JSON files
math - provides access to mathematical functions os - to retrieve or check file paths
pprint - for ‘pretty printing' data structures random - to generate random numbers
test - allows regression testing
tkinter - to create a graphical user interface typing - to add type hints
unittest - to construct and run tests

- Git Tools and GitHub for version control
- A diagramming tool such as draw.io
- No other python libraries or modules should be used

Tasks

Before You Begin:

You should read this assessment brief in its entirety. Once you are ready, create a new Python project using PyCharm. You should ensure that the interpreter is set to Python 3.9. You should also ensure that your project is added to a private Git repository hosted on GitHub.

Software Product:

You are required to develop a software product that addresses the problem scenario using Python and the tools specified in this assessment brief. You should regularly commit your project to your Git repository. It is expected that your Git repository will evidence the full development history of your software product.

Demonstration:

You will be required to demonstrate your final working solution. During the demonstration, it is expected that you will execute your final solution, explain your implementation, answer any questions related to your solution and show evidence of the development of the software artefact. No presentations slides are expected or required. The demonstrations will take place after the submission of the software product and no later than the date specified in this assessment brief.

Attachment:- Software Design and Development.rar

Reference no: EM132865203

Questions Cloud

Evaluated in balanced scorecard approach : What five aspects of project success are evaluated in the balanced scorecard approach?
Emergency room with bloody diarrhea-fever and vomiting : A 4-year old girl presents at the emergency room with bloody diarrhea, fever and vomiting. What microorganism is responsible for this illness?
Chronic liver infection : Hepatitis C is a chronic liver infection that can be either silent (with no noticeable symptoms) or debilitating.
Counseling through the lifespan : What would be a potential nutrition assessment? How would you express the potential nutrition assessment using the eNCPT?
COM714 Software Design and Development Assignment : COM714 Software Design and Development Assignment Help and Solution, Solent University - Assessment Writing Service - Estate Management System
Explain the components and arrangement of DNA : Describe and explain the components and arrangement of DNA. what is the relationship between DNA, genes, and chromosomes? Explain.
Why is it important to utilize different DNA testing methods : Why is it important to utilize different DNA testing methods? Explain. Why is it that some methods may be preferred over others? Explain.
Describes four sub-steps of cellular respiration : We covered details of Cellular Respiration. Using Excel (some Table creating program) create table that describes four sub-steps of cellular respiration
Production of bills of quantities : Prepare a brief report to a professional standard giving consideration to the production of Bills of Quantities. Additionally, please discuss in relevant detail

Reviews

Write a Review

Software Engineering Questions & Answers

  Need help with changing it to ll parser

Need help with changing it to LL(1) parser. It have to run under 2 seconds - coded using Java to parse TINY PROGRAMMING LANGUAGE

  Simplify using k-map

m2+m3+m5+m7+m12+m8+m9 simplify using k-map

  Moving pictures- stakeholder interviewsmoving pictures is

moving pictures- stakeholder interviewsmoving pictures is an application that captures information about movies as well

  Explain some important principles and practices which are

question 1 describe some important principles and practices that are driving the current trends in software

  Sketch a dependency and er diagram

Sketch a dependency diagram. There are examples in reading assignments of dependence diagrams. In what normal form is this table?

  Brainstorming and delphi technique for risk identification

Discuss the difference between using brainstorming and the Delphi Technique for risk identification and determine some of the advantages and disadvantages of each approach?

  Create a wbs for the scope of the project

Determine the factors that must be considered and observed throughout the WBS development process and explain why.

  Explain why the spi0cr1 and spi0cr2 control registers

Explain why the SPI0CR1 and SPI0CR2 control registers have to have those specified values by explaining the role played by each bit for each register.

  Develop employee registration system

I am currently working on an employee registration system that is similar to KRONOS timekeeping system. Use 3 to 4 diagrams to model a software system that you are familiar with

  Create a uml class diagram for a survey class

Create a UML Class Diagram for a Survey class - The Survey class will have a static class variable that stores the current respondent's ID. As respondents complete the survey, this value will be incremented by one.

  Design and implement an information system

Analysis and design techniques, including development of use cases and UML diagrams - specifically, use case diagrams, class diagrams and sequence diagrams

  Explain change management procedure for external clients

Using the data flow diagram, explain change management procedure which might be used in large organization concerned with creating software for external clients.

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