this presentation is prepared by me to intrduce to the students the main features in .net frameworks .. it's a part of Software engineering course's projects i depend on Microsoft website wish you find it useful :)
This is a presentation I did for the Cedar Rapids .NET User Group (CRineta.org). I also presented it at work (Fiserv Insurance Solutions - now StoneRiver) for fellow developers.
The document provides an overview of visual programming environments for science and business, using KNIME and Pipeline Pilot as examples. It defines visual programming as dragging functional components onto a canvas to create a program by configuring components and connecting them to route data. The document demonstrates creating a report of compounds registered in January using these environments and discusses the types of components, applications, and benefits of server deployment that they enable.
Open Source project failure often stems from not setting clear objectives or having a shared vision from the start. That said there are many success stories, including two well known Statistical examples: Demetra; and Eurostat SDMX tools (SDMX-RI). However, in all these examples there was at first a founding organisation/entity that created the right environment for its successful path into a new paradigm. In the context of my presentation this being the Statistical Information System Collaboration Community (SIS-CC / http://siscc.oecd.org).
Presented at the International Marketing and Output DataBase Conference, Gozd Martuljek, September 18 - 22, 2016.
The SANA Project aimed to democratize access to healthcare through open source technologies. The Impulse team worked on extending the SANA module application over 5 sprints. They focused on implementing media playback functionality to allow clinicians to play audio and video files within the mobile app without external players. The team successfully delivered the Impulse Media Player to render .mp3, .mp4 and .flv files by the final sprint deadline of November 23rd, 2015.
The Development History of PVS-Studio for LinuxPVS-Studio
Earlier this year, we started doing something that we had felt uncertain about for a long time, namely porting PVS-Studio to Linux. In this article, I will tell you how we made the decision to create a product for Linux distributions after 10 years of the Windows version's existence. It's a big job, which, unfortunately, involves much more work than simply compiling the source files for the new platform, as some may think.
this presentation is prepared by me to intrduce to the students the main features in .net frameworks .. it's a part of Software engineering course's projects i depend on Microsoft website wish you find it useful :)
This is a presentation I did for the Cedar Rapids .NET User Group (CRineta.org). I also presented it at work (Fiserv Insurance Solutions - now StoneRiver) for fellow developers.
The document provides an overview of visual programming environments for science and business, using KNIME and Pipeline Pilot as examples. It defines visual programming as dragging functional components onto a canvas to create a program by configuring components and connecting them to route data. The document demonstrates creating a report of compounds registered in January using these environments and discusses the types of components, applications, and benefits of server deployment that they enable.
Open Source project failure often stems from not setting clear objectives or having a shared vision from the start. That said there are many success stories, including two well known Statistical examples: Demetra; and Eurostat SDMX tools (SDMX-RI). However, in all these examples there was at first a founding organisation/entity that created the right environment for its successful path into a new paradigm. In the context of my presentation this being the Statistical Information System Collaboration Community (SIS-CC / http://siscc.oecd.org).
Presented at the International Marketing and Output DataBase Conference, Gozd Martuljek, September 18 - 22, 2016.
The SANA Project aimed to democratize access to healthcare through open source technologies. The Impulse team worked on extending the SANA module application over 5 sprints. They focused on implementing media playback functionality to allow clinicians to play audio and video files within the mobile app without external players. The team successfully delivered the Impulse Media Player to render .mp3, .mp4 and .flv files by the final sprint deadline of November 23rd, 2015.
The Development History of PVS-Studio for LinuxPVS-Studio
Earlier this year, we started doing something that we had felt uncertain about for a long time, namely porting PVS-Studio to Linux. In this article, I will tell you how we made the decision to create a product for Linux distributions after 10 years of the Windows version's existence. It's a big job, which, unfortunately, involves much more work than simply compiling the source files for the new platform, as some may think.
This document describes a knowledge workbench called KnowBench that was developed to facilitate knowledge sharing and reuse among software developers. KnowBench integrates semantic web technologies into the Eclipse IDE to allow developers to semantically annotate software artifacts like source code. This helps developers document problems and solutions and more easily find relevant information. KnowBench uses ontologies and a semantic wiki to organize and navigate the captured development knowledge.
The document discusses developing with Openbravo, including its development environment (ODE), tools used like Eclipse and Subversion, development process, migrations/upgrades, and ways to contribute. ODE aims to efficiently support tasks like editing code, debugging, and deployment for the large and complex Openbravo project involving distributed development.
Nesta apresentação conheceremos as definições de Integração, Entrega e Implantação Contínua e como o uso do Jenkins possibilita a criação de pipelines que ajudam as equipes de desenvolvimento, testes, qualidade e operação na entrega de produtos com maior qualidade aos clientes.
Também será apresentado o uso do Jenkins em conjunto com o Gitlab, SonarQube, Maven, Nexus, Docker e Terraform, que é o tema central do livro Integração contínua com Jenkins, publicado em Fevereiro/2019 pela editora Novatec.
The document summarizes the speaker's fellowship in Manchester e-Science and various projects they have worked on. It discusses tools developed like Biocatalogue and SearchByData for finding biological web services, as well as GeneSilico web services. It also covers the speaker's work on FileQuirks and collaboration methodology used by MyGrid that could be adopted. The speaker seeks feedback on deploying services and sharing software development practices.
compiler construction tool in computer science .RanitHalder
This document discusses compiler construction tools. It begins by acknowledging the teacher who provided the opportunity to work on this project about compiler construction tools. It then provides an introduction explaining that compiler construction tools help developers more efficiently and accurately translate source code into executable code. The document proceeds to define compiler construction tools and provide examples, such as parser generators and scanner generators. It concludes by reiterating that compiler construction tools automate and aid the process of translating programming languages into machine code.
William Visnich is seeking a leadership position in software engineering. He has a Bachelor of Science in Computer Science and a Bachelor of Arts in Philosophy from the University of Pittsburgh. He has over 20 years of experience as a senior software engineer, project manager, software architect, and team lead. He has skills in many programming languages, operating systems, and development tools.
What is the Secure Supply Chain and the Current State of the PHP Ecosystemsparkfabrik
In this talk I’ll present the current state of the software supply chain, the big global recent events (SolarWinds, log4shell, codecov, packagist) and the state of the PHP and Drupal ecosystem, the threats and the mitigations that can be applied using tools like Sigstore, Syft, and Grype for digital signatures, SBOM generation, and automatic vulnerability scanning and how to use them for real-world projects to gain unprecedented levels of knowledge of your digital artifacts.
There will be also a demo of the mentioned tools in action to implement a secure supply chain pipeline for your Drupal projects.
This document discusses various web development technologies. It describes front-end technologies like HTML, CSS, and JavaScript that are used to build the interactive elements users see. Back-end technologies like PHP, Python, and Java are used to develop the technical foundations and process data on the server-side. Popular frameworks, libraries, and databases are also covered. The document emphasizes that a good design is essential for web development and influences user experience and business outcomes.
R is an open source programming language used for statistical analysis and graphics. It allows users to create objects like vectors, matrices, data frames and lists to manipulate and analyze data. RStudio is an integrated development environment for R that provides a user interface, debugging tools and package management. The document introduces key R concepts like data types, packages and resources for learning R. It also provides best practices for file management, naming conventions and version control when programming in R.
The document discusses KnowBench, a knowledge workbench environment designed to facilitate knowledge sharing among software developers. KnowBench aims to provide an intelligent, semantic user interface for developers within their integrated development environment. It utilizes ontologies to semantically annotate software artifacts, allowing developers to formally describe and visualize development knowledge. This knowledge base can then be leveraged by semantic search engines and peer-to-peer networks to improve collaboration and problem solving across development teams.
Present and future of unified, portable and efficient data processing with Ap...DataWorks Summit
The world of big data involves an ever-changing field of players. Much as SQL stands as a lingua franca for declarative data analysis, Apache Beam aims to provide a portable standard for expressing robust, out-of-order data processing pipelines in a variety of languages across a variety of platforms. In a way, Apache Beam is a glue that can connect the big data ecosystem together; it enables users to "run any data processing pipeline anywhere."
This talk will briefly cover the capabilities of the Beam model for data processing and discuss its architecture, including the portability model. We’ll focus on the present state of the community and the current status of the Beam ecosystem. We’ll cover the state of the art in data processing and discuss where Beam is going next, including completion of the portability framework and the Streaming SQL. Finally, we’ll discuss areas of improvement and how anybody can join us on the path of creating the glue that interconnects the big data ecosystem.
Speaker
Davor Bonaci, V.P. of Apache Beam; Founder/CEO at Operiant
Tech leaders guide to effective building of machine learning productsGianmario Spacagna
This document provides guidance for machine learning product managers and technical leaders on building effective ML products. It discusses introducing ML in enterprises, defining product specifications, planning under uncertainty, and building balanced ML teams. It also covers the ML product lifecycle, including tracking experiments, centralized data storage, automated testing, continuous integration, and serverless architectures. Serverless computing can help simplify deployments, improve scalability, and reduce costs.
Charles Stolze interned at Freddie Mac from May to August 2015 as an Automation and Compute Engineering Intern. He took several technical courses and worked on two long-term projects: developing training materials for Cisco Jabber and creating a portal for automation tools. On a daily basis, he tested and documented IT self-service portals, communicated with users, and updated web servers.
Pos 409 pos409 pos 409 forecasting and strategic planning -uopstudy.comULLPTT
The document provides instructions for a multi-week software development project involving teams creating a Universal Windows Platform application. It outlines tasks for each week, including designing classes, implementing user interfaces, connecting to live data through APIs. Students will work as a team, with individual assignments each week to practice relevant C# and UWP skills like LINQ, inheritance, file input/output, and RESTful web services. The final week involves an overview presentation of key C# concepts learned through the project.
John McKerrell provides tips for managing phone development projects. He recommends brainstorming ideas using post-it notes or mind maps. Designing the app by prioritizing ideas and creating a high-level overview. Using source control like Git to manage code, keeping the source tree tidy with commenting. Testing with test-driven development, documentation-driven testing, and test plans. Managing bugs by adding them to an issue tracker.
An integrated development environment (IDE) is a software application that provides comprehensive facilities to help computer programmers develop software. An IDE typically includes a source code editor, build automation tools, and a debugger. Many modern IDEs also incorporate version control and have features like class browsers, object inspectors, and class hierarchy diagrams to aid object-oriented development. IDEs are designed to maximize programmer productivity by integrating these tools and keeping mode switching to a minimum. Popular open source IDEs include Eclipse, NetBeans, and Code::Blocks, which support multiple languages through plugins.
A MEDIA SHARING PLATFORM BUILT WITH OPEN SOURCE SOFTWAREvrt-medialab
Sharing and handling media files in a professional context often requires expensive software packages. For the EBU P/SCAIE project, a platform was required that could handle an abundance of professional file formats, arbitrary large file sizes and which did not pose restrictions on the metadata format used. As there was no such software available, we decided to build a custom web-based platform, based on loosely coupled open source components.
This paper explains the architecture of the resulting platform. With a minimum of custom code, we have created a powerful platform that meets our requirements. This integration, described in this paper, is of use to organizations wishing to build their own media platform using open source components.
1) Full stack web development involves mastering both front-end and back-end development skills to build complete web applications.
2) Key advantages of full stack developers include their versatility in building full applications, experience across the full development stack, and ability to handle all aspects of development from troubleshooting to upgrades.
3) Core components of full stack development include front-end skills like HTML, CSS, and JavaScript for the user interface, back-end skills like PHP and Node.js for application logic, databases to store data, and version control systems like Git to manage code changes.
This document provides a training report on a plant data history viewer application created by four students under the guidance of Mr. Nilesh Gohel at Bhabha Atomic Research Centre. The application was developed using C# and .NET framework to monitor and log parameters like temperature, pressure, and radiation from a reactor. It allows querying the historical data and generates alarms if parameters exceed normal ranges. The report describes the technologies used to create the application like object-oriented programming, Visual Studio 2010, Windows Presentation Foundation, and databases.
This document describes a knowledge workbench called KnowBench that was developed to facilitate knowledge sharing and reuse among software developers. KnowBench integrates semantic web technologies into the Eclipse IDE to allow developers to semantically annotate software artifacts like source code. This helps developers document problems and solutions and more easily find relevant information. KnowBench uses ontologies and a semantic wiki to organize and navigate the captured development knowledge.
The document discusses developing with Openbravo, including its development environment (ODE), tools used like Eclipse and Subversion, development process, migrations/upgrades, and ways to contribute. ODE aims to efficiently support tasks like editing code, debugging, and deployment for the large and complex Openbravo project involving distributed development.
Nesta apresentação conheceremos as definições de Integração, Entrega e Implantação Contínua e como o uso do Jenkins possibilita a criação de pipelines que ajudam as equipes de desenvolvimento, testes, qualidade e operação na entrega de produtos com maior qualidade aos clientes.
Também será apresentado o uso do Jenkins em conjunto com o Gitlab, SonarQube, Maven, Nexus, Docker e Terraform, que é o tema central do livro Integração contínua com Jenkins, publicado em Fevereiro/2019 pela editora Novatec.
The document summarizes the speaker's fellowship in Manchester e-Science and various projects they have worked on. It discusses tools developed like Biocatalogue and SearchByData for finding biological web services, as well as GeneSilico web services. It also covers the speaker's work on FileQuirks and collaboration methodology used by MyGrid that could be adopted. The speaker seeks feedback on deploying services and sharing software development practices.
compiler construction tool in computer science .RanitHalder
This document discusses compiler construction tools. It begins by acknowledging the teacher who provided the opportunity to work on this project about compiler construction tools. It then provides an introduction explaining that compiler construction tools help developers more efficiently and accurately translate source code into executable code. The document proceeds to define compiler construction tools and provide examples, such as parser generators and scanner generators. It concludes by reiterating that compiler construction tools automate and aid the process of translating programming languages into machine code.
William Visnich is seeking a leadership position in software engineering. He has a Bachelor of Science in Computer Science and a Bachelor of Arts in Philosophy from the University of Pittsburgh. He has over 20 years of experience as a senior software engineer, project manager, software architect, and team lead. He has skills in many programming languages, operating systems, and development tools.
What is the Secure Supply Chain and the Current State of the PHP Ecosystemsparkfabrik
In this talk I’ll present the current state of the software supply chain, the big global recent events (SolarWinds, log4shell, codecov, packagist) and the state of the PHP and Drupal ecosystem, the threats and the mitigations that can be applied using tools like Sigstore, Syft, and Grype for digital signatures, SBOM generation, and automatic vulnerability scanning and how to use them for real-world projects to gain unprecedented levels of knowledge of your digital artifacts.
There will be also a demo of the mentioned tools in action to implement a secure supply chain pipeline for your Drupal projects.
This document discusses various web development technologies. It describes front-end technologies like HTML, CSS, and JavaScript that are used to build the interactive elements users see. Back-end technologies like PHP, Python, and Java are used to develop the technical foundations and process data on the server-side. Popular frameworks, libraries, and databases are also covered. The document emphasizes that a good design is essential for web development and influences user experience and business outcomes.
R is an open source programming language used for statistical analysis and graphics. It allows users to create objects like vectors, matrices, data frames and lists to manipulate and analyze data. RStudio is an integrated development environment for R that provides a user interface, debugging tools and package management. The document introduces key R concepts like data types, packages and resources for learning R. It also provides best practices for file management, naming conventions and version control when programming in R.
The document discusses KnowBench, a knowledge workbench environment designed to facilitate knowledge sharing among software developers. KnowBench aims to provide an intelligent, semantic user interface for developers within their integrated development environment. It utilizes ontologies to semantically annotate software artifacts, allowing developers to formally describe and visualize development knowledge. This knowledge base can then be leveraged by semantic search engines and peer-to-peer networks to improve collaboration and problem solving across development teams.
Present and future of unified, portable and efficient data processing with Ap...DataWorks Summit
The world of big data involves an ever-changing field of players. Much as SQL stands as a lingua franca for declarative data analysis, Apache Beam aims to provide a portable standard for expressing robust, out-of-order data processing pipelines in a variety of languages across a variety of platforms. In a way, Apache Beam is a glue that can connect the big data ecosystem together; it enables users to "run any data processing pipeline anywhere."
This talk will briefly cover the capabilities of the Beam model for data processing and discuss its architecture, including the portability model. We’ll focus on the present state of the community and the current status of the Beam ecosystem. We’ll cover the state of the art in data processing and discuss where Beam is going next, including completion of the portability framework and the Streaming SQL. Finally, we’ll discuss areas of improvement and how anybody can join us on the path of creating the glue that interconnects the big data ecosystem.
Speaker
Davor Bonaci, V.P. of Apache Beam; Founder/CEO at Operiant
Tech leaders guide to effective building of machine learning productsGianmario Spacagna
This document provides guidance for machine learning product managers and technical leaders on building effective ML products. It discusses introducing ML in enterprises, defining product specifications, planning under uncertainty, and building balanced ML teams. It also covers the ML product lifecycle, including tracking experiments, centralized data storage, automated testing, continuous integration, and serverless architectures. Serverless computing can help simplify deployments, improve scalability, and reduce costs.
Charles Stolze interned at Freddie Mac from May to August 2015 as an Automation and Compute Engineering Intern. He took several technical courses and worked on two long-term projects: developing training materials for Cisco Jabber and creating a portal for automation tools. On a daily basis, he tested and documented IT self-service portals, communicated with users, and updated web servers.
Pos 409 pos409 pos 409 forecasting and strategic planning -uopstudy.comULLPTT
The document provides instructions for a multi-week software development project involving teams creating a Universal Windows Platform application. It outlines tasks for each week, including designing classes, implementing user interfaces, connecting to live data through APIs. Students will work as a team, with individual assignments each week to practice relevant C# and UWP skills like LINQ, inheritance, file input/output, and RESTful web services. The final week involves an overview presentation of key C# concepts learned through the project.
John McKerrell provides tips for managing phone development projects. He recommends brainstorming ideas using post-it notes or mind maps. Designing the app by prioritizing ideas and creating a high-level overview. Using source control like Git to manage code, keeping the source tree tidy with commenting. Testing with test-driven development, documentation-driven testing, and test plans. Managing bugs by adding them to an issue tracker.
An integrated development environment (IDE) is a software application that provides comprehensive facilities to help computer programmers develop software. An IDE typically includes a source code editor, build automation tools, and a debugger. Many modern IDEs also incorporate version control and have features like class browsers, object inspectors, and class hierarchy diagrams to aid object-oriented development. IDEs are designed to maximize programmer productivity by integrating these tools and keeping mode switching to a minimum. Popular open source IDEs include Eclipse, NetBeans, and Code::Blocks, which support multiple languages through plugins.
A MEDIA SHARING PLATFORM BUILT WITH OPEN SOURCE SOFTWAREvrt-medialab
Sharing and handling media files in a professional context often requires expensive software packages. For the EBU P/SCAIE project, a platform was required that could handle an abundance of professional file formats, arbitrary large file sizes and which did not pose restrictions on the metadata format used. As there was no such software available, we decided to build a custom web-based platform, based on loosely coupled open source components.
This paper explains the architecture of the resulting platform. With a minimum of custom code, we have created a powerful platform that meets our requirements. This integration, described in this paper, is of use to organizations wishing to build their own media platform using open source components.
1) Full stack web development involves mastering both front-end and back-end development skills to build complete web applications.
2) Key advantages of full stack developers include their versatility in building full applications, experience across the full development stack, and ability to handle all aspects of development from troubleshooting to upgrades.
3) Core components of full stack development include front-end skills like HTML, CSS, and JavaScript for the user interface, back-end skills like PHP and Node.js for application logic, databases to store data, and version control systems like Git to manage code changes.
This document provides a training report on a plant data history viewer application created by four students under the guidance of Mr. Nilesh Gohel at Bhabha Atomic Research Centre. The application was developed using C# and .NET framework to monitor and log parameters like temperature, pressure, and radiation from a reactor. It allows querying the historical data and generates alarms if parameters exceed normal ranges. The report describes the technologies used to create the application like object-oriented programming, Visual Studio 2010, Windows Presentation Foundation, and databases.
Virgile Prevosto, du CEA LIST, dirige les recherches du projet européen DECODER. Il présente la plateforme DECODER comme une boîte à outils collaborative pour extraire, comprendre et vérifier les logiciels à partir de leur code source, d'approches semi-formelles et formelles. L'objectif consiste à aider les développeurs, évaluateurs, testeurs et mainteneurs à fournir des logiciels de qualité.
At Paris Open Source Summit, Vigile Prevosto, CEA List researcher and DECODER technical project leader, presents the H2020 project objectives, along with some results and the roadmap. The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement number 824231.
Software Knowledge Representation to Understand Software Systems. A Profes 2019 presentation by Victoria Torres, Miriam Gil and Vicente Pelechano, from UPV (Valencia University).
Cedric Thomas, OW2 CEO, presentation of DECODER Project during the 2nd Hamburg Requirements Engineering Symposium. He provides details about the project objectives, several initial results and the software roadmap
Miguel Jaén, Capgemini Senior Consultant presents the DECODER Project 'MyThaiStar' use case. Extraction and verification of 'Application Design Documentation' (Industry Standard).
DECODER Project Presentation to the Advisory BoardDecoder Project
Vigile Prevosto, CEA List researcher and DECODER technical project leader, presents the project objectives, initial results and the roadmap.
The DECODER project has received funding from the European Union’s Horizon 2020 research and innovation programme under
grant agreement number 824231.
8 Best Automated Android App Testing Tool and Framework in 2024.pdfkalichargn70th171
Regarding mobile operating systems, two major players dominate our thoughts: Android and iPhone. With Android leading the market, software development companies are focused on delivering apps compatible with this OS. Ensuring an app's functionality across various Android devices, OS versions, and hardware specifications is critical, making Android app testing essential.
The Key to Digital Success_ A Comprehensive Guide to Continuous Testing Integ...kalichargn70th171
In today's business landscape, digital integration is ubiquitous, demanding swift innovation as a necessity rather than a luxury. In a fiercely competitive market with heightened customer expectations, the timely launch of flawless digital products is crucial for both acquisition and retention—any delay risks ceding market share to competitors.
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
WWDC 2024 Keynote Review: For CocoaCoders AustinPatrick Weigel
Overview of WWDC 2024 Keynote Address.
Covers: Apple Intelligence, iOS18, macOS Sequoia, iPadOS, watchOS, visionOS, and Apple TV+.
Understandable dialogue on Apple TV+
On-device app controlling AI.
Access to ChatGPT with a guest appearance by Chief Data Thief Sam Altman!
App Locking! iPhone Mirroring! And a Calculator!!
How Can Hiring A Mobile App Development Company Help Your Business Grow?ToXSL Technologies
ToXSL Technologies is an award-winning Mobile App Development Company in Dubai that helps businesses reshape their digital possibilities with custom app services. As a top app development company in Dubai, we offer highly engaging iOS & Android app solutions. https://rb.gy/necdnt
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Drona Infotech is a premier mobile app development company in Noida, providing cutting-edge solutions for businesses.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
E-commerce Development Services- Hornet DynamicsHornet Dynamics
For any business hoping to succeed in the digital age, having a strong online presence is crucial. We offer Ecommerce Development Services that are customized according to your business requirements and client preferences, enabling you to create a dynamic, safe, and user-friendly online store.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
1. Open Research Webinars
DECODER:
a new DevOps toolbox for software
code exploration and analysis
Virgile Prevosto
CEA, List
Eclipse-OW2 Webinar
2021-03-04
2. Project at a glance
I https://www.decoder-project.eu/
I Started in January 2019, for 36 months
I Provide a unified platform for
managing all kinds of information on a
given codebase.
I Target all stakeholders in software
development life cycle:
I developers
I reviewers
I maintainers
Use-cases
Methodology
UX
Natural
Language
Processing
Software
Engineering
Tools
Coordination:
DEveloper COmpanion for Documented and annotatEd code
Reference
Open Research Webinars - page 2
3. I Database storing all relevant
documents for a software project
I documentation (manuals,
comments, bug tracker, ...)
I formal specifications
I source code
I analysis and testing results
I and evolutions (e.g. commits)
I Tools for feeding the database
I Tools for querying the database
I Common Json schema to ease
interactions
PKM
Augmented
IDE
Documentation
Generator
UML
Modeler
NLP
Knowledge
Formalizer
NLP
Knowledge
Extractor
Specification
Synthesis
Frama-C
OpenJML
Testar
Tool
Persistent Knowledge Monitor - PKM
Open Research Webinars - page 3
4. Node.js
PKM cli
PKM
over TCP
MongoDB driver
PKM util PKM core
PKM RESTful
HTTP server
Bash scripts
User’s console JS SDK UI and tools
over
https
PKM
API
I Use docker containers
I REST server uses
OpenAPI
I AGPL and Apache
licenses
I https://gitlab.ow2.
org/decoder/pkm-api
PKM Architecture
Open Research Webinars - page 4
5. Natural Language Processing
I Knowledge extraction from informal
documents and correspondance with
relevant code pieces
I Knowledge extraction from code and
semi-automated documentation
generation
Informal documents and Formal Specification
Open Research Webinars - page 5
6. At a glance
I Graphical language to describe effects of a function on the data structures involved
I Semi-automated generation of ASFM diagrams
I Animation of the diagrams (graphical debugging)
Current status
I Common part understood by all tools
I Extensible with tool-specific content
I Provide an abstraction layer on top of PKM’s lower-level documents
I Conversion tools to ASFM (doc-to-asfm) available as prototypes
Abstract Semi-Formal Models
Open Research Webinars - page 6
7. I browser-based
I under heavy development
I basic support for the main tools
feeding the PKM
Decoder Front-end
Open Research Webinars - page 7
8. Beta-testing PKM Server
I Internally
I Add functionalities to the API
I Integrate more tools (NLP)
I Continue client development
I Externally
I Interface with existing tools (e.g. )
I Export standard queries (e.g. LSP) where possible
I Use https://www.reachout-project.eu/
I first beta campaign on doc-to-asfm for the end of the year
I beta-campaign for the whole PKM stack in 2021
Next steps
Open Research Webinars - page 8
9. Contacts
GLOBE https://www.decoder-project.eu/
@ https://www.decoder-project.eu/view/Main/Contacts
TWITTER decoderproject
LINKEDIN Decoder H2020
Slideshare DecoderProject
Acknowledgments
The DECODER project has received funding from the European Union’s Horizon 2020 research
and innovation programme under grant agreement No 824231.
Icons designed by ultimatearm, eucalyp and pixel-perfect from Flaticon
Open Research Webinars - page 9