Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Understanding Software Paradigms: Choosing the Right Technique for Complex Systems - Prof., Study notes of Computer Science

An introduction to software paradigms, their importance in software development, and their relationship to software development characteristics and crises. It also discusses the concept of a paradigm, its significance in programming, and its classification into various types such as algorithmic, analysis-synthesis-evaluation, formal design, artificial intelligence, and theory of evolutionary design. The document also touches upon the importance of component-based architecture and the existence of numerous programming languages and their paradigms.

Typology: Study notes

Pre 2010

Uploaded on 08/19/2009

koofers-user-9u5-1
koofers-user-9u5-1 🇺🇸

10 documents

1 / 7

Toggle sidebar

Related documents


Partial preview of the text

Download Understanding Software Paradigms: Choosing the Right Technique for Complex Systems - Prof. and more Study notes Computer Science in PDF only on Docsity! Abdelghani Bellaachia, Advanced Software Paradigms Page: 1 Introduction Why software paradigms? • Be able to choose the right software technique right from the beginning. • Ability to design complex systems. • The attention is now toward software paradigms since programming languages are becoming more mature. Software Development Characteristics: • Software is "soft"; • Complexity • Human intensive Software Crisis • Buisnessweek 1999: “ Glitches cost billions of dollars and jeopardize human lives. How can we kill the bugs?” Abdelghani Bellaachia, Advanced Software Paradigms Page: 2 • Palm Inc.: The Palm OS 3.5, introduced in February 2000, has a memory leak problem. A new release Palm OS 3.5.2 is released. • June 10 of 1999 the software industry would love to forget: Auction site eBay suffered a 22- hour system crash--the longest, but not last, in a series of crippling software-related outages. • Millions of dollars in shares were lost today when a software problem caused the trading computers at the New York Stock Exchange to crash. Traders are criticizing the Exchange's decision to install a new trading application, Microsoft Transactions 98. What is a paradigm? • The word paradigm (from the Greek word which means example) is commonly used to refer to a category of entities sharing a common characteristic. • A paradigm is a way of thinking about problems and their solutions, and an approach to using computers to implement those solutions. • Robert Floyd Abdelghani Bellaachia, Advanced Software Paradigms Page: 5 Software Life Cycle Software paradigms: • The formation of a paradigm is a sign of maturity for a given science. Software Paradigms: Classification • According to Brian Warboys: o The Algorithmic Paradigm (AP) o The Analysis-Synthesis-Evaluation Paradigm (ASE) (e.g., Waterfall Model) o The Formal Design Paradigm (FD) o The Artificial Intelligence Paradigm (AI) o The Theory of Evolutionary Design Paradigm (TED) • Component-based Architecture: o Design patterns o Frameworks Abdelghani Bellaachia, Advanced Software Paradigms Page: 6 Why so many programming languages? • Programming Languages paradigms: • A common definition of a programming paradigm: is that of a ``model or approach in solving a problem'', or the system architecture encompassing definition of ``way of thinking about computer systems''. Fortran Algol-60 Cobol Lisp Simula PL/1 Pascal Algol-68 Prolog ML C Smalltalk Ada Java C++ Abdelghani Bellaachia, Advanced Software Paradigms Page: 7 • Imperative languages, • Concurrent languages, • Logic languages, • Functional languages, • Object-oriented languages.
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved