Department of Industrial and
Information Technology
DCIT 26: Application Development and
Emerging Technologies
SOFTWARE
PARADIGMS
Prepared:
RICHARD L. HERNANDEZ
Department of Industrial and
Information Technology
SOFTWARE PARADIGMS
Lesson Objectives:
At the end of this lesson, you will be able to:
1. Define the software paradigms
2. Identify the characteristics of a good software
3. Identify examples and use case scenarios
Department of Industrial and
Information Technology
Software paradigms
• Software paradigms refer to the methods and steps, which are
taken while designing the software. There are many methods
proposed and are in work today, but we need to see where in the
software engineering these paradigms stand.
• These can be combined into various categories, though each of
them is contained in one another.
Department of Industrial and
Information Technology
Software paradigms
• Programming paradigm is a subset of Software design paradigm
which is further a subset of Software development paradigm
Department of Industrial and
Information Technology
Software paradigms
• This Paradigm is known as software engineering paradigms where
all the engineering concepts pertaining to the development of
software are applied. It includes various researches and
requirement gathering which helps the software product to build. It
consists of the following:
Requirement gathering
Software design
Programming
Department of Industrial and
Information Technology
Software design paradigms
• This paradigm is a part of Software Development and includes the
following:
Design
Maintenance
Programming
Department of Industrial and
Information Technology
Programming paradigms
• This paradigm is related closely to programming aspect of
software development. This includes -
•
Coding
Testing
Integration
Department of Industrial and
Information Technology
Characteristics of a good software
• A software product can be judged by what it offers and how well it
can be used. This software must satisfy on the following grounds:
Operational
Transitional
Maintenance
Department of Industrial and
Information Technology
Characteristics of a good software
• A software product can be judged by what it offers and how well it
can be used. This software must satisfy on the following grounds:
Operational
Transitional
Maintenance
Department of Industrial and
Information Technology
Operational
• This tells us how well software works in operations. It can be
measured on:
Budget – cost
Usability - the degree of ease with which products such as software
and Web applications can be used to achieve required goals
effectively and efficiently.
Department of Industrial and
Information Technology
Operational
Efficiency - is defined as a level of performance that uses the
lowest amount of inputs to create the greatest amount of outputs.
Correctness - adherence to the specifications that determine how
users can interact with the software and how the software should
behave when it is used correctly.
Department of Industrial and
Information Technology
Operational
Functionality - is the ability of the system to do the work for which it
was intended.
Dependability - is the ability to provide services that can defensibly
be trusted within a time-period.
Security – secured system
Safety
Department of Industrial and
Information Technology
Transitional
This aspect is important when the software is moved from one
platform to another:
Portability - he usability of the same software in different
environments
Interoperability - the ability of computer systems or software to
exchange and make use of information
Department of Industrial and
Information Technology
Transitional
Reusability - the use of existing assets in some form within the
software product development process; these assets are products
and by-products of the software development life cycle and include
code, software components, test suites, designs and
documentation
Adaptability - an open system that is able to fit its behavior
according to changes in its environment or in parts of the system
itself
Department of Industrial and
Information Technology
Maintenance
This aspect briefs about how well a software has the capabilities to
maintain itself in the ever-changing environment:
Modularity the extent to which a software/Web application may be
divided into smaller modules.
Maintainability - is defined as the degree to which an application is
understood, repaired, or enhanced.
Department of Industrial and
Information Technology
Maintenance
Flexibility - it normally refers to the ability for the solution to adapt to
possible or future changes in its requirements.
Scalability - is the ability of a program to scale.
Department of Industrial and
Information Technology
THANK YOU!