Critically analyse architectural styles of software systems and evaluate the role of software architecture in the design and evolution of software.
Submission of research report. To include in-depth background analysis.
Apply the principles of software architecture construction particularly using component and service oriented programming.
Submission of research report. To include detailed analysis of component oriented architecture against other architectural styles.
Evaluate the benefits of software architectures and their corresponding programming paradigms in terms of software quality factors such reusability, maintenance, extendibility. Submission of the research report. To cover the benefits of component software architectures in term of software quality factors.
Critically discuss legal, social and ethical issues associated with software construction.
Submission of the research report. To cover the ethical, social and professional issues.
Apply technical proficiency in component and service oriented analysis and design The analysis and design part of the practical report.
Evaluate the strengths and weaknesses of service oriented and component technologies. Service and component technologies evaluation part of the practical report.
Build a complex business application that satisfies an architectural design using a service oriented component technology. The implementation part of the practical report and the demonstration/presentation (practical exam).
·Critically analyse architectural styles of software systems and evaluate the role of software architecture in the design and evolution of software.
·Apply the principles of software architecture construction particularly using component and service oriented programming.
·Evaluate the benefits of software architectures and their corresponding programming paradigms in terms of software quality factors such reusability, maintenance, extendibility.
·Apply technical proficiency in component and service oriented analysis and design
·Evaluate the strengths and weaknesses of service oriented and component technologies.
Assignment Brief and assessment criteria (these will be discussed within a formally timetabled class)
1. Assignment Brief: Analysing and Building a Banking System Software Using Component and Service Oriented Cloud Architecture
The aims are to design a new software architecture for a banking application and to demonstrate the benefits of service oriented approaches. This should involve the following:
1.Critical analysis of the various architectural styles and recommendations regarding their suitability for the above problem.
2.The evaluation of the benefits of software architectures and their corresponding programming paradigms, particularly object and service orientation, in terms of software quality factors such reusability, maintenance, extendibility.
3.The production of a high level analysis and design of the chosen architecture style and the migration steps.
4.The identification of a strategy for migrating to a Cloud based service architecture and technologies, which should include a critical discussion showing the benefits and drawbacks of the new strategy/architecture.
Module Learning Outcomes assessed in this piece of coursework
·Build a complex business application that satisfies an architectural design using a service oriented component technology.
·Evaluate the strengths and weaknesses of service oriented and component technologies.
Assignment Brief and assessment criteria (these will be discussed within a formally timetabled class)
1.Assignment Brief: Analysing and Building a Banking System Software Using Component and Service Oriented Cloud Architecture (Part 2).
The aim of the second part of the coursework is to demonstrate the knowledge and awareness of service oriented and other latest software development technologies in a given scenario. This should involve the following:
1.Apply technical proficiency in component, service and modular programming.
2.Implementation the demo system using a service oriented architecture and frameworks of your choice.
3.Produce a presentation/demonstration to discuss the used technologies and show a working prototype.