CS603 Midterm Short Notes by Almas Afzal
- Type
- Midterm past paper
- Course
- CS603 Software Architecture and Design
- Size
- PDF 2.3 MB
- Updated
- 23 Oct 2026
You get 3 free files a day on the website. Add the Chrome extensionSign in with the extension for 30 a day.
Preview text
Text from pages 1, 2, 3 of 46. Download the file for all 46 pages.
What is Design?
Design can be defined by two ways:
- As a Verb
- As a Noun
As a Verb: It is defined to make draw plans from something, for examples Clothes or buildings. As a Noun: It is defined as a drawing or sets of drawings showing how a building or product is to be made and how it will work and look.
What is Software Design?
Software Design is the process of defining the architecture, components, modules, interfaces, and data for a software system to satisfy specified requirements. It acts as a blueprint for software development and ensures that the system is structured, maintainable, and efficient.
It includes design principles, patterns, and methodologies to create high-quality software
Why do we use Design?
We design things to improve situations, solve problems ans explore alternatives.
System specification defines what the software should do.
- Functional & Non-functional Requirement
- User Needs & Constraints
- Hardware & Software Requirements
2. The Software Design Process
The software design process is a structured approach that includes:
Requirement Analysis – Understanding what the system should do.
Architectural Design – Defining the system’s high-level structure.
Detailed Design – Designing individual components/modules.
Validation & Verification – Checking the design to avoid errors.
3. A Blueprint For implementation
Software design acts as a blueprint (plan) that guides developers. Diagrams (UML, Flowcharts) to visualize system components.
Architecture patterns (MVC, Layered Architecture) to organize code.
Coding standards & guidelines to ensure quality.
During the design phase , software engineers apply their knowledge of:
- The problem domain
- Implementation Technologies
Basic Objectives of Software Design:
- It translates system specification into plans for the technical implementation of the software.
- It serves as a technical plan for implementation.
- It specifies the overall structure and organization of the eventual code.
The system or Program should meets the customer’s needs.
A Software Should be:
- Easy to Implement
- Efficient
- Easily Extendible to meet new needs
Topic_3 & 4
Software Design (Complexity & Size)
Poorly designed programs are difficult to understand & Modify.
Software design complexity refers to how difficult it is to understand, modify, test, or maintain a software system. It depends on:
Related CS603 files
All CS603 files →- CS603 Midterm Solved Subjective Current Papers by Sarim Midterm PDF 972 KB
- CS603 Midterm MCQs 2024 by Miss Mehwish Midterm PDF 473 KB
- CS603 Midterm Past Papers by Sabahat Saad Midterm PDF 28.4 MB
- CS603 Midterm Past Paper Midterm PDF 110 KB
- CS603 Midterm Handouts by Ali Abbas Handout PDF 4.2 MB
- CS603 Quiz 3 Solution by Lucky Quiz PDF 617 KB
Get more out of VUBuddy, for free
- Unlimited downloads
- The explanation behind every MCQ answer
- Study offline on slow data
- 30 downloads a day instead of 3
- Sign in and buy Pro Semester here
One Pro Semester membership works in both the extension and the app.