SlideShare a Scribd company logo
1 of 14
Download to read offline
CopyrightCopyright ©© 2007 Mohammad2007 Mohammad AnasAnas RamadanRamadan
All rights reservedAll rights reserved
PrinciplePrinciple--Driven SoftwareDriven Software
Is Software Customer Always Right?Is Software Customer Always Right?
InstructorInstructor
Dr.Dr. AsimAsim ElEl--SheikhSheikh
Presented byPresented by
Mohammad Anas RamadanMohammad Anas Ramadan
The Arab Academy of Banking an Financial SciencesThe Arab Academy of Banking an Financial Sciences
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
IntroductionIntroduction
●● An overviewAn overview
●● A Commercial PerspectiveA Commercial Perspective
Microsoft WindowsMicrosoft Windows
WindowsWindows--based Applicationsbased Applications
●● An Open PerspectiveAn Open Perspective
ExamplesExamples
●● ConclusionConclusion
●● ReferencesReferences
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
Some features that I have so far chosenSome features that I have so far chosen
not to implementnot to implement are:are:
private messagingprivate messaging
file attachmentsfile attachments
PollsPolls
linking to offlinking to off--site avatarssite avatars
……
““I probablyI probably won't be working onwon't be working on
themthem::
Tabbed multiple document interfaceTabbed multiple document interface
Split document viewSplit document view
…”…”
ScopeScope
““I wanted a package thatI wanted a package that
was fast.was fast.
had a simple layouthad a simple layout…”…”
●●The original Notepad shipped withThe original Notepad shipped with
Windows is probably the handiestWindows is probably the handiest
program of all times, small, fast,program of all times, small, fast,
without frills!without frills!
●●Notepad2 tries to follow thisNotepad2 tries to follow this
principleprinciple, it's a small, fast and free, it's a small, fast and free……
PrinciplePrinciple
PunBBPunBBNotepad2Notepad2
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
The Commercial PerspectiveThe Commercial Perspective
●● Can we claim that Microsoft's applications areCan we claim that Microsoft's applications are
principleprinciple--driven, rather than userdriven, rather than user--satisfactionsatisfaction
driven?driven?
●● Commercial software, just like any commercialCommercial software, just like any commercial
products, are customerproducts, are customer--satisfactionsatisfaction--driven. Anddriven. And
that's what happening in all commercialthat's what happening in all commercial
WindowsWindows--based applications, but not in Windowsbased applications, but not in Windows
itself.itself.
●● Why?Why?
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
The Commercial PerspectiveThe Commercial Perspective cont.cont.
●● Because Windows is meant to be anBecause Windows is meant to be an
infrastructure for these applications, andinfrastructure for these applications, and
any functional improvements in thisany functional improvements in this
infrastructure can hurt hostedinfrastructure can hurt hosted--software'ssoftware's
functional role, and thus, their competitivefunctional role, and thus, their competitive
existence in market! So? there's no seriousexistence in market! So? there's no serious
chance for functional integration inchance for functional integration in
Windows.Windows.
●● And that's why Notepad is still like this!And that's why Notepad is still like this!
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
WindowsWindows
PrinciplePrinciple--driven softwaredriven software
Works as aWorks as a Limited InfrastructureLimited Infrastructure forfor
software hosted on it.software hosted on it.
●● Microsoft can't add everything in Windows:Microsoft can't add everything in Windows:
Windows Media Player & EUWindows Media Player & EU
AntivirusAntivirus
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
The Open PerspectiveThe Open Perspective
●● A sophisticated software designer canA sophisticated software designer can
provide far more than what user couldprovide far more than what user could
imagine. He or she can offer him or herimagine. He or she can offer him or her
capabilities and functions user wouldn'tcapabilities and functions user wouldn't
imagine before.imagine before.
●● It comes from:It comes from:
Tacit RequirementsTacit Requirements
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
ExampleExample--1:1: BiDiBiDi
●● As an example, I wouldn't imagine that it could be possibleAs an example, I wouldn't imagine that it could be possible
to show a bidirectional text in one plaintext file, so I didn'tto show a bidirectional text in one plaintext file, so I didn't
even ask myself if there's a solution for it or not! But when Ieven ask myself if there's a solution for it or not! But when I
saw it for the first time in a real software, which wassaw it for the first time in a real software, which was GEditGEdit,,
I was very grateful to open source community for theirI was very grateful to open source community for their
unexpected help and solution!unexpected help and solution!
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
ExampleExample--2: Find toolbar2: Find toolbar
●● Another example was the approach of showingAnother example was the approach of showing
(Find) function in Adobe Acrobat 7.0 and(Find) function in Adobe Acrobat 7.0 and FireFoxFireFox..
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
The Open PerspectiveThe Open Perspective cont.cont.
●● So, unlike commercial software, that areSo, unlike commercial software, that are
necessarily user'snecessarily user's--satisfactionsatisfaction--driven,driven,
●● Open source software are principleOpen source software are principle--driven.driven.
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
Open SystemsOpen Systems
PrinciplePrinciple--driven softwaredriven software
●● Whatever the principles listed by theWhatever the principles listed by the
software developer, Itsoftware developer, It’’s, at the end of thes, at the end of the
day, about:day, about:
Realizing TheRealizing The Functional ScopeFunctional Scope of theof the
software as a component has to integratesoftware as a component has to integrate
with other components inwith other components in
an open communityan open community
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
ConclusionConclusion
FOSMFOSM -- Freedom/Objective Software MatrixFreedom/Objective Software Matrix
--Function raceFunction raceWindowsWindows--basedbased
ApplicationsApplications
Well identifiedWell identified
componentscomponents
--Free/Open SourceFree/Open Source
SoftwareSoftware
An infrastructureAn infrastructure--Microsoft WindowsMicrosoft Windows
PrinciplePrinciple--drivendrivenUserUser--satisfactionsatisfaction--drivendriven
CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan
All rights reservedAll rights reserved
ReferencesReferences
●● PunBBPunBB
http://www.punbb.org/about.phphttp://www.punbb.org/about.php
●● Notepad2Notepad2
http://www.floshttp://www.flos--freeware.ch/np2faq.htmlfreeware.ch/np2faq.html
●● Arabian LinuxArabian Linux
http://distrowatch.com/table.php?distribution=arabianhttp://distrowatch.com/table.php?distribution=arabian
CopyrightCopyright ©© 2007 Mohammad2007 Mohammad AnasAnas RamadanRamadan
All rights reservedAll rights reserved
TThanks forhanks for LListeningistening!!

More Related Content

Similar to Principle - Driven Software

Good Design is Good Business: Business Design with RSA and SA
Good Design is Good Business: Business Design with RSA and SAGood Design is Good Business: Business Design with RSA and SA
Good Design is Good Business: Business Design with RSA and SARoger Snook
 
Linux vs. Windows
Linux vs. WindowsLinux vs. Windows
Linux vs. WindowsAnas R.
 
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpaces
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpacesGPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpaces
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpacesAmazon Web Services
 
Android's security architecture
Android's security architectureAndroid's security architecture
Android's security architectureOfer Rivlin, CISSP
 
Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010joaogoncalves
 
XPages is Workflow's new best friend
XPages is Workflow's new best friendXPages is Workflow's new best friend
XPages is Workflow's new best friendStephan H. Wissel
 
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialLotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialRyan Baxter
 
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)Faichi Solutions
 
My Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to PlatformsMy Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to PlatformsVMware Tanzu
 
OpenOffice, Open Business
OpenOffice, Open BusinessOpenOffice, Open Business
OpenOffice, Open Businessimacat .
 
Performance and Memory Tuning - Part I - Transcript.pdf
Performance and Memory Tuning - Part I - Transcript.pdfPerformance and Memory Tuning - Part I - Transcript.pdf
Performance and Memory Tuning - Part I - Transcript.pdfShaiAlmog1
 
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...Software AG
 
Max flash based code quality is there a canary in your coal mine-
Max  flash based code quality  is there a canary in your coal mine-Max  flash based code quality  is there a canary in your coal mine-
Max flash based code quality is there a canary in your coal mine-Xavier Agnetti
 
Business management application
Business management applicationBusiness management application
Business management applicationPritam Tirpude
 
SE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGSE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGAbrar ali
 
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
A Holistic View on SAP Security Why Securing Production Systems Is Not EnoughOnapsis Inc.
 
Online gas booking project in java
Online gas booking project in javaOnline gas booking project in java
Online gas booking project in javas4al_com
 
SAP Systems in the Cloud (Oct 2010)
SAP Systems in the Cloud (Oct 2010)SAP Systems in the Cloud (Oct 2010)
SAP Systems in the Cloud (Oct 2010)Frank Stienhans
 
Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Ivo Jansch
 

Similar to Principle - Driven Software (20)

Good Design is Good Business: Business Design with RSA and SA
Good Design is Good Business: Business Design with RSA and SAGood Design is Good Business: Business Design with RSA and SA
Good Design is Good Business: Business Design with RSA and SA
 
Linux vs. Windows
Linux vs. WindowsLinux vs. Windows
Linux vs. Windows
 
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpaces
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpacesGPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpaces
GPSTEC316_GPS-Image Management Best Practices for Amazon WorkSpaces
 
Android's security architecture
Android's security architectureAndroid's security architecture
Android's security architecture
 
CAJ-008 Robin Goldsmith
CAJ-008 Robin GoldsmithCAJ-008 Robin Goldsmith
CAJ-008 Robin Goldsmith
 
Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010Ria Event Lisbon Jan 2010
Ria Event Lisbon Jan 2010
 
XPages is Workflow's new best friend
XPages is Workflow's new best friendXPages is Workflow's new best friend
XPages is Workflow's new best friend
 
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialLotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
 
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
 
My Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to PlatformsMy Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to Platforms
 
OpenOffice, Open Business
OpenOffice, Open BusinessOpenOffice, Open Business
OpenOffice, Open Business
 
Performance and Memory Tuning - Part I - Transcript.pdf
Performance and Memory Tuning - Part I - Transcript.pdfPerformance and Memory Tuning - Part I - Transcript.pdf
Performance and Memory Tuning - Part I - Transcript.pdf
 
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...
IW13 Keynote, Wolfram Jost—Innovations for the Digital Enterprise: The Digita...
 
Max flash based code quality is there a canary in your coal mine-
Max  flash based code quality  is there a canary in your coal mine-Max  flash based code quality  is there a canary in your coal mine-
Max flash based code quality is there a canary in your coal mine-
 
Business management application
Business management applicationBusiness management application
Business management application
 
SE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERINGSE CHAPTER 1 SOFTWARE ENGINEERING
SE CHAPTER 1 SOFTWARE ENGINEERING
 
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough 	A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
A Holistic View on SAP Security Why Securing Production Systems Is Not Enough
 
Online gas booking project in java
Online gas booking project in javaOnline gas booking project in java
Online gas booking project in java
 
SAP Systems in the Cloud (Oct 2010)
SAP Systems in the Cloud (Oct 2010)SAP Systems in the Cloud (Oct 2010)
SAP Systems in the Cloud (Oct 2010)
 
Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)
 

More from Anas R.

Databased Software Engineering
Databased Software EngineeringDatabased Software Engineering
Databased Software EngineeringAnas R.
 
Icon Standardization for Web Applications
Icon Standardization for Web ApplicationsIcon Standardization for Web Applications
Icon Standardization for Web ApplicationsAnas R.
 
بين المصادر المفتوحة والبرمجيات المغلقة
 بين المصادر المفتوحة والبرمجيات المغلقة بين المصادر المفتوحة والبرمجيات المغلقة
بين المصادر المفتوحة والبرمجيات المغلقةAnas R.
 
النمذجة الأولية Software Prototyping
النمذجة الأولية Software Prototypingالنمذجة الأولية Software Prototyping
النمذجة الأولية Software PrototypingAnas R.
 
Database File System
Database File SystemDatabase File System
Database File SystemAnas R.
 
GNU Dictionaries: The License and The Collaboration System
GNU Dictionaries: The License and The Collaboration SystemGNU Dictionaries: The License and The Collaboration System
GNU Dictionaries: The License and The Collaboration SystemAnas R.
 

More from Anas R. (6)

Databased Software Engineering
Databased Software EngineeringDatabased Software Engineering
Databased Software Engineering
 
Icon Standardization for Web Applications
Icon Standardization for Web ApplicationsIcon Standardization for Web Applications
Icon Standardization for Web Applications
 
بين المصادر المفتوحة والبرمجيات المغلقة
 بين المصادر المفتوحة والبرمجيات المغلقة بين المصادر المفتوحة والبرمجيات المغلقة
بين المصادر المفتوحة والبرمجيات المغلقة
 
النمذجة الأولية Software Prototyping
النمذجة الأولية Software Prototypingالنمذجة الأولية Software Prototyping
النمذجة الأولية Software Prototyping
 
Database File System
Database File SystemDatabase File System
Database File System
 
GNU Dictionaries: The License and The Collaboration System
GNU Dictionaries: The License and The Collaboration SystemGNU Dictionaries: The License and The Collaboration System
GNU Dictionaries: The License and The Collaboration System
 

Recently uploaded

%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 

Recently uploaded (20)

%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 

Principle - Driven Software

  • 1. CopyrightCopyright ©© 2007 Mohammad2007 Mohammad AnasAnas RamadanRamadan All rights reservedAll rights reserved PrinciplePrinciple--Driven SoftwareDriven Software Is Software Customer Always Right?Is Software Customer Always Right? InstructorInstructor Dr.Dr. AsimAsim ElEl--SheikhSheikh Presented byPresented by Mohammad Anas RamadanMohammad Anas Ramadan The Arab Academy of Banking an Financial SciencesThe Arab Academy of Banking an Financial Sciences
  • 2. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved IntroductionIntroduction ●● An overviewAn overview ●● A Commercial PerspectiveA Commercial Perspective Microsoft WindowsMicrosoft Windows WindowsWindows--based Applicationsbased Applications ●● An Open PerspectiveAn Open Perspective ExamplesExamples ●● ConclusionConclusion ●● ReferencesReferences
  • 3. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved Some features that I have so far chosenSome features that I have so far chosen not to implementnot to implement are:are: private messagingprivate messaging file attachmentsfile attachments PollsPolls linking to offlinking to off--site avatarssite avatars …… ““I probablyI probably won't be working onwon't be working on themthem:: Tabbed multiple document interfaceTabbed multiple document interface Split document viewSplit document view …”…” ScopeScope ““I wanted a package thatI wanted a package that was fast.was fast. had a simple layouthad a simple layout…”…” ●●The original Notepad shipped withThe original Notepad shipped with Windows is probably the handiestWindows is probably the handiest program of all times, small, fast,program of all times, small, fast, without frills!without frills! ●●Notepad2 tries to follow thisNotepad2 tries to follow this principleprinciple, it's a small, fast and free, it's a small, fast and free…… PrinciplePrinciple PunBBPunBBNotepad2Notepad2
  • 4. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved The Commercial PerspectiveThe Commercial Perspective ●● Can we claim that Microsoft's applications areCan we claim that Microsoft's applications are principleprinciple--driven, rather than userdriven, rather than user--satisfactionsatisfaction driven?driven? ●● Commercial software, just like any commercialCommercial software, just like any commercial products, are customerproducts, are customer--satisfactionsatisfaction--driven. Anddriven. And that's what happening in all commercialthat's what happening in all commercial WindowsWindows--based applications, but not in Windowsbased applications, but not in Windows itself.itself. ●● Why?Why?
  • 5. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved The Commercial PerspectiveThe Commercial Perspective cont.cont. ●● Because Windows is meant to be anBecause Windows is meant to be an infrastructure for these applications, andinfrastructure for these applications, and any functional improvements in thisany functional improvements in this infrastructure can hurt hostedinfrastructure can hurt hosted--software'ssoftware's functional role, and thus, their competitivefunctional role, and thus, their competitive existence in market! So? there's no seriousexistence in market! So? there's no serious chance for functional integration inchance for functional integration in Windows.Windows. ●● And that's why Notepad is still like this!And that's why Notepad is still like this!
  • 6. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved WindowsWindows PrinciplePrinciple--driven softwaredriven software Works as aWorks as a Limited InfrastructureLimited Infrastructure forfor software hosted on it.software hosted on it. ●● Microsoft can't add everything in Windows:Microsoft can't add everything in Windows: Windows Media Player & EUWindows Media Player & EU AntivirusAntivirus
  • 7. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved The Open PerspectiveThe Open Perspective ●● A sophisticated software designer canA sophisticated software designer can provide far more than what user couldprovide far more than what user could imagine. He or she can offer him or herimagine. He or she can offer him or her capabilities and functions user wouldn'tcapabilities and functions user wouldn't imagine before.imagine before. ●● It comes from:It comes from: Tacit RequirementsTacit Requirements
  • 8. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved ExampleExample--1:1: BiDiBiDi ●● As an example, I wouldn't imagine that it could be possibleAs an example, I wouldn't imagine that it could be possible to show a bidirectional text in one plaintext file, so I didn'tto show a bidirectional text in one plaintext file, so I didn't even ask myself if there's a solution for it or not! But when Ieven ask myself if there's a solution for it or not! But when I saw it for the first time in a real software, which wassaw it for the first time in a real software, which was GEditGEdit,, I was very grateful to open source community for theirI was very grateful to open source community for their unexpected help and solution!unexpected help and solution!
  • 9. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved ExampleExample--2: Find toolbar2: Find toolbar ●● Another example was the approach of showingAnother example was the approach of showing (Find) function in Adobe Acrobat 7.0 and(Find) function in Adobe Acrobat 7.0 and FireFoxFireFox..
  • 10. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved The Open PerspectiveThe Open Perspective cont.cont. ●● So, unlike commercial software, that areSo, unlike commercial software, that are necessarily user'snecessarily user's--satisfactionsatisfaction--driven,driven, ●● Open source software are principleOpen source software are principle--driven.driven.
  • 11. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved Open SystemsOpen Systems PrinciplePrinciple--driven softwaredriven software ●● Whatever the principles listed by theWhatever the principles listed by the software developer, Itsoftware developer, It’’s, at the end of thes, at the end of the day, about:day, about: Realizing TheRealizing The Functional ScopeFunctional Scope of theof the software as a component has to integratesoftware as a component has to integrate with other components inwith other components in an open communityan open community
  • 12. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved ConclusionConclusion FOSMFOSM -- Freedom/Objective Software MatrixFreedom/Objective Software Matrix --Function raceFunction raceWindowsWindows--basedbased ApplicationsApplications Well identifiedWell identified componentscomponents --Free/Open SourceFree/Open Source SoftwareSoftware An infrastructureAn infrastructure--Microsoft WindowsMicrosoft Windows PrinciplePrinciple--drivendrivenUserUser--satisfactionsatisfaction--drivendriven
  • 13. CopyrightCopyright ©© 2007 Mohammad Anas Ramadan2007 Mohammad Anas Ramadan All rights reservedAll rights reserved ReferencesReferences ●● PunBBPunBB http://www.punbb.org/about.phphttp://www.punbb.org/about.php ●● Notepad2Notepad2 http://www.floshttp://www.flos--freeware.ch/np2faq.htmlfreeware.ch/np2faq.html ●● Arabian LinuxArabian Linux http://distrowatch.com/table.php?distribution=arabianhttp://distrowatch.com/table.php?distribution=arabian
  • 14. CopyrightCopyright ©© 2007 Mohammad2007 Mohammad AnasAnas RamadanRamadan All rights reservedAll rights reserved TThanks forhanks for LListeningistening!!