SWE 3633 Lecture 3: L3 software architecture

21 views3 pages

For unlimited access to Class Notes, a Class+ subscription is required.

Software Architecture and Design
Lecture 3
Software Architecture Design Guidelines
Functional and non functional requirements should be identified verified, and validated
(product design) before architectural and detailed design.
Using an abstract architectural design of a system to communicate with stakeholders
helps avoid overhauling the system design in later stages of the software development
cycle.
Must rule:
Abstract design goes first before concrete design. Always start with an abstract design
that specifies interfaces of components and abstract data types.
Use multiple levels of abstraction if necessary.
Make all implementation decision depend on the abstract interfaces instead of concrete
ones because those are more stable they are the contracts between service providers
and services requesters so they are defined at the early stages of software
development cycle.
Functional requirements:
Business Rules
Transaction corrections, adjustments and cancellations
Administrative functions
Authentication
Authorization levels
Audit Tracking
External Interfaces
Certification Requirements
Reporting Requirements
Historical Data
Legal or Regulatory Requirements
Non-functional requirements:
Performance for example Response Time, Throughput, Utilization, Static
Volumetric
Scalability
Capacity
Availability
Reliability
Recoverability
find more resources at oneclass.com
find more resources at oneclass.com
Unlock document

This preview shows page 1 of the document.
Unlock all 3 pages and 3 million more documents.

Already have an account? Log in

Get access

Grade+
$10 USD/m
Billed $120 USD annually
Homework Help
Class Notes
Textbook Notes
40 Verified Answers
Study Guides
1 Booster Class
Class+
$8 USD/m
Billed $96 USD annually
Homework Help
Class Notes
Textbook Notes
30 Verified Answers
Study Guides
1 Booster Class