From 828b0926e5462fe44afe85432a4a121d5b4d1166 Mon Sep 17 00:00:00 2001 From: Mark Tyers Date: Thu, 25 Oct 2018 19:45:54 +0100 Subject: [PATCH] updated lab exercises --- 03 Lab 1 Domain-Driven Design.md | 4 ++++ 03 Lab 2 Software Architecture.md | 23 ++++++++++++++++++----- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/03 Lab 1 Domain-Driven Design.md b/03 Lab 1 Domain-Driven Design.md index af7dcdf..e505606 100644 --- a/03 Lab 1 Domain-Driven Design.md +++ b/03 Lab 1 Domain-Driven Design.md @@ -28,3 +28,7 @@ The extra labs will help you during the build and, if time allows, you should co 1. TDD and APIs (especially if you are studying 304CEM). 2. TDD and JavaScript, to help you implement TDD for code running in the browser. 3. Async JavaScript which will improve your code structure and layout by introducing some of the more advanced JavaScript asynchronous constructs. + +## Assessment + +The domain description and domain language should be included in the report as appendix A. This will not count towards your word-count. The domain model (class diagram) should be included in the report and form part of the system analysis. diff --git a/03 Lab 2 Software Architecture.md b/03 Lab 2 Software Architecture.md index 65524c9..da49cfd 100644 --- a/03 Lab 2 Software Architecture.md +++ b/03 Lab 2 Software Architecture.md @@ -3,13 +3,26 @@ Supporting resources: -1. [Lecture slides](https://docs.google.com/presentation/d/1Ux83hzw-DdcBWn6PUXz_xF3b-ytE4PsWLpSKS_dqBfw/edit?usp=sharing) +1. [Lecture slides](https://drive.google.com/open?id=1Ux83hzw-DdcBWn6PUXz_xF3b-ytE4PsWLpSKS_dqBfw) -1. 02 Software Architecture Patterns -2. 10 Case Study Software Architecture and Quality Criteria +At this stage you have carried out Domain-Driven Design and now have a good idea about the system you are required to develop. In this lab you will be applying the knowledge from this week's lecture to the problem you have been given as your assignment. You should check Moodle and find out the topic you have been assigned. -Using the resources available from the lecture slides, create a domain modelling. +1. Use the information in this week's presentation to select three architectural styles that would be suitable for your scenario. +2. For each of these create a **Component Diagram** diagram showing how this could be applied: + 1. Analyse the system and agree on the architectural quanta. +3. Review your three designs and choose the best architecture (note that this might be combination of one or more of the styles you selected above). +4. Expand this architecture to include details such as: + 1. The quanta. + 2. The file/module structure. + 3. The use of in-process and/or out of process communication between the modules. + 4. The protocols you intend using to communicate between modules if out of process. + 5. Any third party libraries/modules you feel would help +5. Set up any code repositories you need in the `340CT-1819OCTJAN` organisation on the University GitHub server: + 1. Make sure the repositories are PRIVATE. + 2. Clone these onto your development machine. + 3. Configure your git details in each repository. + 4. Set up a suitable `.gitignore` file. -Choose three architectural styles from those you were shown and use UML to design an architecture for your business scenario. +Once everything is set up you are free to start developing your system. Over the next few weeks you will be introduced to a number of additional skills and techniques that you will be expected to apply to your project. \ No newline at end of file