Mini Project-1 Phase – II Design Phase Dept. Of Computer Science and Engineering
Design allows an engineer to model the system or product that is to be built
To produce a solution to a problem given in SRS document.
To tell “how” a software system works.
Case Study: Guess the site!
What is the single most important reason for this disaster?
Why Design Is Important ?
Design is the place where product (software) quality is established.
A good design is
easy to implement
allows smooth evolution
Good design is key to successful product
Poor design results to unstable system:
Unstable System will fail when small changes are made.
Unstable System will be difficult to maintain.
Unstable System’s quality cannot be assessed until late in the software process.
What is it ?
Design of the system is essentially a blueprint or a plan for a solution for the system.
Design tells how the system is implemented.
The design model provides details about software data structures ,architectures, interfaces and components that are necessary to implement the system.
Conceptual to Technical design
How to Design ?
A design process for software systems has two levels
Top – level design ( System design)
Detailed design ( Logic design)
Top – level design
System is a set of modules with clearly defined behavior which interact with each other in a defined manner to produce some behavior or services for its environment
Decide which modules are needed for the system, the specifications of these modules, and how the modules should be interconnected.
In this level, the internal design of the modules, or how the specifications of the modules can be satisfied, is decided.
It specify the processing logic and data structures so that the design is sufficiently complete for coding
Output of the Design Phase
SDD (software Design Document) contain
Different modules and Interfaces with each other.
Different classes and relationship between each other.
Deliverables : (Design documents) Top level design Detailed design
Data flow diagram
Students need to do the things which indicated in green
Case study : Data flow modeling
A restaurant owner feels that some amount of automation will help make his business more efficient .
Data flow diagram
Data flow Diagram
For any known problem
Object oriented Modeling
System is viewed as a set of objects
Objects interact with each other through the services they provide
Object oriented systems are easier to build & maintain
Object oriented design and implementation is easy as objects are more stable than functions
UML (Unified modeling Language is used for OOM)
Class diagrams are used to represent the structure of the system
Object (ask definition )
Class( ask definition )
Class diagram represent a structure of the problem graphically using precise notation
Class name attribute operations customer Name: Address: Check_balance() Credit_amt()
Relationship between different classes
Generalization-specialization symbol is used for representation. This shows inheritance property
Aggregation symbol is used for representation. This represents whole-part relationship. If object is composed of many objects then aggregation is used
Association shows static relation ship between different objects. Can be represented in different ways
OO Analysis Following steps are performed
Identifying objects & classes
Identifying Objects and classes
Nouns represent entities in the problem space which will be modeled as objects
Structures, devices, events, locations, organizational units are modeled as objects
If the system does not need to keep information about some real-world entity or does not need any services from the entity, it should not considered as an object
Identify the structures
Identify the hierarchies that exist between object classes
Use generalization-specialization to represent inheritance
Aggregation for whole – part relation ship
Establish a relationship between objects using association
OO design Problem description Noun identification technique Specify associations Rough classes Class Diagrams
Example of drug store ask the students to identify the class, attributes,services and relationships
How student should do ?
Split each project batch into two sub batches in the first week.
Each sub batch has to do design independently. For every SRS there will be two pre final designs accordingly.
The design done by one sub batch will be reviewed by the other sub batch and evaluator in the second week.
The group arrives at the final acceptable design combining the best from both the pre final designs.
The final design will be evaluated in the third week.
Team Sub Batch 2 Divide Team into 2 Sub Batch es SRS Document Pre final Design 2 Pre final Design 1 Final Design
Files description(data file if exists)
schedule Sl no Task Dates 1 Presentation on design phase and splitting of batches and assigning a design task Week - 27 th sept to 2 nd oct 2 Pre-final design discussion with guide and team members Week - 4 th to 9 th oct 3 Final design evaluation Week – 11 th to 16 th oct