LO1 Analyse the risk factors associated with phases of the software development lifecycle and generate possible strategies to mitigate the risks identified using a risk management process.
2025-01-03 16:49:31
Applied Software Engineering
Learning outcomes covered
|
1
|
Analyse the risk factors associated with phases of the software development
lifecycle and generate possible strategies to mitigate the risks identified using a risk management process.
|
2
|
Design and implement component-based software applications based on software engineering techniques
|
3
|
Evaluate the role of design patterns and software architecture in software development and be able to characterise some important architectural styles.
|
4
|
Apply the major software testing techniques.
|
5
|
To be able to discern major causes of maintenance problems and be aware of reverse engineering, its limitations and tools to support it.
|
6
|
Critically analyse the concept of sustainable software engineering (Individual, Social, Economic, Environmental, Technical).
|
7
|
Identify the correct approach to sustainable design and manufacturing.
|
8
|
Evaluate Sustainable Software Engineering practices.
|
Element 1
|
Title
|
Design and Implementation
|
Task details
|
This assignment is accompanied with a case study describing a high level system specification for an application.
Tasks:
Based on the above specified information, you are required to provide an implementation and associated testing for the outlined system. You may use a suitable object-oriented programming language, such as Java, and may populate the system with appropriate data you have created for testing purposes.
In addition, you are required to produce a report detailing a critical analysis of the system and its development. This report should critique the system using software engineering best practices as considered throughout the module.
Documentary evidence (including diagrams, and source code) should be provided as appropriate within your report.
Notes:
You report should be a single PDF document containing the completed software listing. Zip file submissions will not be marked.
|
|
Assignment Tasks:
Task 1 Implementation
Develop a software application to implement your chosen use case and UML models. As part of your answer, illustrate how the principles of object orientation is implemented. [30 marks]
Task 2
Object Constraint Language (OCL)
Incorporate OCL to represent the business logic, rules and constraints for the selected use case. As part of your answer, include the correct syntax for pre and post conditions, navigation, and multiplicities.
Produce a list of appropriate business rules and constraints. Produce an implementation for the specified OCL.
[30 marks]
Task 3 Unit Tests
Produce Software testing, documentation, and verification considerations
[20 marks]
Task 4
Software maintenance, and Sustainable Software Engineering
With reference to your software design and implementation, discuss and critically evaluate software maintenance, Sustainable Software Engineering (SSE) practices and principles.
[20 marks]
|
Marking Guide
|
Criteria
|
Issues
|
Mark
|
Marking breakdown where appropriate
|
|
Implementation
|
Have you produced a software product which captures the system requirements for one use case?
|
30
|
Software and source code for one use case with full explanation of the code
15 marks
|
|
|
Have you exhibited software engineering best practices regarding system decomposition, structure, code consistency, documentation etc.?
Note: An implementation for GUI is not required.
|
|
Implementation for object orientation, with full explanation of the code
15 marks
|
Object Constraint Language (OCL)
|
Have produced correct OCL to represent the business logic, rules and constraints for the use case?
Have you included the correct syntax for multiplicities?
|
30
|
OCL
15 marks
Implementation for OCL with full explanation of the code
15 marks
|
Software testing, documentation, and verification considerations
|
Have you demonstrated understanding of software testing including appropriate code?
Have you managed to implement appropriate testing for the code you have produced and in relation to the specified OCL?
Have you provided seed or testing data for the system?
Do you understand the TDD approach? Did the implementation address all the required functionality for the system?
Have you provided clear and concise instructions regarding how the system and its tests should be launched?
Do you have an understanding of the testing requirements?
Have you produced code listing and explanation?
|
20
|
System tests (e.g. unit/ integration etc.) and test data
with full explanation of the code
20 marks
|
Software maintenance, and Sustainable Software Engineering
|
Have you provided an explanation and a critical
evaluation of your software design, in terms of software
|
20
|
|
|
|
maintenance, Sustainable Software Engineering (SSE) practices and principles.
|
|
|
|
|
|
|
Case Study
IT Magazine
A magazine called “IT in the Valley” is published every month. An information system is needed to help deal with the editing of the magazine. It should also help with the payments to the contributors of stories and photographs and the receipt of payment from the advertisers.
The enterprise consists of four main departments: a Marketing Department, an Editing Department, a Processing Centre and an Accounts Department.
The information system will collect adverts, stories and photographs and publish magazine issues. It will also pay the journalists and photographers whose stories and photographs are published.
The Marketing Department receives advertising details from advertisers. Details of these adverts are recorded. The system should record who is to pay for the advertisement when it should appear and how large the advert should be. There may be other considerations such as where in the magazine it should appear. The Marketing Department passes the advertisement to the editor. An advertiser may place several different adverts in the same issue of the magazine.
The Editor checks and edits the adverts and sends them to the processing centre, where all the data concerning the content of the advertisement are stored this would normally consist of text and graphics.
In addition to the advertisements the magazine consists of a mixture of stories and adverts. A freelancing journalist submits stories to the editor. Sometimes a successful journalist has more than one story in the same issue. Details of the journalists are kept for reference situation exists for photographers. Photographers and journalists may be regular contributors or occasional contributors. Details of the stories and photographs must be stored. Complete issues of the magazine are also stored so old stories may be researched in the future. Any stories or photographs that have been submitted and remain unused after six months are archived.
The editor may match one or more photographs with a story to illustrate it. The editor chooses all the stories, adverts and photographs and puts them together to form the magazine issue.
Copies of completed issues of the magazine are sent to advertisers.
At the end of each month the Accounts Department send out payment to each of the journalists and photographers who have had a story published in the last issue of the magazine. The fee will have previously been agreed between the Editor and the journalist or photographer. The Accounts Department will also invoice the advertisers for adverts that have been published. If no payment is received within two months they will begin to bring legal proceedings against their debtors.
100% Plagiarism Free & Custom Written, Tailored to your instructions