Applied Software Engineering Assignment 1 -
Learning outcomes -
1. Understand the notion of software engineering and why it is important.
2. Analyse the risk factors associated with phases of the software development life-cycle and generate possible strategies to mitigate the risks.
3. To know various techniques and notations for understanding problem domain.
4. To appreciates the role software architecture in software development and be able to characterize some important architectural styles.
5. To understand the role of design patterns and be able to illustrate their properties.
6. To be able to discern desirable properties of a software design.
7. To understand the general flavour of object-oriented analysis and design.
8. To be aware of the major software testing techniques.
9. To be able to discern major causes of maintenance problems and be aware of reverse engineering, its limitations and tools to support it.
Element 1 - Title Implementation and Report
Task details - This assignment is accompanied with a case study describing a high level system specification for an application.
You are required to provide an implementation for ONLY ONE appropriate use case,
Tasks:
Based on the specified use case, you are required to provide an implementation and associated testing for the outlined system. You may use any programming language of your choosing 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, source code, literature references etc.) should be provided as appropriate within your report.
SOFTWARE DEVELOPMENT PROJECT ASSIGNMENT 2 -
Major Assessment: Software Project
Introduction:
The catalogue functionality is a major foundation of all information management activities throughout recorded human history. This has not changed in the modern era in the slightest. This project seeks to introduce the learner to the methodology underpinning a wide variety of desktop applications, websites and mobile apps. Examples of this functionality include: Amazon, Facebook, any Contacts List app to name just a few.
In this project, you will be expected to create a dynamic data driven catalogue (database recommended, file driven acceptable) with a basic dynamic login system (not hard coded). The student may choose any subject matter they wish for the catalogue so long as it fits the minimum display layout specified in this document.
Programming Requirements:
Unless agreed otherwise with your Instructor, this software should be developed in JAVA for desktop or mobile environment. The application software must connect to a datasource to allow dynamic generation and editing of the catalogue contents. It is strongly recommended that an SQL Compliant datasource be used and preferably MYSQL.
Attachment:- Assignment Files.rar