Software as Data Structure

Slides:



Advertisements
Similar presentations
COP th Lecture September 26, 2005 COP 4009 Component-Based Software Engineering Fall 2005 Instructor: Masoud Sadjadi
Advertisements

MCT260-Operating Systems I Operating Systems I Introduction to Operating Systems.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
CS CS 5150 Software Engineering Lecture 13 System Architecture and Design 1.
EUROPEAN UNION Polish Infrastructure for Supporting Computational Science in the European Research Space User Oriented Provisioning of Secure Virtualized.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
Securing Legacy Software SoBeNet User group meeting 25/06/2004.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
SAP R/3 System: Client Server Overview (Buck-Emden & Galimow, 1998) Dr. K. Palaniappan.
Adaptability for flexible mobile service provision in 3G and beyond Nikos Houssos
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
XML in Development of Distributed Systems Tooling Programming Runtime.
 Chapter 6 Architecture 1. What is Architecture?  Overall Structure of system  First Stage in Design process 2.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
May 2003National Coastal Data Development Center Brief Introduction Two components Data Exchange Infrastructure (DEI) Spatial Data Model (SDM) Together,
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
CISC 849 : Applications in Fintech Namami Shukla Dept of Computer & Information Sciences University of Delaware A Cloud Computing Methodology Study of.
Building Preservation Environments with Data Grid Technology Reagan W. Moore Presenter: Praveen Namburi.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
Application architectures. Objectives l To explain the organisation of two fundamental models of business systems - batch processing and transaction processing.
The Holmes Platform and Applications
Computer System Structures
Multi-Device UI Development for Task-Continuous Cross-Channel Web Applications Enes Yigitbas, Thomas Kern, Patrick Urban, Stefan Sauer
Introduction to Oracle Forms Developer and Oracle Forms Services
Database Systems: Design, Implementation, and Management Tenth Edition
Operating System Concepts
The Client/Server Database Environment
CMS High Level Trigger Configuration Management
Introduction to Oracle Forms Developer and Oracle Forms Services
WEB SERVICES.
Self Healing and Dynamic Construction Framework:
Lecture 1 What is Software Engineering? CSC 4700 Software Engineering
Introduction to Design Patterns
Software Reuse ©Ian Sommerville 2006.
Introduction to Oracle Forms Developer and Oracle Forms Services
Web Application Modeling
Chapter 9: The Client/Server Database Environment
Chapter 18 MobileApp Design
Introduction to J2EE Architecture
CMPE419 Mobile Application Development
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Chapter 2: Database System Concepts and Architecture
Cloud Modeling Framework CloudMF
Inventory of Distributed Computing Concepts and Web services
Teaching slides Chapter 5.
More Model Elements.
An Introduction to Software Architecture
Chapter 7 –Implementation Issues
Serverless Architecture in the Cloud
Middleware, Services, etc.
Chapter 1: The Database Environment
Outline Chapter 2 (cont) OS Design OS structure
The Database Environment
Background Prepared by: Mr. Mahmoud Rafeek Alfarra.
Chapter 5 Architectural Design.
Database System Concepts and Architecture
Dot Net Application PROF. S. LAKSHMANAN, DEPT. OF B. VOC. (SD & SA),
Graphical Modeling of INFOD applications
CMPE419 Mobile Application Development
Games Development 2 Entity / Architecture Review
ONAP Architecture Principle Review
Software Architecture & Design
Presentation transcript:

Software as Data Structure ITDK 2016 In information systems, data and logic are equally stored as sequences of 0 and 1 When we think of software, we mean different coding languages, toolkits, platforms, standards… What makes this difference critical? Author: Lorand Kedves, ST3BJ3 Supervisor: Dr. László Czúni Date: 2016. 11. 09. University of Pannonia Department of Electrical Engineering and Information Systems

Data Structures and Layers Engineering artifact Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 2 / 14 Data structures behind: - Plans - Physics, mathematics, materials: enable testing! Objective, academic knowledge of centuries; global notation system Independent layers, „dimension change”: operation above represented as data below

Layers in Informatics Information system „Data structures”: Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 3 / 14 „Data structures”: - Implementation tools - Business layer tools „Newer is better” approach, incompatible notation systems based on business reasons Interdependent toolkits, instead of isolated layers „Too much of good” – but this is constant beta…

Message: „Hello, World!” Message: „Hello, World!” Today Software is: Text! Application Message: „Hello, World!” Printing component Command Application Message: „Hello, World!” Printing component Command Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 4 / 14 C, 1974 Clojure, 2007 Although the Neumann Architecture and engineering experience prove its importance, implemented software is not a data structure anymore, but weird plain text! Rust, 2015 fn main() { println!("Hello, world!"); } Application, represented as an abstract data structure

Building Systems Today Operation Data Documentation Planning „out of the system” Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 5 / 14 System structure in source code Covering the plans with code „represented thing” (OOP object) System Choosing the infrastructure Infrastructure Source language* Running platform* … dictates implementation language and tools Environment The infrastructure manages the data as we knew at creation, can’t adapt to changes Data structure Planning Building Running

Neumann Architecture – Dust Platform Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 6 / 14 Software evolution calls for new representation Neumann Architecture (abstracting electronics) Data structures in the center Independence from execution methods Minimal, homogeneous, „matehmatical” components Dust Platform (abstracting informatics) Representation – same tools for data and services Communication – representing messages Execution – reacting code in context

Documentation Entity* Planning – homogeneous, „self supporting” tools Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 7 / 14 System Representation Existence – Entity Data – Models Behavior – Services „Self supporting” Plans are entity networks Types and services are also entities „Meta layer” Type Entity* Model* Documentation Entity* Entity Service Entity* Service*

Building – isolated data structures and implementation Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 8 / 14 Application Code language* Implementation* Execution envitonment Platform* Terminology* Module* Entities in structural and communication network Initialization message array

Kernel initialization Running – external, adaptive engine Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 9 / 14 Running system (still data) Dust runtime environment Environment Kernel initialization Entity cloud Platform booting Application loading Dust binaries KERNEL messaging data access Launch messages Custom binaries

DustCompact Toolkit Dust Platform implementation in Java Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 10 / 14 Dust Platform implementation in Java Runtime environment Data definition and management Instantiate and call binaries Building application Modules Integration: Poi (Excel), MVEL (Expression), MySQL (database) Web environment: J2EE, Jetty, JavaScript middleware Applications Demos Excel template manager ERPort ETL web application

Message: „Hello, World!” Application = Data Structure Application Message: „Hello, World!” Printing component Command The software remains a data structure The application is the entity network itself, displayed graphically here The used JSON files are only a way to serialize the network … like source codes are only serialized forms of the algorithms! (Neumann) Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 11 / 14 Hello, World! - DustCompact

Organic Building Hello, World! – custom language elements and binaries Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 12 / 14

History and Present History DustCompact: ERPort – web ETL application Plugin architectures – DataScope (2000, C++) Adaptive, configurative systems – IIER (2004, Java) „Big data” - Continental Release Monitoring (2014) Configurative GUI – IIER (2004), KiBoard (2012, iOS) „Self planning”, code generation – DustConstruct (2015) DustCompact: ERPort – web ETL application Document storage Excel import with dynamic type management Adaptive grid, property sheet, validation Minimal amount of source code Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 13 / 14

Evaluation Advantages Risks Efficiency Flexibility Share and reuse Data Structures and Layers Layers in Informatics Today Software is: Text! Building Systems Today Neumann Architecture – Dust Platform Planning Building Running DustCompact Toolkit Application = Data Structure Organic Building History and Present Evaluation 14 / 14 Advantages Efficiency Flexibility Share and reuse Rapid development Executable plans Organic improvement Risks Dependency Size Learning curve Performance Resources Transferability

Thank you for your attention! Software as Data Structure ITDK 2016 Author: Lorand Kedves, ST3BJ3 Supervisor: Dr. László Czúni Date: 2016. 11. 09. University of Pannonia Department of Electrical Engineering and Information Systems