How To Apply Software Archeology To Your Development Process
|
|
|
- Merilyn Davis
- 10 years ago
- Views:
Transcription
1 How To Apply Software Archeology To Your Development Process Presented for: EclipseCon 2008 Thursday, March 13, 2008 Michael Rozlog CodeGear
2 Who is Mike? You just said that PLSM (Product Line Sales Manager) Responsibilities Helping rebuild the developer tools and databases Left Borland 1/2006 Why did I come back? Prior Chief Technical Architect Borland Creator of Mastering JBuilder Wiley Books [email protected]
3 Ground rules for presentation All questions are valid This is NOT a sales presentation If you have a question, ask if you have it most likely other members of the audience has it to
4 Agenda The process: What is Software Archeology? Future tools: What are Software Factories? CodeGear: Company background Q&A
5 The process What is Software Archeology?
6 Current state of IT in the U.S. and around the world The need for new or modernizing applications is not decreasing or going away U.S. had the lowest C/S graduation in 2007 Qualified individuals are not filling the market Outsourcing is not always a solution on the table? Not allowed or applicable Bigger issues around this area, latest data shows 50% for non-government organizations Knowledge transfer gap
7 What is Software Archeology? A process for approaching unknown software that we have become responsible for An approach to unraveling the complexities of an existing application A lightweight process for getting understanding of existing source code The analysis of past applications to learn and understand why it was done that way
8 Software Archeology if (host.charat(0) == '.') return non_proxy_dom_list.removeelement(host); // check for host name for (int idx=0; idx<host.length(); idx++) { if (!Character.isDigit(host.charAt(idx)) && host.charat(idx)!= '.' && host.charat(idx)!= '/') return (non_proxy_host_list.remove(host)!= null); } // must be an IP-address
9 Software Archeology Visualization Design Violation if (host.charat(0) == '.') return non_proxy_dom_list.removeelement(host); // check for host name for (int idx=0; idx<host.length(); idx++) { if (!Character.isDigit(host.charAt(idx)) && host.charat(idx)!= '.' && host.charat(idx)!= '/') return (non_proxy_host_list.remove(host)!= null); } // must be an IP-address Documentation Performance Review Style Violations Business Logic Review
10 Software Archeology if (host.charat(0) == '.') return non_proxy_dom_list.removeelement(host); // check for host name for (int idx=0; idx<host.length(); idx++) { if (!Character.isDigit(host.charAt(idx)) && host.charat(idx)!= '.' && host.charat(idx)!= '/') return (non_proxy_host_list.remove(host)!= null); } // must be an IP-address
11 Software Archeology Visualization Design Violation if (host.charat(0) == '.') return non_proxy_dom_list.removeelement(host); // check for host name for (int idx=0; idx<host.length(); idx++) { if (!Character.isDigit(host.charAt(idx)) && host.charat(idx)!= '.' && host.charat(idx)!= '/') return (non_proxy_host_list.remove(host)!= null); } // must be an IP-address Documentation Performance Review Style Violations Business Logic Review
12 Why is Software Archeology important? Always asked to rebuild the wheel How many times have you been asked to recreate this current implementation, but better? Inheritance of code Outsourcing Graying of IT
13 Why is Software Archeology important? Always asked to rebuild the wheel Inheritance of code How many times have you picked up someone else's code or project to be enhanced? Outsourcing Graying of IT
14 Why is Software Archeology important? Always asked to rebuild the wheel Inheritance of code Outsourcing Projects get outsourced, rural sourced, in-sourced, local sourced, and every other kind of sourced Do you understand the systems that were created? Do the outsourcers understand the system they are inheriting? Graying of IT
15 Why is Software Archeology important? Always asked to rebuild the wheel Inheritance of code Outsourcing Graying of IT By 2010 almost 37% of the software industry will consist of persons older then 50! 60% of the federal workforce will be eligible to retire over the next 10 years By percent of the government workforce about 290,000 employees will retire Do you understand the systems they have created?
16 What can be learned? High-level architectural understanding Weak-points in existing software Maintenance nightmares Performance bottlenecks Standards compliance or lack there of The overall health and value of the application Architectural approaches or how not to solve a problem Finding and Harvesting of Algorithms and patterns
17 What tools are needed? Need to be able to get a picture Need to be able to do static analysis Need to be able to do Dynamic analysis Need to be able to test the system Need to evaluate the performance Can it be done by hand? Yes but very time consuming code reviews, system tests, and primitive system performance models Is there a better way? Use a software tool
18 What is the cost of code reviews Very controversial subject But for me tools can enhance the approach Task Review by hand a small example set of code Comparison 5 classes, 139 lines of code, 4 experts in 15 minutes Average audit violations detected: 21 time: 0.25 hr The same set of code analyzed by a machine: Audit violations detected: 150 time: 2 sec 84/hr Real sample Project 187,600 violations in 100 minutes on a project with 1233 classes and 199,146 lines of code 32,443 violations using the default set Skip AppFactories for Now Time Limited Actual customer case studies show ~400 man/hour savings per code review
19 Future tools: What are Software Factories?
20 What is an AssetLibrary A repository that can hold and manage AppModules. It will manage the lifecycle of AppModules Persist App Module Version Control AssetLibrary
21 How do Application Factories work? Let s walk through a simple scenario
22 Instant Understanding
23 Applications are complex tagging & Navigation TAGS Architect Adding Understanding TAG Application Logic TAG Almost instant productivity gains and better understanding Increase base understanding through the use of tagging Understand complex navigational structures of an application
24 Produce process
25 Applications are complex Application Architect Complete Understanding Application Logic Architects have a complete implementation and conceptual understanding of an application They also understand the intent and evolution of the application However explaining, extending, and reusing parts of the application is near impossible
26 Harvesting functionality Application Architect Complete Understanding Application Logic Isolate key functionality or components of an application
27 Application Module Application Metadata Architecture Architect App. Navigation App. Logic Custom Scripts Think of the application module as the shopping cart functionality found inside a large e-commerce application Add expert context and understanding with intent Custom Tags
28 Storage for reuse Application Metadata Architecture App. Navigation App. Logic Version Control AssetLibrary Custom Scripts Custom Tags Application Modules have a life of their own Application Modules evolve and grow in understanding and intent Application Modules are now ready for reuse
29 Morphing the IDE Application Metadata Architecture App. Nav. App. Logic Custom Scripts Custom Tags Metadata changes the ide
30 Consume
31 Ready to build new application ProjectAssist Dashboard App. Module 1 Shopping Cart Version Control App. Module 2 Invoicing AssetLibrary Each module is assembled with understanding and intent Application modules include the underlying metadata Application Modules are now ready for reuse
32 Framework neutral approach Application Factories Don t rely on any one framework all Java frameworks are valid Use existing Eclipse-ecosystem to support multiple frameworks Don t build a better wizard, building a higher level of abstraction and understanding Mix and Match for best solution
33 Application Factories Vision Application-driven development paradigm The structure, evolution, and logic behind the development of the Application belong to the application itself and are attached as metadata. Applications along with attached metadata are shared as reusable software assets
34 CodeGear background/history
35 Evolution of Borland Borland Founded in 1983 By French Immigrant Philippe Kahn Focused on: 100% Focus on Developer Productivity Target Market: Developers First Product: Turbo Pascal Late 2006: CodeGear the tools division created Application Lifecycle Management Developer Developer & Database Tools Tools StarTeam CaliberRM Tempo Together Silk Gauntlet Delphi Delphi for PHP Turbo Pascal InterBase C++Builder 3 rd Rail Turbo C++ dbase/paradox Blackfish SQL JBuilder InterBase 2.0
36 New News
37 JBuilder / JGear product line JBuilder 2007 Enterprise JGear: Performance JGear: LiveSource JGear: Team Server & Client JBuilder 2007 JGear: JBuilder Performance LiveSource 2007 Enterprise: JBuilder JGear: Turbo Performance LiveSource JBuilder 2007: 2007: JGear: Team Server & Client A This Brings Gives JBuilder full free, plug-in best-of-breed the turnkey, 2007 developer entire delivers Edition Eclipse-based JBuilder Open a Graphical offers high-level and Source all JGear Java the EJB IDE lines Application performance-related together Workbench developer-focused that provides to offer and LifeCycle you Web a with complete features profiler Services Management a fundamental including easy for Designer memory to install to (ALM) and Java provide Optimizeit Eclipse CPU development tool a profiling simplified that for is performance package. easy and RAD environment. debugging, to install development It tuning; includes and configure. advanced everything experience, LiveSource visual in making the for Thread other Java Java with packages Debugging, development full two-way plus and Code more. easier code The entry and Coverage for visual novice level allowing product, code and experienced diagramming, Turbo the developer JBuilder JEE which to Full IDE integration makes it easy for see developers help 2007 in to can real increase easily time alike. where the be enhanced productivity the performance with of the Java developers JBuilder 2007 issues to maintain Enterprise any is project. the total developers JGear are plug-ins located. and teams. solution. Turbo JBuilder
38
39 Demonstrations An overview Visualizing the code Analysis Tests Performance Documentation
40 Thank You Additional JBuilder Resources: JBuilder Product page: JBuilder 2007 Videos: Java developer information Java developer multimedia tutorials
41
Preguntas más frecuentes sobre Embarcadero RAD Studio XE
Preguntas más frecuentes sobre Embarcadero RAD Studio XE Danysoft Representante exclusivo en la península ibérica What is Embarcadero RAD Studio? Embarcadero RAD Studio XE is a comprehensive application
Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World
Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify
Setting up IIS on Windows 7: Build Web Services with RAD Studio 2010
Tech Notes Setting up IIS on Windows 7: Build Web Services with RAD Studio 2010 Michael Rozlog Sr. Director of Delphi Solutions, Embarcadero Technologies November 2009 Corporate Headquarters EMEA Headquarters
Preguntas + frecuentes sobre Embarcadero Delphi Prism XE
Preguntas + frecuentes sobre Embarcadero Delphi Prism XE Danysoft Representante exclusivo en la península ibérica What is Delphi Prism XE? Embarcadero Delphi Prism XE provides a cross platform development
The leading platform for Model Driven Architecture (MDA) Content:
The leading platform for Model Driven Architecture (MDA) Content: Models Made for Business... 2 ArcStyler Overview... 2 Main Benefits... 3 ArcStyler Editions... 4 ArcStyler Modules and Tool Architecture...
ER/Studio Data Architect
Product Documentation ER/Studio Data Architect New Features Guide Version 11.0/XE7 Published April 22, 2015 2015 Embarcadero Technologies, Inc. Embarcadero, the Embarcadero Technologies logos, and all
Managing Java EE Performance with Embarcadero s J Optimizer Request Analyzer
Tech Notes Managing Java EE Performance with Embarcadero s J Optimizer Request Analyzer Al F. Mannarino, Embarcadero Technologies June 2008 Corporate Headquarters EMEA Headquarters Asia-Pacific Headquarters
SOFTWARE TESTING TRAINING COURSES CONTENTS
SOFTWARE TESTING TRAINING COURSES CONTENTS 1 Unit I Description Objectves Duration Contents Software Testing Fundamentals and Best Practices This training course will give basic understanding on software
Big Data Integration: A Buyer's Guide
SEPTEMBER 2013 Buyer s Guide to Big Data Integration Sponsored by Contents Introduction 1 Challenges of Big Data Integration: New and Old 1 What You Need for Big Data Integration 3 Preferred Technology
10174 - SharePoint 2010
Configuring and Managing Microsoft SharePoint 2010 Introduction The course teaches students how to install, configure and administer SharePoint, and also manage and monitor sites and users by using SharePoint
Effective Team Development Using Microsoft Visual Studio Team System
Effective Team Development Using Microsoft Visual Studio Team System Course 6214A: Three days; Instructor-Led Introduction This three-day instructor-led course provides students with the knowledge and
Avaya Aura Orchestration Designer
Avaya Aura Orchestration Designer Avaya Aura Orchestration Designer is a unified service creation environment for faster, lower cost design and deployment of voice and multimedia applications and agent
Building Views and Charts in Requests Introduction to Answers views and charts Creating and editing charts Performing common view tasks
Oracle Business Intelligence Enterprise Edition (OBIEE) Training: Working with Oracle Business Intelligence Answers Introduction to Oracle BI Answers Working with requests in Oracle BI Answers Using advanced
Designing and Developing Web Applications by using the Microsoft.NET Framework
Designing and Developing Web Applications by using the Microsoft.NET Framework Course Number: 70 547 Length: Certification Exam This exam is part of a series of exams in pursuit of the MCPD certification.
ITMC 2079 MCTS Configuring and Administering Microsoft SharePoint 2010
ITMC 2079 MCTS Configuring and Administering Microsoft SharePoint 2010 Length: 48 Hours Delivery Method: Instructor-led (classroom); MOC 10174 Course Description The course teaches students how to install,
A Modular Approach to Teaching Mobile APPS Development
2014 Hawaii University International Conferences Science, Technology, Engineering, Math & Education June 16, 17, & 18 2014 Ala Moana Hotel, Honolulu, Hawaii A Modular Approach to Teaching Mobile APPS Development
IBM Rational Web Developer for WebSphere Software Version 6.0
Rapidly build, test and deploy Web, Web services and Java applications with an IDE that is easy to learn and use IBM Rational Web Developer for WebSphere Software Version 6.0 Highlights Accelerate Web,
Guiding SOA Evolution through Governance From SOA 101 to Virtualization to Cloud Computing
Guiding SOA Evolution through Governance From SOA 101 to Virtualization to Cloud Computing 3-day seminar The evolution of how companies employ SOA can be broken down into three phases: the initial phase
Installation and Configuration in Microsoft Dynamics NAV 5.0
Installation and Configuration in Microsoft Dynamics NAV 5.0 8870: Installation and Configuration in Microsoft Dynamics NAV 5.0 (2 Days) About this Course Elements of this syllabus are subject to change.this
A standards-based approach to application integration
A standards-based approach to application integration An introduction to IBM s WebSphere ESB product Jim MacNair Senior Consulting IT Specialist [email protected] Copyright IBM Corporation 2005. All rights
The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.
Installing the SDK This page describes how to install the Android SDK and set up your development environment for the first time. If you encounter any problems during installation, see the Troubleshooting
zen Platform technical white paper
zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant
Meister Going Beyond Maven
Meister Going Beyond Maven A technical whitepaper comparing OpenMake Meister and Apache Maven OpenMake Software 312.440.9545 800.359.8049 Winners of the 2009 Jolt Award Introduction There are many similarities
IndustrialIT System 800xA Engineering
IndustrialIT System 800xA Engineering Overview Features and Benefits Integrated Engineering Environment: Supports the engineering of the entire extended automation system from field devices to plant management
<Insert Picture Here> Application Testing Suite Overview
Application Testing Suite Overview Agenda Ats Overview OpenScript Functional Testing OpenScript Load Testing Forms/Siebel Modules Installation of Ats Oracle Load Tester Oracle Test
Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS
Agile Business Suite: a 4GL environment for.net developers DEVELOPMENT, MAINTENANCE AND DEPLOYMENT OF LARGE, COMPLEX BACK-OFFICE APPLICATIONS In order to ease the burden of application lifecycle management,
Embarcadero DB Change Manager 6.0 and DB Change Manager XE2
Product Documentation Embarcadero DB Change Manager 6.0 and DB Change Manager XE2 User Guide Versions 6.0, XE2 Last Revised April 15, 2011 2011 Embarcadero Technologies, Inc. Embarcadero, the Embarcadero
A Monitored Student Testing Application Using Cloud Computing
A Monitored Student Testing Application Using Cloud Computing R. Mullapudi and G. Hsieh Department of Computer Science, Norfolk State University, Norfolk, Virginia, USA [email protected], [email protected]
Done. Imagine it. c Consulting. c Systems Integration. c Outsourcing. c Infrastructure. c Server Technology.
WHITE PAPER. Model-Driven Application Development with Agile Business Suite Alan Hood Unisys Systems and Technology Agility your survival depends on it. Agile organizations react swiftly to changing market
How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer
How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise
Chapter 13: Program Development and Programming Languages
15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning
WebSphere Server Administration Course
WebSphere Server Administration Course Chapter 1. Java EE and WebSphere Overview Goals of Enterprise Applications What is Java? What is Java EE? The Java EE Specifications Role of Application Server What
Software Engineering for LabVIEW Applications. Elijah Kerry LabVIEW Product Manager
Software Engineering for LabVIEW Applications Elijah Kerry LabVIEW Product Manager 1 Ensuring Software Quality and Reliability Goals 1. Deliver a working product 2. Prove it works right 3. Mitigate risk
Content. Development Tools 2(63)
Development Tools Content Project management and build, Maven Version control, Git Code coverage, JaCoCo Profiling, NetBeans Static Analyzer, NetBeans Continuous integration, Hudson Development Tools 2(63)
IBM WebSphere Server Administration
IBM WebSphere Server Administration This course teaches the administration and deployment of web applications in the IBM WebSphere Application Server. Duration 24 hours Course Objectives Upon completion
Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus. 2010 IBM Corporation
Tomáš Müller IT Architekt 21/04/2010 ČVUT FEL: SOA & Enterprise Service Bus Agenda BPM Follow-up SOA and ESB Introduction Key SOA Terms SOA Traps ESB Core functions Products and Standards Mediation Modules
This presentation is for informational purposes only and may not be incorporated into a contract or agreement.
This presentation is for informational purposes only and may not be incorporated into a contract or agreement. This following is intended to outline our general product direction. It is intended for information
Workshop for WebLogic introduces new tools in support of Java EE 5.0 standards. The support for Java EE5 includes the following technologies:
Oracle Workshop for WebLogic 10g R3 Hands on Labs Workshop for WebLogic extends Eclipse and Web Tools Platform for development of Web Services, Java, JavaEE, Object Relational Mapping, Spring, Beehive,
SOA-14: Continuous Integration in SOA Projects Andreas Gies
Distributed Team Building Principal Architect http://www.fusesource.com http://open-source-adventures.blogspot.com About the Author Principal Architect PROGRESS - Open Source Center of Competence Degree
NetBeans IDE Field Guide
NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting
Acknowledgments. p. 55
Preface Acknowledgments About the Author Introduction p. 1 IBM SOA Foundation p. 2 Service Design and Service Creation p. 2 Service Integration p. 3 Service Connectivity p. 5 Service Security and Management
Glassfish Architecture.
Glassfish Architecture. First part Introduction. Over time, GlassFish has evolved into a server platform that is much more than the reference implementation of the Java EE specifcations. It is now a highly
Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5
Course Page - Page 1 of 5 WebSphere Application Server 7.0 Administration on Windows BSP-1700 Length: 5 days Price: $ 2,895.00 Course Description This course teaches the basics of the administration and
Business Rule Management. Effective IT Modernization
Business Rule Management Effective IT Modernization Business Rule Management Lynne Harbin, Associate Director Health Eligibility Center, Veterans Health Administration I. Philip Matkovsky, Principal Macro
Augmented Search for Web Applications. New frontier in big log data analysis and application intelligence
Augmented Search for Web Applications New frontier in big log data analysis and application intelligence Business white paper May 2015 Web applications are the most common business applications today.
Sybase Unwired Platform 2.0
white paper Sybase Unwired Platform 2.0 Development Paradigm www.sybase.com TABLE OF CONTENTS 1 Sybase Unwired Platform 1 Mobile Application Development 2 Mobile Business Object (MBO) Development 4 Mobile
Chapter 13: Program Development and Programming Languages
Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases
An Eclipse Plug-In for Visualizing Java Code Dependencies on Relational Databases Paul L. Bergstein, Priyanka Gariba, Vaibhavi Pisolkar, and Sheetal Subbanwad Dept. of Computer and Information Science,
AWS Service Catalog. User Guide
AWS Service Catalog User Guide AWS Service Catalog: User Guide Copyright 2016 Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in
"Charting the Course...... to Your Success!" MOC 10174 B Configuring and Administering Microsoft SharePoint 2010. Course Summary
Description Course Summary This five-day instructor-led course teaches students how to install, configure, and administer Microsoft SharePoint and also how to manage and monitor sites and users by using
Your guide to DevOps. Bring developers, IT, and the latest tools together to create a smarter, leaner, more successful coding machine
Your guide to DevOps Bring developers, IT, and the latest tools together to create a smarter, leaner, more successful coding machine Introduction The move to DevOps involves more than new processes and
Mirjam van Olst. Best Practices & Considerations for Designing Your SharePoint Logical Architecture
Mirjam van Olst Best Practices & Considerations for Designing Your SharePoint Logical Architecture About me http://sharepointchick.com @mirjamvanolst [email protected] Agenda Introduction Logical Architecture
Masters in Human Computer Interaction
Masters in Human Computer Interaction Programme Requirements Taught Element, and PG Diploma in Human Computer Interaction: 120 credits: IS5101 CS5001 CS5040 CS5041 CS5042 or CS5044 up to 30 credits from
Masters in Advanced Computer Science
Masters in Advanced Computer Science Programme Requirements Taught Element, and PG Diploma in Advanced Computer Science: 120 credits: IS5101 CS5001 up to 30 credits from CS4100 - CS4450, subject to appropriate
Embarcadero DataU Conference. Data Governance. Francis McWilliams. Solutions Architect. Master Your Data
Data Governance Francis McWilliams Solutions Architect Master Your Data A Level Set Data Governance Some definitions... Business and IT leaders making strategic decisions regarding an enterprise s data
Tech Notes. Corporate Headquarters EMEA Headquarters Asia-Pacific Headquarters 100 California Street, 12th Floor San Francisco, California 94111
Tech Notes Faster Application Development via Improved Database Change Management Integrating Database Change Management with Software Development to Reduce Errors, Re-Work, and Testing Efforts Embarcadero
Cloud & Datacenter Monitoring with System Center Operations Manager
Page 1 of 5 Overview This course equips students with the skills they require to deploy and configure System Center 2012 R2 Operations. Using hands-on labs, students learn the following: How to architect
Masters in Artificial Intelligence
Masters in Artificial Intelligence Programme Requirements Taught Element, and PG Diploma in Artificial Intelligence: 120 credits: IS5101 CS5001 CS5010 CS5011 CS4402 or CS5012 in total, up to 30 credits
Chapter 12 Programming Concepts and Languages
Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Paradigm Publishing, Inc. 12-1 Presentation Overview Programming Concepts Problem-Solving Techniques The Evolution
Why NetDimensions Learning
Why NetDimensions Learning Quick To Implement Lower overall costs NetDimensions Learning can be deployed faster and with fewer implementation services than almost any other learning system in the market.
Masters in Networks and Distributed Systems
Masters in Networks and Distributed Systems Programme Requirements Taught Element, and PG Diploma in Networks and Distributed Systems: 120 credits: IS5101 CS5001 CS5021 CS4103 or CS5023 in total, up to
Latte Rapid Application Development. William Dunlap Product Manager Borland International [email protected]
Latte Rapid Application Development William Dunlap Product Manager Borland International [email protected] Business Computing Evolution C/S Application Development Collaborative App Development Web
What is a programming language?
Overview Introduction Motivation Why study programming languages? Some key concepts What is a programming language? Artificial language" Computers" Programs" Syntax" Semantics" What is a programming language?...there
MDA Overview OMG. Enterprise Architect UML 2 Case Tool by Sparx Systems http://www.sparxsystems.com. by Sparx Systems
OMG MDA Overview by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page:1 Trademarks Object Management Group, OMG, CORBA, Model Driven Architecture, MDA, Unified Modeling Language, UML,
OUR COURSES 19 November 2015. All prices are per person in Swedish Krona. Solid Beans AB Kungsgatan 32 411 19 Göteborg Sweden
OUR COURSES 19 November 2015 Solid Beans AB Kungsgatan 32 411 19 Göteborg Sweden Java for beginners JavaEE EJB 3.1 JSF (Java Server Faces) PrimeFaces Spring Core Spring Advanced Maven One day intensive
Computer Science Course Descriptions Page 1
CS 101 Intro to Computer Science An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating systems, the Internet,
McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0
1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level
Business Process Management with @enterprise
Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase
TIBCO ActiveMatrix BPM SOA Concepts
Software Release 4.0 November 2015 Two-Second Advantage 2 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE
Communiqué 4. Standardized Global Content Management. Designed for World s Leading Enterprises. Industry Leading Products & Platform
Communiqué 4 Standardized Communiqué 4 - fully implementing the JCR (JSR 170) Content Repository Standard, managing digital business information, applications and processes through the web. Communiqué
WebSphere Application Server - Introduction, Monitoring Tools, & Administration
WebSphere Application Server - Introduction, Monitoring Tools, & Administration presented by: Michael S. Pallos, MBA Senior Solution Architect IBM Certified Systems Expert: WebSphere MQ 5.2 e-business
1z0-102 Q&A. DEMO Version
Oracle Weblogic Server 11g: System Administration Q&A DEMO Version Copyright (c) 2013 Chinatag LLC. All rights reserved. Important Note Please Read Carefully For demonstration purpose only, this free version
Oracle WebLogic Server 11g Administration
Oracle WebLogic Server 11g Administration This course is designed to provide instruction and hands-on practice in installing and configuring Oracle WebLogic Server 11g. These tasks include starting and
What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process
1 2 3 What is Enterprise Architect? Enterprise Architect is a visual platform for designing and constructing software systems, for business process modeling, and for more generalized modeling purposes.
Enhancing The ALM Experience
Enhancing The ALM Experience Tools to Accelerate Delivery of Secure, Reliable Modern Applications Brent Dorenkamp Solutions Architect Agenda Application Modernization and the Instant-On Enterprise Building
Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
Software Engineering Best Practices. Christian Hartshorne Field Engineer Daniel Thomas Internal Sales Engineer
Software Engineering Best Practices Christian Hartshorne Field Engineer Daniel Thomas Internal Sales Engineer 2 3 4 Examples of Software Engineering Debt (just some of the most common LabVIEW development
Applying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
How To Understand Programming Languages And Programming Languages
Objectives Differentiate between machine and and assembly languages Describe Describe various various ways ways to to develop develop Web Web pages pages including including HTML, HTML, scripting scripting
Oracle Data Integrator: Administration and Development
Oracle Data Integrator: Administration and Development What you will learn: In this course you will get an overview of the Active Integration Platform Architecture, and a complete-walk through of the steps
BIRT Application and BIRT Report Deployment Functional Specification
Functional Specification Version 1: October 6, 2005 Abstract This document describes how the user will deploy a BIRT Application and BIRT reports to the Application Server. Document Revisions Version Date
GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns
Introducing FACTORY SCHEMES Adaptable software factory Patterns FACTORY SCHEMES 3 Standard Edition Community & Enterprise Key Benefits and Features GECKO Software http://consulting.bygecko.com Email: [email protected]
An introduction to the benefits of Application Lifecycle Management
An introduction to the benefits of Application Lifecycle Management IKAN ALM increases team productivity, improves application quality, lowers the costs and speeds up the time-to-market of the entire application
CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS
CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS Java EE Components Java EE Vendor Specifications Containers Java EE Blueprint Services JDBC Data Sources Java Naming and Directory Interface Java Message
Customer Bank Account Management System Technical Specification Document
Customer Bank Account Management System Technical Specification Document Technical Specification Document Page 1 of 15 Table of Contents Contents 1 Introduction 3 2 Design Overview 4 3 Topology Diagram.6
JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS QUARTER 2 NETWORKING AND OPERATING SYSTEMS ESSENTIALS. Module 1 - Office Applications
SOFTWARE ENGINEERING TRACK JAVA Technologies QUARTER 1 DESKTOP APPLICATIONS - ESSENTIALS Module 1 - Office Applications This subject enables users to acquire the necessary knowledge and skills to use Office
