CP60019E Applied Software Engineering, University of West

Post New Homework

Applied Software Engineering

Learning outcome 1: Understand the notion of software engineering and why it is important

Learning outcome 2: Analyse the risk factors associated with phases of the software development life-cycle and generate possible strategies to mitigate the risks.

Learning outcome 3: To know various techniques and notations for understanding problem domain

Learning outcome 4: To appreciates the role software architecture in software development and be able to characterize some important architectural styles

Learning outcome 5: To understand the role of design patterns and be able to illustrate their properties

Learning outcome 6: To be able to discern desirable properties of a software design

Learning outcome 7: To understand the general flavour of object-oriented analysis and design

Learning outcome 8: To be aware of the major software testing techniques

Learning outcome 9: To be able to discern major causes of maintenance problems and be aware of reverse engineering, its limitations and tools to support it

Case Study - LH Medical Company (LHM)

Design and Implementation

Task details This assignment is accompanied with a case study describing a high level system specification for an application.

Consider the following information and attempt the tasks given.

Repeat prescriptions may automatically be produced by the system if appropriate and are available for collection at any surgery by the patient. At any time, a practitioner may suspend or cancel the prescriptions.

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.

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.

Task 2

Design patterns
Command pattern encapsulates a request as an object. Consider the following class diagram as the structure for the pattern:
Apply the command pattern (by modifying the classes in the above structure) to your chosen use case and class diagram which you have developed as part of Assignment coursework 1.

Write a software program to implement the command pattern.

Task 3
Object Constraint Language (OCL)
Incorporate OCL to represent the business logic, rules and constraints for the selected use case. As part of your solution 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 OCL

Task 4 Unit Tests
Produce Software testing, documentation, and verification considerations

Task 5
Design/implementation critique
Discuss and critically evaluate aspects of software engineer that you adopted

Attachment:- Applied Software Engineering.rar

Post New Homework
Captcha

Looking tutor’s service for getting help in UK studies or college assignments? Order Now