Chapter 1
Introduction
1.
Design patterns are a starting point
-You don’t have to use every design pattern
-Choose those best suited for the job
GDPR
-The UK is no longer in the EU
-Economic/political impacts: Costing £360 million in tariffs
Data centres
-Example of environmental impact = heat (can be harnessed)
-Technical = technical expertise (internal and external IT teams)
-Social = influencers marketing products on social media
-Poor design of architectural systems can cause issues when trying to
evolve that system
-Context diagram
-Interconnections (five systems brought together as one system)
-There are interactions between systems
2.
Architectural patterns/software patterns
Iterative
-Patches on windows (loopholes that can be exploited, changes that can
be made)
Indirect = what the client wants the system to do (trade-offs are always
involved)
3.
Patterns
-Things done before can be used again
-Don’t shoehorn something in just because you’re comfortable with it (the
biggest problem is people taking a pattern they know and shoehorning it
in)
-If a pattern you know doesn’t fit can you make changes to it?
-Not definitive
Computer Based Systems
1.
One or more interfaces to different systems or people
-Theoretically laying out hardware
Renting or buying
-Renting from Amazon is an advantage
-Data security is important
2.
Distribution
, -Benefits = if there’s a cyber-attack, half of the system goes down because
it’s shared across multiple devices
-Data centres in amazon can switch networks quickly
-Disadvantages include a delay between machines
Scope
-A small system replaced by a big system which didn’t understand what to
do
-Don’t overstretch in your coursework
3.
Reliability
-Does it do what it’s supposed to do?
-Is it constantly running?
Performance
-Saving = encryption at source, which impacts performance
Revisit changes
-Talk about performance security and reliability in coursework (theory
practice)
-Pigeon-holing things is human behaviour
4.
Event (self-driving car)
-Telling you when to change gears
-Appendix 1 (see what these systems are) = transaction processing
system and sales management system
-Over time things change, so you have to go back and implement new
systems
-A finished project is never done (the Student Information System at GCU)
5.
Batch Processing
-Transactions are completed during working hours and bank deals with
them overnight (shops)
6.
EBPS
-Prewash on washing machine = stop, start, final spin (three events)
7.
Software Architecture
-Deployment diagram
-Firewall = security
-Interface (sends information to banking system)
8.
Software Product Development
-Differentiating = Android prioritise volume whereas Apple don’t
The Architectural Design Process
,1.
Processes
-Specify (don’t move on until the client has signed off on the system)
-Parallel running = both systems running at the same time till you’re
happy with them
2.
Requirements Engineering process
Never start again as that means wasting money
Patterns
-Model View Controller = architectural pattern (dropped into detail design)
4.
Viewpoints
-Considering the perspective of others (example = staff designing modules
for students at Glasgow Caledonian Uni)
Changes
-Constant updates on Windows
-Reflects updates in system documentation process (see if the code
matches the explanation)
5.
Architectural design documentation in relation to implementation structure
-Changes might not run well on existing technology
-Creating a new system can be easier than updating an already existing
system
6.
Legislation
-Office
Submitting proposal
-Financial estimation
-Rent or buy RAM (expensive decision)
-What does the system do?
-Not hugely spread out but it does affect kit
-using Amazon (renting RAM is helpful)
-Are AWS data centres clean?
-Bank maintenance is usually done between 3am-5am on Sunday
-GDPR (a constant issue) = based in EU so it must comply with EU GDPR
7.
Design overarching system structure
-Read ahead then make changes
8.
Architectural Degradation
-If kit is made obsolete you won’t be able to get maximum performance
out of it anymore
, The Software Architect
1.
Small to medium companies combine architects and developers into one
job
Communication skills
-Remember that what’s obvious to you might not be obvious to the client
2.
Smaller companies
-Can pose significant risk due to insufficient independent review
-In your coursework groups reflect on each other’s decisions, get different
viewpoints, discuss with each other and with other groups
3.
The Architect
-Has cutting edge knowledge
-Good management and leadership skills
4.
Company
-Small vs large affects your role and knowledge
5/6.
Architect duties
-Turn up as often as you can, be inquisitive and do what’s asked of you
7/8.
Standards
-Bluetooth, Wi-Fi, XML
-De Jure = standards
-De Facto = Windows
Summary
System Architecture
-Look at Appendix 1
Applications Architecture and Design- 17/10/23
Software Design
Introduction
· Coursework: people want to do too much too soon