SlideShare a Scribd company logo
TOPIC :
DESIGN MODEL
PRESENTED BY:
SAJAN SINGH (MCA/25019/18)
MEGHAJ KUMAR MALLICK (MCA/25017/18)
 Software design is an iterative process
through which requirements are translated
into a blueprintfor constructing the software.
 Initially, the blueprint depicts a holistic view of
software i.e. the design is represented at a high-
level of abstraction.
GOALS OF THE DESIGN PROCESS:
1) The design must implement all of the explicit
requirements contained in the analysis model and it
must accommodate all of the implicit requirements
desired by the customer.
2) The design must be a readable, understandable guide
for those who generate code and for those who test
and subsequently support the software.
3) The design should address the data, functional and
behavioral domains from an implementation
perspective
 Data Design :
◦ Transforms information domain model into data structures required to
implement software
 Architectural Design :
◦ Defines relationship among the major structural elements of a software
 Interface Design :
◦ Describes how the software communicates with systems that interact with
it and with humans.
 Procedural Design/ Component-level design :
◦ Transforms structural elements of the architecture into a procedural
description of software components.
DESIGN MODEL
 A design methodology combines a systematic set of
rules for creating a program design with
diagramming tools needed to represent it.
 Procedural design is best used to model programs
that have an obvious flow of data from input to
output. It represents the architecture of a program as a
set of interacting processes that pass data from one to
another.
 There are two component for design tool are
following:
 Data Flow Diagram:
Adataflowdiagram(orDFD)isatooltohelpyoudiscoveranddocumentthe
program’smajor processes.Thefollowingtableshowsthesymbolsusedandwhat
each represents.
 Structure Chart :
A structure chart is a tool to help you derive and document the program’s
architecture. It is similar to an organization chart
USER INTERFACE DESIGN
 Designing effective interfaces
for software systems
 To suggest some general design principles for
user interface design
 To explain different interaction styles
 To introduce styles of information presentation
 To describe the user support which should be
built-in to user interfaces
 To introduce usability attributes and system
approaches to system evaluation
 System users often judge a system by its
interface rather than its functionality
 A poorly designed interface can cause a user to
make catastrophic errors
 Poor user interface design is the reason why so
many software systems are never used
 Most users of business systems interact with these
systems through graphical interfaces although, in
some cases, legacy text-based interfaces are still
used
Characteristic Description
Windows Multiple windows allow different information to be
displayed simultaneously on the user’s screen.
Icons Icons different types of information. On some systems,
icons represent files; on others, icons represent
processes.
Menus Commands are selected from a menu rather than typed
in a command language.
Pointing A pointing device such as a mouse is used for selecting
choices from a menu or indicating items of interest in a
window.
Graphics Graphical elements can be mixed with text on the same
display.
 They are easy to learn and use.
• Users without experience can learn to use the system
quickly.
 The user may switch quickly from one task to
another and can interact with several different
applications.
• Information remains visible in its own window when
attention is switched.
 Fast, full-screen interaction is possible with
immediate access to anywhere on the screen
 The aim of this chapter is to sensitise software
engineers to key issues underlying the design
rather than the implementation of user interfaces
 User-centred design is an approach to UI design
where the needs of the user are paramount and
where the user is involved in the design process
 UI design always involves the development of
prototype interfaces
Executable
prototype
Design
prototype
Produce paper-
based design
prototype
Produce
dynamic design
prototype
Evaluate design
with end-users
Implement
final user
interface
Evaluate design
with end-users
Analyse and
understand user
activities
 UI design must take account of the needs,
experience and capabilities of the system users
 Designers should be aware of people’s physical
and mental limitations (e.g. limited short-term
memory) and should recognise that people make
mistakes
 UI design principles underlie interface designs
although not all principles are applicable to all
designs
DescriptionPrinciple
User familiarity
Consistency
The interface should use terms and concepts which are
drawn from the experience of the people who will make
most use of the system.
The interface should be consistent in that, wherever
possible, comparable operations should be activated in
the same way.
Users should never be surprised by the behaviour of a
system.
Minimal surprise
Recoverability The interface should include mechanisms to allow
users to recover from errors.
User guidance
User diversity
The interface should provide meaningful feedback
when errors occur and provide context-sensitive user
help facilities.
The interface should provide appropriate interaction
facilities for different types of system user.
 Users feel in control of the computer and are less
likely to be intimidated by it
 User learning time is relatively short
 Users get immediate feedback on their actions
so mistakes can be quickly detected and
corrected
 Users need not remember command names as
they are always presented with a list of valid
commands
 Typing effort is minimal
 User errors are trapped by the interface
 Context-dependent help can be provided. The
user’s context is indicated by the current menu
selection
 Concerned with techniques for displaying large
amounts of information
 Visualisation can reveal relationships between
entities and trends in the data
 Possible data visualisations are:
• Weather information collected from a number of sources
• The state of a telephone network as a linked set of nodes
• Chemical plant visualised by showing pressures and
temperatures in a linked set of tanks and pipes
• A model of a molecule displayed in 3 dimensions
• Web pages displayed as a hyperbolic tree
 Data design is the first design activity, which
results in less complex, modular and efficient
program structure.
 The information domain model developed during
analysis phase is transformed into data
structures needed for implementing the
software.
 The data objects, attributes, and relationships
depicted in entity relationship diagrams and the
information stored in data dictionary provide a
base for data design activity.
For specifying and designing efficient data structures, some
principles should be followed. These principles are listed below.
1) The data structures needed for implementing the software as well-as
the operations that can be applied on them should be identified.
2) A data dictionary should be developed to depict how different data
objects interact with each other and what constraints are to be imposed o
the elements of data structure.
3) Stepwise refinement should be used in data design process and detaile
design decisions should be made later in the process.
4) Only those modules that need to access data stored in a data structure
directly should be aware of the representation of the data structure.
5) A library containing the set of useful data
structures along with the operations that can
be performed on them should be
maintained.
6)Language used for developing the system
should support abstract data types.
 The structure of data can be viewed at
three levels, namely, program component
level, application level, and business level.
 At the program component level, the design of
data structures and the algorithms required to
manipulate them is necessary, if high-quality
software is desired.
 At the application level, it is crucial to convert
the data model into a database so that the specific
business objectives of a system could be achieved.
 At the business level, the collection of
information stored in different databases should be
reorganized into data warehouse, which enables
data mining that has an influential impact on the
business.
 Requirements of the software should be
transformed into an architecture that describes
the software's top-level structure and identifies
its components.
 Architectural design (also called system
design), which acts as a preliminary 'blueprint'
from which software can be developed.
 IEEE defines architectural design as 'the process of
defining a collection of hardware and software components
and their interfaces to establish the framework for the
development of a computer system.'
An architectural design performs the following
functions.
1) It defines an abstraction level at which the designers can
specify the functional and performance behaviour of the
system.
2) It acts as a guideline for enhancing the system (when
ever required) by describing those features of the system
that can be modified easily without affecting the system
integrity.
3) It evaluates all top-level designs.
4) It develops and documents top-level design for
the external and internal interfaces.
5) It develops preliminary versions of user
documentation.
6) It defines and documents preliminary test
requirements and the schedule for software
integration.
7) The sources of architectural design are listed
below.
8) Information regarding the application
domain for the software to be developed.
9) Using data-flow diagrams
10) Availability of architectural patterns and
architectural styles.
 Architectural design is of crucial
importance in software engineering during
which the essential requirements like
reliability, cost, and performance are dealt
with.
ARCHITECTURAL DESIGN
REPRESENTATION
Architectural design can be represented using the following
models.
Structural model: Illustrates architecture as an ordered
collection of program components
Dynamic model: Specifies the behavioral aspect of the
software architecture and indicates how the structure or
system configuration changes as the function changes due
to change in the external environment
Process model: Focuses on the design of the
business or technical process, which must be
implemented in the system.
 Functional model: Represents the functional
hierarchy of a system.
 Framework model: Attempts to identify
repeatable architectural design patterns
encountered in similar types of application. This
leads to an increase in the level of abstraction.
 The architectural design process results in an Architectural Design
Document (ADD).
 Architectural design document gives the developers a solution to the
problem stated in the Software Requirements Specification (SRS).
Note that it considers only those requirements in detail that affect
the program structure.
 In addition to ADD, other outputs of the architectural design are
listed below :
1. Various reports including audit report, progress report, and
configuration status accounts report
2) Various plans for detailed design phase,
which include the following
3) Software verification and validation plan.
4) Software configuration management plan.
5) Software quality assurance plan.
6) Software project management plan.
 Architectural styles define a group of interlinked
systems that share structural and semantic
properties.
 In short, the objective of using architectural
styles is to establish a structure for all the
components present in a system.
1. DATA-FLOW ARCHITECTURE
Data-flow architecture is mainly used in the
systems that accept some inputs and transform it
into the desired outputs by applying a series o
transformations.
 Each component, known as filter, transforms the
data and sends this transformed data to other
filters for further processing using the connector,
known as pipe. Most of the times, the data-flow
architecture degenerates a batch sequential
system.
ADVANTAGES ASSOCIATED WITH THE DATA-FLOW
ARCHITECTURE:
 It supports reusability.
 It is maintainable and modifiable.
 It supports concurrent execution.
DISADVANTAGES ASSOCIATED WITH THE DATA-
FLOW ARCHITECTURE:
 It often degenerates to batch sequential system.
It does not provide enough support for applications
requires user interaction.
 It is difficult to synchronize two different but related
streams.
 In object-oriented architectural style, components of a
system encapsulate data and operations, which are
applied to manipulate the data. In this style, components
are represented as objects and they interact with each
other through methods (connectors).
 Two important characteristics:
1) Objects maintain the integrity of the system.
2) An object is not aware of the representation of other
objects.
ADVANTAGES OBJECT-ORIENTED
ARCHITECTURE
 It allows designers to decompose a
problem into a collection of independent
objects.
The implementation detail of objects is
hidden from each other and hence, they can
be changed without affecting other objects.
 One common example of this architectural style is
OSI-ISO (Open Systems Interconnection-International
Organization for Standardization) communication system.
 A data-centered architecture has two distinct
components: a central data structure or data
store (central repository) and a collection of
client software.
 The data store (for example, a database or a file)
represents the current state of the data and the
client software performs several operations like
add, delete, update, etc., on the data stored in
the data store.
ADVANTAGES OF THE DATA-
CENTERED ARCHITECTURE
1) Clients operate independently of one another.
2) Data repository is independent of the clients.
3) It adds scalability (that is, new clients can be
added easily).
4) It supports modifiability.
5) It achieves data integration in component-based
development using blackboard.
Design Model & User Interface Design in Software Engineering
Design Model & User Interface Design in Software Engineering

More Related Content

What's hot

Interface specification
Interface specificationInterface specification
Interface specification
maliksiddique1
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
TharuniDiddekunta
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10koolkampus
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
UMA PARAMESWARI
 
Unit 2
Unit 2Unit 2
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
Benazir Fathima
 
Context model
Context modelContext model
Context model
Ubaid423
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
Rupesh Vaishnav
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factors
NancyBeaulah_R
 
software cost factor
software cost factorsoftware cost factor
software cost factor
Abinaya B
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
shiprashakya2
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
bhadjaashvini1
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering conceptsKomal Singh
 
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour Diagrams
Amr E. Mohamed
 
Component and Deployment Diagram - Brief Overview
Component and Deployment Diagram - Brief OverviewComponent and Deployment Diagram - Brief Overview
Component and Deployment Diagram - Brief Overview
Rajiv Kumar
 
Importance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML DesigningImportance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML Designing
ABHISHEK KUMAR
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
kirupasuchi1996
 
User Interface Design in Software Engineering SE15
User Interface Design in Software Engineering SE15User Interface Design in Software Engineering SE15
User Interface Design in Software Engineering SE15koolkampus
 
Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
kirupasuchi1996
 

What's hot (20)

Interface specification
Interface specificationInterface specification
Interface specification
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Unit 2
Unit 2Unit 2
Unit 2
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
Context model
Context modelContext model
Context model
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Chapter 1 2 - some size factors
Chapter 1   2 - some size factorsChapter 1   2 - some size factors
Chapter 1 2 - some size factors
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering concepts
 
Software design
Software designSoftware design
Software design
 
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour Diagrams
 
Component and Deployment Diagram - Brief Overview
Component and Deployment Diagram - Brief OverviewComponent and Deployment Diagram - Brief Overview
Component and Deployment Diagram - Brief Overview
 
Importance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML DesigningImportance & Principles of Modeling from UML Designing
Importance & Principles of Modeling from UML Designing
 
Designing Techniques in Software Engineering
Designing Techniques in Software EngineeringDesigning Techniques in Software Engineering
Designing Techniques in Software Engineering
 
User Interface Design in Software Engineering SE15
User Interface Design in Software Engineering SE15User Interface Design in Software Engineering SE15
User Interface Design in Software Engineering SE15
 
Language and Processors for Requirements Specification
Language and Processors for Requirements SpecificationLanguage and Processors for Requirements Specification
Language and Processors for Requirements Specification
 

Similar to Design Model & User Interface Design in Software Engineering

Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
taxegap762
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
Bisrat Girma
 
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvfUNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
puttipavan23022023
 
Unit-3.doc
Unit-3.docUnit-3.doc
Unit-3.doc
chitranshidheeraj6
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
VigneshSridhar17
 
Software engineering
Software engineeringSoftware engineering
Software engineering
Stella526835
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
ShwetaGajbhiye12
 
Software engg unit 3
Software engg unit 3 Software engg unit 3
Software engg unit 3
Vivek Kumar Sinha
 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
Priyanka Shetty
 
Software design
Software designSoftware design
Software design
Zulqarnaintayyab
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
shuchi tripathi
 
Design Engineering and Design concepts
Design Engineering and Design conceptsDesign Engineering and Design concepts
Design Engineering and Design concepts
JigyasaAgrawal7
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
Nazir Ahmed
 
Chapter five HCI
Chapter five HCIChapter five HCI
Chapter five HCI
yihunie ayalew
 
User Interface Design,Principles & process
User Interface  Design,Principles & processUser Interface  Design,Principles & process
User Interface Design,Principles & process
Abd-Ur Rehman Saqib
 

Similar to Design Model & User Interface Design in Software Engineering (20)

Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Ch10
Ch10Ch10
Ch10
 
Ch10
Ch10Ch10
Ch10
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvfUNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
 
06 fse design
06 fse design06 fse design
06 fse design
 
Unit-3.doc
Unit-3.docUnit-3.doc
Unit-3.doc
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
Software engg unit 3
Software engg unit 3 Software engg unit 3
Software engg unit 3
 
Slides chapter 9
Slides chapter 9Slides chapter 9
Slides chapter 9
 
Software design
Software designSoftware design
Software design
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design Engineering and Design concepts
Design Engineering and Design conceptsDesign Engineering and Design concepts
Design Engineering and Design concepts
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
Chapter five HCI
Chapter five HCIChapter five HCI
Chapter five HCI
 
User Interface Design,Principles & process
User Interface  Design,Principles & processUser Interface  Design,Principles & process
User Interface Design,Principles & process
 

More from Meghaj Mallick

24 partial-orderings
24 partial-orderings24 partial-orderings
24 partial-orderings
Meghaj Mallick
 
PORTFOLIO BY USING HTML & CSS
PORTFOLIO BY USING HTML & CSSPORTFOLIO BY USING HTML & CSS
PORTFOLIO BY USING HTML & CSS
Meghaj Mallick
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software Testing
Meghaj Mallick
 
Introduction to System Programming
Introduction to System ProgrammingIntroduction to System Programming
Introduction to System Programming
Meghaj Mallick
 
MACRO ASSEBLER
MACRO ASSEBLERMACRO ASSEBLER
MACRO ASSEBLER
Meghaj Mallick
 
Icons, Image & Multimedia
Icons, Image & MultimediaIcons, Image & Multimedia
Icons, Image & Multimedia
Meghaj Mallick
 
Project Tracking & SPC
Project Tracking & SPCProject Tracking & SPC
Project Tracking & SPC
Meghaj Mallick
 
Peephole Optimization
Peephole OptimizationPeephole Optimization
Peephole Optimization
Meghaj Mallick
 
Routing in MANET
Routing in MANETRouting in MANET
Routing in MANET
Meghaj Mallick
 
Macro assembler
 Macro assembler Macro assembler
Macro assembler
Meghaj Mallick
 
Architecture and security in Vanet PPT
Architecture and security in Vanet PPTArchitecture and security in Vanet PPT
Architecture and security in Vanet PPT
Meghaj Mallick
 
Text Mining of Twitter in Data Mining
Text Mining of Twitter in Data MiningText Mining of Twitter in Data Mining
Text Mining of Twitter in Data Mining
Meghaj Mallick
 
DFS & BFS in Computer Algorithm
DFS & BFS in Computer AlgorithmDFS & BFS in Computer Algorithm
DFS & BFS in Computer Algorithm
Meghaj Mallick
 
Software Development Method
Software Development MethodSoftware Development Method
Software Development Method
Meghaj Mallick
 
Secant method in Numerical & Statistical Method
Secant method in Numerical & Statistical MethodSecant method in Numerical & Statistical Method
Secant method in Numerical & Statistical Method
Meghaj Mallick
 
Motivation in Organization
Motivation in OrganizationMotivation in Organization
Motivation in Organization
Meghaj Mallick
 
Communication Skill
Communication SkillCommunication Skill
Communication Skill
Meghaj Mallick
 
Partial-Orderings in Discrete Mathematics
 Partial-Orderings in Discrete Mathematics Partial-Orderings in Discrete Mathematics
Partial-Orderings in Discrete Mathematics
Meghaj Mallick
 
Hashing In Data Structure
Hashing In Data Structure Hashing In Data Structure
Hashing In Data Structure
Meghaj Mallick
 
Complexity Analysis of Recursive Function
Complexity Analysis of Recursive FunctionComplexity Analysis of Recursive Function
Complexity Analysis of Recursive Function
Meghaj Mallick
 

More from Meghaj Mallick (20)

24 partial-orderings
24 partial-orderings24 partial-orderings
24 partial-orderings
 
PORTFOLIO BY USING HTML & CSS
PORTFOLIO BY USING HTML & CSSPORTFOLIO BY USING HTML & CSS
PORTFOLIO BY USING HTML & CSS
 
Introduction to Software Testing
Introduction to Software TestingIntroduction to Software Testing
Introduction to Software Testing
 
Introduction to System Programming
Introduction to System ProgrammingIntroduction to System Programming
Introduction to System Programming
 
MACRO ASSEBLER
MACRO ASSEBLERMACRO ASSEBLER
MACRO ASSEBLER
 
Icons, Image & Multimedia
Icons, Image & MultimediaIcons, Image & Multimedia
Icons, Image & Multimedia
 
Project Tracking & SPC
Project Tracking & SPCProject Tracking & SPC
Project Tracking & SPC
 
Peephole Optimization
Peephole OptimizationPeephole Optimization
Peephole Optimization
 
Routing in MANET
Routing in MANETRouting in MANET
Routing in MANET
 
Macro assembler
 Macro assembler Macro assembler
Macro assembler
 
Architecture and security in Vanet PPT
Architecture and security in Vanet PPTArchitecture and security in Vanet PPT
Architecture and security in Vanet PPT
 
Text Mining of Twitter in Data Mining
Text Mining of Twitter in Data MiningText Mining of Twitter in Data Mining
Text Mining of Twitter in Data Mining
 
DFS & BFS in Computer Algorithm
DFS & BFS in Computer AlgorithmDFS & BFS in Computer Algorithm
DFS & BFS in Computer Algorithm
 
Software Development Method
Software Development MethodSoftware Development Method
Software Development Method
 
Secant method in Numerical & Statistical Method
Secant method in Numerical & Statistical MethodSecant method in Numerical & Statistical Method
Secant method in Numerical & Statistical Method
 
Motivation in Organization
Motivation in OrganizationMotivation in Organization
Motivation in Organization
 
Communication Skill
Communication SkillCommunication Skill
Communication Skill
 
Partial-Orderings in Discrete Mathematics
 Partial-Orderings in Discrete Mathematics Partial-Orderings in Discrete Mathematics
Partial-Orderings in Discrete Mathematics
 
Hashing In Data Structure
Hashing In Data Structure Hashing In Data Structure
Hashing In Data Structure
 
Complexity Analysis of Recursive Function
Complexity Analysis of Recursive FunctionComplexity Analysis of Recursive Function
Complexity Analysis of Recursive Function
 

Recently uploaded

Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
khadija278284
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Sebastiano Panichella
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
OECD Directorate for Financial and Enterprise Affairs
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Matjaž Lipuš
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Orkestra
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
Sebastiano Panichella
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
Howard Spence
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
IP ServerOne
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
Vladimir Samoylov
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
Faculty of Medicine And Health Sciences
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
OWASP Beja
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
Access Innovations, Inc.
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Sebastiano Panichella
 

Recently uploaded (13)

Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdfBonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
Bonzo subscription_hjjjjjjjj5hhhhhhh_2024.pdf
 
Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...Announcement of 18th IEEE International Conference on Software Testing, Verif...
Announcement of 18th IEEE International Conference on Software Testing, Verif...
 
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
Competition and Regulation in Professional Services – KLEINER – June 2024 OEC...
 
Bitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXOBitcoin Lightning wallet and tic-tac-toe game XOXO
Bitcoin Lightning wallet and tic-tac-toe game XOXO
 
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
Sharpen existing tools or get a new toolbox? Contemporary cluster initiatives...
 
International Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software TestingInternational Workshop on Artificial Intelligence in Software Testing
International Workshop on Artificial Intelligence in Software Testing
 
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptxsomanykidsbutsofewfathers-140705000023-phpapp02.pptx
somanykidsbutsofewfathers-140705000023-phpapp02.pptx
 
Acorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutesAcorn Recovery: Restore IT infra within minutes
Acorn Recovery: Restore IT infra within minutes
 
Getting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control TowerGetting started with Amazon Bedrock Studio and Control Tower
Getting started with Amazon Bedrock Studio and Control Tower
 
Obesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditionsObesity causes and management and associated medical conditions
Obesity causes and management and associated medical conditions
 
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
0x01 - Newton's Third Law:  Static vs. Dynamic Abusers0x01 - Newton's Third Law:  Static vs. Dynamic Abusers
0x01 - Newton's Third Law: Static vs. Dynamic Abusers
 
Eureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 PresentationEureka, I found it! - Special Libraries Association 2021 Presentation
Eureka, I found it! - Special Libraries Association 2021 Presentation
 
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...Doctoral Symposium at the 17th IEEE International Conference on Software Test...
Doctoral Symposium at the 17th IEEE International Conference on Software Test...
 

Design Model & User Interface Design in Software Engineering

  • 1. TOPIC : DESIGN MODEL PRESENTED BY: SAJAN SINGH (MCA/25019/18) MEGHAJ KUMAR MALLICK (MCA/25017/18)
  • 2.  Software design is an iterative process through which requirements are translated into a blueprintfor constructing the software.  Initially, the blueprint depicts a holistic view of software i.e. the design is represented at a high- level of abstraction.
  • 3.
  • 4. GOALS OF THE DESIGN PROCESS: 1) The design must implement all of the explicit requirements contained in the analysis model and it must accommodate all of the implicit requirements desired by the customer. 2) The design must be a readable, understandable guide for those who generate code and for those who test and subsequently support the software. 3) The design should address the data, functional and behavioral domains from an implementation perspective
  • 5.  Data Design : ◦ Transforms information domain model into data structures required to implement software  Architectural Design : ◦ Defines relationship among the major structural elements of a software  Interface Design : ◦ Describes how the software communicates with systems that interact with it and with humans.  Procedural Design/ Component-level design : ◦ Transforms structural elements of the architecture into a procedural description of software components. DESIGN MODEL
  • 6.
  • 7.  A design methodology combines a systematic set of rules for creating a program design with diagramming tools needed to represent it.  Procedural design is best used to model programs that have an obvious flow of data from input to output. It represents the architecture of a program as a set of interacting processes that pass data from one to another.
  • 8.  There are two component for design tool are following:  Data Flow Diagram: Adataflowdiagram(orDFD)isatooltohelpyoudiscoveranddocumentthe program’smajor processes.Thefollowingtableshowsthesymbolsusedandwhat each represents.  Structure Chart : A structure chart is a tool to help you derive and document the program’s architecture. It is similar to an organization chart
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. USER INTERFACE DESIGN  Designing effective interfaces for software systems
  • 16.  To suggest some general design principles for user interface design  To explain different interaction styles  To introduce styles of information presentation  To describe the user support which should be built-in to user interfaces  To introduce usability attributes and system approaches to system evaluation
  • 17.  System users often judge a system by its interface rather than its functionality  A poorly designed interface can cause a user to make catastrophic errors  Poor user interface design is the reason why so many software systems are never used
  • 18.  Most users of business systems interact with these systems through graphical interfaces although, in some cases, legacy text-based interfaces are still used
  • 19. Characteristic Description Windows Multiple windows allow different information to be displayed simultaneously on the user’s screen. Icons Icons different types of information. On some systems, icons represent files; on others, icons represent processes. Menus Commands are selected from a menu rather than typed in a command language. Pointing A pointing device such as a mouse is used for selecting choices from a menu or indicating items of interest in a window. Graphics Graphical elements can be mixed with text on the same display.
  • 20.  They are easy to learn and use. • Users without experience can learn to use the system quickly.  The user may switch quickly from one task to another and can interact with several different applications. • Information remains visible in its own window when attention is switched.  Fast, full-screen interaction is possible with immediate access to anywhere on the screen
  • 21.  The aim of this chapter is to sensitise software engineers to key issues underlying the design rather than the implementation of user interfaces  User-centred design is an approach to UI design where the needs of the user are paramount and where the user is involved in the design process  UI design always involves the development of prototype interfaces
  • 22. Executable prototype Design prototype Produce paper- based design prototype Produce dynamic design prototype Evaluate design with end-users Implement final user interface Evaluate design with end-users Analyse and understand user activities
  • 23.  UI design must take account of the needs, experience and capabilities of the system users  Designers should be aware of people’s physical and mental limitations (e.g. limited short-term memory) and should recognise that people make mistakes  UI design principles underlie interface designs although not all principles are applicable to all designs
  • 24. DescriptionPrinciple User familiarity Consistency The interface should use terms and concepts which are drawn from the experience of the people who will make most use of the system. The interface should be consistent in that, wherever possible, comparable operations should be activated in the same way. Users should never be surprised by the behaviour of a system. Minimal surprise Recoverability The interface should include mechanisms to allow users to recover from errors. User guidance User diversity The interface should provide meaningful feedback when errors occur and provide context-sensitive user help facilities. The interface should provide appropriate interaction facilities for different types of system user.
  • 25.  Users feel in control of the computer and are less likely to be intimidated by it  User learning time is relatively short  Users get immediate feedback on their actions so mistakes can be quickly detected and corrected
  • 26.  Users need not remember command names as they are always presented with a list of valid commands  Typing effort is minimal  User errors are trapped by the interface  Context-dependent help can be provided. The user’s context is indicated by the current menu selection
  • 27.  Concerned with techniques for displaying large amounts of information  Visualisation can reveal relationships between entities and trends in the data  Possible data visualisations are: • Weather information collected from a number of sources • The state of a telephone network as a linked set of nodes • Chemical plant visualised by showing pressures and temperatures in a linked set of tanks and pipes • A model of a molecule displayed in 3 dimensions • Web pages displayed as a hyperbolic tree
  • 28.
  • 29.  Data design is the first design activity, which results in less complex, modular and efficient program structure.  The information domain model developed during analysis phase is transformed into data structures needed for implementing the software.  The data objects, attributes, and relationships depicted in entity relationship diagrams and the information stored in data dictionary provide a base for data design activity.
  • 30. For specifying and designing efficient data structures, some principles should be followed. These principles are listed below. 1) The data structures needed for implementing the software as well-as the operations that can be applied on them should be identified. 2) A data dictionary should be developed to depict how different data objects interact with each other and what constraints are to be imposed o the elements of data structure. 3) Stepwise refinement should be used in data design process and detaile design decisions should be made later in the process. 4) Only those modules that need to access data stored in a data structure directly should be aware of the representation of the data structure.
  • 31. 5) A library containing the set of useful data structures along with the operations that can be performed on them should be maintained. 6)Language used for developing the system should support abstract data types.  The structure of data can be viewed at three levels, namely, program component level, application level, and business level.
  • 32.  At the program component level, the design of data structures and the algorithms required to manipulate them is necessary, if high-quality software is desired.  At the application level, it is crucial to convert the data model into a database so that the specific business objectives of a system could be achieved.  At the business level, the collection of information stored in different databases should be reorganized into data warehouse, which enables data mining that has an influential impact on the business.
  • 33.  Requirements of the software should be transformed into an architecture that describes the software's top-level structure and identifies its components.  Architectural design (also called system design), which acts as a preliminary 'blueprint' from which software can be developed.
  • 34.  IEEE defines architectural design as 'the process of defining a collection of hardware and software components and their interfaces to establish the framework for the development of a computer system.' An architectural design performs the following functions. 1) It defines an abstraction level at which the designers can specify the functional and performance behaviour of the system. 2) It acts as a guideline for enhancing the system (when ever required) by describing those features of the system that can be modified easily without affecting the system integrity. 3) It evaluates all top-level designs.
  • 35. 4) It develops and documents top-level design for the external and internal interfaces. 5) It develops preliminary versions of user documentation. 6) It defines and documents preliminary test requirements and the schedule for software integration. 7) The sources of architectural design are listed below.
  • 36. 8) Information regarding the application domain for the software to be developed. 9) Using data-flow diagrams 10) Availability of architectural patterns and architectural styles.  Architectural design is of crucial importance in software engineering during which the essential requirements like reliability, cost, and performance are dealt with.
  • 37. ARCHITECTURAL DESIGN REPRESENTATION Architectural design can be represented using the following models. Structural model: Illustrates architecture as an ordered collection of program components Dynamic model: Specifies the behavioral aspect of the software architecture and indicates how the structure or system configuration changes as the function changes due to change in the external environment
  • 38. Process model: Focuses on the design of the business or technical process, which must be implemented in the system.  Functional model: Represents the functional hierarchy of a system.  Framework model: Attempts to identify repeatable architectural design patterns encountered in similar types of application. This leads to an increase in the level of abstraction.
  • 39.  The architectural design process results in an Architectural Design Document (ADD).  Architectural design document gives the developers a solution to the problem stated in the Software Requirements Specification (SRS). Note that it considers only those requirements in detail that affect the program structure.  In addition to ADD, other outputs of the architectural design are listed below : 1. Various reports including audit report, progress report, and configuration status accounts report
  • 40. 2) Various plans for detailed design phase, which include the following 3) Software verification and validation plan. 4) Software configuration management plan. 5) Software quality assurance plan. 6) Software project management plan.
  • 41.  Architectural styles define a group of interlinked systems that share structural and semantic properties.  In short, the objective of using architectural styles is to establish a structure for all the components present in a system.
  • 42. 1. DATA-FLOW ARCHITECTURE Data-flow architecture is mainly used in the systems that accept some inputs and transform it into the desired outputs by applying a series o transformations.  Each component, known as filter, transforms the data and sends this transformed data to other filters for further processing using the connector, known as pipe. Most of the times, the data-flow architecture degenerates a batch sequential system.
  • 43.
  • 44. ADVANTAGES ASSOCIATED WITH THE DATA-FLOW ARCHITECTURE:  It supports reusability.  It is maintainable and modifiable.  It supports concurrent execution. DISADVANTAGES ASSOCIATED WITH THE DATA- FLOW ARCHITECTURE:  It often degenerates to batch sequential system. It does not provide enough support for applications requires user interaction.  It is difficult to synchronize two different but related streams.
  • 45.  In object-oriented architectural style, components of a system encapsulate data and operations, which are applied to manipulate the data. In this style, components are represented as objects and they interact with each other through methods (connectors).  Two important characteristics: 1) Objects maintain the integrity of the system. 2) An object is not aware of the representation of other objects.
  • 46. ADVANTAGES OBJECT-ORIENTED ARCHITECTURE  It allows designers to decompose a problem into a collection of independent objects. The implementation detail of objects is hidden from each other and hence, they can be changed without affecting other objects.
  • 47.  One common example of this architectural style is OSI-ISO (Open Systems Interconnection-International Organization for Standardization) communication system.
  • 48.  A data-centered architecture has two distinct components: a central data structure or data store (central repository) and a collection of client software.  The data store (for example, a database or a file) represents the current state of the data and the client software performs several operations like add, delete, update, etc., on the data stored in the data store.
  • 49. ADVANTAGES OF THE DATA- CENTERED ARCHITECTURE 1) Clients operate independently of one another. 2) Data repository is independent of the clients. 3) It adds scalability (that is, new clients can be added easily). 4) It supports modifiability. 5) It achieves data integration in component-based development using blackboard.