Learning Outcomes:
LO1: Model structural, behavioural and interactivity requirements for given problems using an appropriate standard
Scenario:
You are a software engineering intern at a local IT consultancy called Tempest Informatics UK Ltd. They would like you to attempt the following programming exercise so that they can assess your programming abilities and training needs while with them by building a simple student information system of the Regent College London.
Requirements / Deliverables:
Produce a design document for modelling and designing a computer program based on a given problem statement using a range of UML techniques and Pseudocode.
For this first assignment you will need to analyse and design in an object-oriented way an application that represents a simple student information system for the College which operates in London to offer different undergraduate and post graduate programmes in different locations. You will be asked to develop, implement, and test your designed solution in the second assignment towards the end of this module.
Regent College London has different undergraduate and post graduate programmes under different departments including:
·Computing and AI
·Business and enterprise
·Allied Health The college also has five different campuses as:
·London
·Harrow
·Kingsbury
·Southall
·Wembley
Though there are different departments, some of them are offering undergraduate programme and some of them are also offering post graduate programmes and a few of them may offer both. Students enrolled in both programmes may have pass or refer status for their individual modules.
All the courses may have some common attributes such as course name, duration of the course, type of the course (PT/FT) etc and students for the different course may have common attributes like student name, registration number, address, intake etc
Clearly the various types of courses may have some different attributes which are not present in all types of courses. For example, Postgraduate courses would have a property for “Thesis/Dissertation” but HND/HNC courses would not. You should think carefully about what attributes each type of course may or may not have.
The system must offer the user (a staff member of the company) the ability to:
·View a list of courses that are being offered by each department
·View a list of students that are being enrolled in different departments
·View a list of undergraduate and post graduate courses that are available in each campus
·Inserting a student into the record
·Deleting a student from the record
·Searching a student record that may show their progress in different modules The program should store data in memory where necessary but should also make appropriate use of file or database storage as appropriate.
You need to submit a design report which contains
·A series of diagrams using appropriate UML diagramming techniques to model the structural,
·behavioural and interactivity requirements for the entire system in a modular way.
·You should also summarise the purpose of the specific UML diagramming techniques you are using and explain why you are using each of them.
•Pseudocode for each key functional area Report formatting requirements:
•Harvard referencing format must be used to credit secondary research sources. In-text citations
•should be included within your discussion (where relevant) using the author-date format and
•full reference details should be included in your bibliography
•Diagrams should be captioned and discussed in the body of your report
•A table of contents should be included
•Page numbers should be inserted in the centre of the footer
•Your student ID number should be placed in the header of each page
To be awarded a given grade, submissions will typically (but not necessarily exclusively) exhibit the following indicative attributes
Design documentation to a satisfactory standard only, UML and report text explaining their use may be sparsely provided and/or may be logical only in some places
Design documentation to a good standard, UML and report text explaining their use logical in the main though may be far from extensive
Design documentation to a very good standard, UML and report text explaining their use mostly extensive and logical in the main
Design documentation to an excellent standard, UML and report text explaining their use extensive and logical