CS342: Software Design

Total Page:16

File Type:pdf, Size:1020Kb

CS342: Software Design CS342: Software Design Dec. 5, 2017 Today’s topic Adapter pattern Solution stack US plug vs European outlet Adaptee Adapter Client Object oriented adapters Adapter pattern The Adapter Pattern converts the interface of a class into another interface the clients expect. ● Lets classes work together that couldn’t otherwise because of incompatible interfaces. ● Decouple the client from the implemented interface. ● Encapsulates that change so that the client doesn’t have to be modified each time it needs to operate against a different interface Duck vs. turkey Adapter class Test drive the adapter Adapter pattern The Adapter Pattern converts the interface of a class into another interface the clients expect. ● Lets classes work together that couldn’t otherwise because of incompatible interfaces. ● Decouple the client from the implemented interface. ● Encapsulates that change so that the client doesn’t have to be modified each time it needs to operate against a different interface Adapter pattern explained How does the client use the adapter? Adapter pattern advantages ● Object composition ● Program to an interface, not implementation ● Add new implementations without changing interface Adapter diagram Enumerator vs. Iterator EnumerationIterator Technology stack (aka solution stack, software stack) A set of software components to create a complete platform such that no additional software is needed to support applications ● LAMP - linux, apache, mysql, php ● NMP - Nginx, mysql, Php ● WINS (WISA) - Windows, IIS, .NET, SQL ● Java EE ● SMACK: Apache Spark, Mesos, Akka, Cassandra, Kafka ● MEAN/MERN/MEVN Free and open-source JavaScript software stack for building dynamic web sites and web applications ● Mongodb: document oriented db (non-relational) ● Express.js: web application framework, middleware (backend) ● Angular.js: web application framework (front end, MVC) ● Node.js: Javascript runtime for server side Similar stacks MERN, MEVN: react.js (facebook, instagram), vue.js (Google) ● Javascript and JSON in all layers (show examples, code, db, service call) ● Advantages?.
Recommended publications
  • ROBRA – the Snake Robot
    International Journal of Computer Science Trends and Technology (IJCST) – Volume 7 Issue 3, May - Jun 2019 RESEARCH ARTICLE OPEN ACCESS ROBRA – The Snake Robot James M.V, Nandukrishna S, Noyal Jose, Ebin Biju Department of Computer Science and Engineering Toc H Institute of Science & Technology, Ernakulam Kerala – India ABSTRACT Robra - A snake-like robot which, provides the locomotion of a real snake. The shape and size of the robot depends on application. Robra can avoid obstacles by receiving signals from sensors and move with flexibility on terrain surfaces. Multiple joints increases its degree of freedom. It can quickly explore and navigate foreign environments and detect potential dangers for direct human involvement. Robra uses PIR() to detect presence of humans in an environment like civilians trapped in collapsed buildings during natural disasters. It can move through crevices and uneven surfaces. It detects obstacles by using Ultrasonic range movement sensors. This provides noncontact distance between the obstacles to detect and avoid collision with them. Electro chemical sensors are used for detection of poisonous gases. Robra has an onboard camera which records and send the video data in real time via WiFi. Robra has microphones for the survivors to communicate and inform their status incase of rescue aid. Thus Robra covers wide real time applications like surveillance, rescue aid etc. Keywords:- Robra, Snake, act have a wingspan almost 10 feet, giving it an ape-like I. INTRODUCTION appearance. In the past two decades it is estimated that disasters are Momaro - This robot has been specifically designed by the responsible for about 3 million deaths worldwide, 800million team NimbRo Rescue from the University of Bonn in people adversely affected.
    [Show full text]
  • Table of Content
    TABLE OF CONTENT 1. What is Joomla………………………………………………………………. 2 2. Download and Install Joomla………………………………………………. 3 2.1 Pre-installation Check………………………………………………….... 3 2.2 Configuration …………………………………………………………… 4 3. Creating Content……………………………………………………………....9 3.1 Create a Category…………………………………………………………9 3.2 Create Article………………………………………………………………10 4. Modules……………………………………………………………………….. 12 5. How to Show Position for Template?....................................................... 14 6. Menu……………………………………………………………………………16 6.1 How to Create Menu?.........................................................................16 7. User……………………………………………………………………………. 18 7.1 Users Groups…………………………………………………………….. 18 7.2 Add New User……………………………………………………………..19 1 1. What is Joomla? Joomla is a free system for creating websites. It is an open source project, which, like most open source projects, is constantly in motion. It has been extremely successful for seven years now and is popular with millions of users worldwide. The word Joomla is a derivative of the word Joomla from the African language Swahili and means "all together". The project Joomla is the result of a heated discussion between the Mambo Foundation, which was founded in August 2005, and its then-development team. Joomla is a development of the successful system Mambo. Joomla is used all over the world for simple homepages and for complex corporate websites as well. It is easy to install, easy to manage and very reliable. The Joomla team has organized and reorganized itself throughout the last seven years to better meet the user demands. 2 2. Download and Install Joomla “Where and what to download?” “How to install?” In order to install Joomla! on your local computer, it is necessary to set up your "own internet", for which you'll need a browser, a web server, a PHP environment and as well a Joomla supported database system.
    [Show full text]
  • Table of Contents
    Table of Contents Introduction . 3 IT Strategic Plan Synopsis . 4 IT Organization . 6 Our Mission . 7 Our Vision . 7 Enterprise IT Technical Roadmap . 8 Year One — 2012 . 8 Year Two — 2013 . 11 Year Three — 2014 . 14 Technology Timeline . 17 SRNS Leadership Team . 20 SRNS-IT Leadership . 21 Partner CIOs . 22 Information Technology Strategic Background . 23 2012 IT Focus Areas . 24 DOE 2012 Strategic Plan . 25 NNSA 2012 Strategic Plan . 25 DOE Strategic Plan Alignment to IT Focus Areas . 26 NNSA Strategic Plan Alignment to IT Focus Areas . 27 enterprise•SRS 2012 Strategic Plan . 28 e•SRS Strategic Plan Alignment to IT Focus Areas . 29 Attachment A — Accelerating SRS Missions and Reducing Infrastructure through Innovative Computing and Communications . 30 Current Status of 2009 IT Strategic Initiatives . 31 Attachment B — Recent Accomplishments . 34 2012–2014 SRNS Information Technology Strategic Plan Introduction Information Technology’s (IT) objective is to provide our customers with services and solutions that facilitate their day-to-day operations, helping each customer to be successful in meeting their business goals and objectives. Further, it is our intent to meet this objective with services and solutions that adhere to industry standards and best practices, delivered by our staff of talented and skilled people who are attuned to our customers’ businesses and needs and who strive to deliver exceptional services. The goal of this strategic plan is to put forward a roadmap for the next three years (2012-2014) that assists us in identifying the technologies and solutions needed to better support the strategic direction of the Savannah River Site (SRS).
    [Show full text]
  • LUO-THESIS.Pdf (3.607Mb)
    BUILDING A DISTRIBUTED TRUST MODEL OF RESTFUL WEB SERVICES FOR MOBILE DEVICES A Thesis Submitted to the College of Graduate Studies and Research In Partial Fulfillment of the Requirements For the Degree of Master of Science In the Department of Computer Science University of Saskatchewan Saskatoon By Min Luo Copyright Min Luo, September, 2012. All rights reserved. PERMISSION TO USE In presenting this thesis in partial fulfilment of the requirements for a Postgraduate degree from the University of Saskatchewan, I agree that the Libraries of this University may make it freely available for inspection. I further agree that permission for copying of this thesis in any manner, in whole or in part, for scholarly purposes may be granted by the professor or professors who supervised my thesis work or, in their absence, by the Head of the Department or the Dean of the College in which my thesis work was done. It is understood that any copying or publication or use of this thesis or parts thereof for financial gain shall not be allowed without my written permission. It is also understood that due recognition shall be given to me and to the University of Saskatchewan in any scholarly use which may be made of any material in my thesis. Requests for permission to copy or to make other use of material in this thesis in whole or part should be addressed to: Head of the Department of Computer Science 176 Thorvaldson Building 110 Science Place University of Saskatchewan Saskatoon, Saskatchewan (S7N 5C9) ACKNOWLEDGMENTS First of all I would like to thank my supervisor, Dr.
    [Show full text]
  • Demetri Kambanis
    801 N. Fairfax Ave., #312 Los Angeles, CA 90046 917-294-8987 [email protected] Demetri Kambanis Technical Director with 12+ years of agency experience leading large-scale technology projects for Fortune 500 companies. I combine strong technology design/strategy skills with the operational experience running development teams for projects involving a full solution stack. I have expertise in the full software development lifecycle, proficiency in the agile methodology and deep project management skills, having provided the effective planning and implementation that led to numerous successful project launches. I help streamline technology processes and tools that drive efficiencies and ensure quality and project profitability. I have several years of hands-on development expertise in numerous client-side and server-side technologies, including work with content management systems. Strengths include: ! Technical analysis and design, server architecture, solution definition, product evaluation, integration with existing systems ! Day-to-day team operational management, resourcing, staffing and outsourcing ! Hands-on development with front-end and back-end technologies, including work with content management systems ! Strong experience in server and network design and architecture, ensuring performance, availability and security ! Technology project planning and scoping, scheduling, budgeting and estimating ! Strong experience in agile development, test-driven and behavior-driven development ! Relationship with technology partners, vendors
    [Show full text]
  • Web-Base Orientation to Living and Studying in Kokkola, Finland
    Yewon Temitayo Gbetoyon WEB-BASE ORIENTATION TO LIVING AND STUDYING IN KOKKOLA, FINLAND. Bachelor's thesis CENTRIA UNIVERSITY OF APPLIED SCIENCES Degree Programme in Information Technology December, 2012. Abstract CENTRIA UNIVERSITY Date Author OF APPLIED SCIENCES DECEMBER 2012 YEWON TEMITAYO GBETOYON Degree Programme Information Technology Name of thesis WEB-BASE ORIENTATION TO LIVING AND STUDYING IN KOKKOLA, FINLAND Instructor Pages GRZEGORY SZEWCYK [65] Supervisor ARTUR HLOBAZ The aim of this thesis was to create a website that gives general knowledge prospective foreign applicants (full time students and exchange students) applying to Centria University of Applied Sciences, Kokkola to study. The website entails up-to-date information in the area of description of the university, requirements for applying, entrance examination abroad, visa application requirements for non-EU Students. Joomla! 1.5 and XAMMP were the two software employed for designing the website. The rudiments and functionalities that came with Joomla and XAMMP made it possible to build a complete website. However, a number of challenges were encountered while creating a suitable template and employing the right modules for the intended purposes of the website. These problems were resolved with the help of the Joomla forum and supports that Joomla user can get from free from the Joomla website (www.forum .joomla.org). Moreso, for the creation of a full website, Joomla may be required as a good option for designing a website because every year the developers of Joomla add new features that make website designing more comprehensible. Therefore, for the purpose of this thesis, a website designed with Joomla that gives rise to the creation of many web pages and the results of the website is presented in the framework.
    [Show full text]
  • Arcnews Summer 2014 Newsletter
    ArcNews Esri | Summer 2014 | Vol. 36, No. 2 White House Climate Data Initiative Advances on Many Fronts Coastal flooding. Sea level rise. Drought. The Obama administration says The ArcGIS Platform in 2014 it wants to help communities better prepare for climate change effects like People today expect to access the information they need, collaborate with others, and produce these by using scientific data, technology, and technical know-how from the results at any time, on any device, from wherever they are. The line between the work people do public and private sectors. inside and outside their offices is blurring; analysis and decision making are taking place whenever Esri is joining Microsoft and several other tech companies to provide tech- and wherever they need to occur. In anticipation of these growing trends, Esri has evolved ArcGIS nology and expertise for the White House’s Climate Data Initiative. into a location platform that gives people in any organization the ability to discover, use, make, and “The notion is to create and share knowledge to make communities more share maps from any device, anywhere, at any time. resilient,” said Esri president Jack Dangermond. continued on page 4 ArcGIS Already Supports GeoPackage Esri Leads in Supporting OGC Standards “Esri continues to add support for many open and interoperable data sources,” says Keith Ryden, Esri software development team member, who led Esri’s work on GeoPackage and worked on the Open Geospatial Consortium, Inc. (OGC), standard. “Adding GeoPackage support was a natural progres- sion to our previous support of OGC WMS, WMTS, WFS, WCS, and OGC KML.
    [Show full text]
  • The OSCAR Solution Stack for Cluster Computing the OSCAR Solution
    The OSCAR Solution Stack for Cluster Computing The OSCAR Solution Stack for Cluster Computing Tim Mattson Intel Corp Computational Software labs U.S.A. OSCAR [email protected] Skip my intro Agenda l Cluster Computing Software Stacks – What they are and why we desperately need a common base software stack. l OSCAR and the Open Cluster Group l OSCAR Today l OSCAR Tomorrow l Cluster Computing Standards The OSCAR Solution Stack for Cluster Computing1 The OSCAR Solution Stack for Cluster Computing Intel wants to get rich with clusters The role of Independent Software Vendors l Intel likes cluster since they so many high-end processors per system. l … but people don’t buy computers, they buy problem solutions (I.e. applications+computers to run them). l Hence if we want a healthy HPC industry, we need a rich set of cluster-enabled applications. TheThe academic/nationalacademic/national lablab sharesshares thisthis needneed withwith industry.industry. IndustrialIndustrial HPCHPC useuse translatestranslates intointo betterbetter productsproducts andand moremore fundingfunding So where is the cluster software? l Except for a few CFD# codes, crash codes, a handful of bioinformatics and chemistry codes, and a smattering of other codes, there aren’t many ISV* supported cluster enabled codes. l Most ISV’s have ignored parallel computing. l Why is this the case? *ISV = Independent Software Vendor #CFD = Computational Fluid Dynamics The OSCAR Solution Stack for Cluster Computing2 The OSCAR Solution Stack for Cluster Computing In the late 80’s, we thought portable programming environments were the solution. So computer scientists created a few… ABCPL CORRELATE GLU Mentat Parafrase2 ACE CPS GUARD Legion Paralation pC++ ACT++ CRL HAsL.
    [Show full text]
  • A Content Management System for the Layman
    Columbus State University CSU ePress Theses and Dissertations Student Publications 2014 CMSVega: A Content Management System for the Layman Roshan P.J. Nedumpurath [email protected] Follow this and additional works at: https://csuepress.columbusstate.edu/theses_dissertations Part of the Computer Sciences Commons Recommended Citation Nedumpurath, Roshan P.J., "CMSVega: A Content Management System for the Layman" (2014). Theses and Dissertations. 110. https://csuepress.columbusstate.edu/theses_dissertations/110 This Thesis is brought to you for free and open access by the Student Publications at CSU ePress. It has been accepted for inclusion in Theses and Dissertations by an authorized administrator of CSU ePress. CMSVega: A Content Management System for the Layman by Roshan Paul J. Nedumpurath A Thesis Submitted in Partial Fulfillment of Requirements of the CSU Honors College for Honors in the degree of Bachelor of Science in Computer Science TSYS School of Computer Science Columbus State University Thesis Advisor >/U/v DateA^R-(^ Prof. Aurelia Smith Committee Member Date V^^4 Dr. Shamim Khan Honors Committee Member aM*A Date -3[Ztf/lj Dr. Kimbeprv Shaw Honors Program Director f(' Tsl£~-^ / Date <3Mjy r. Cindy Ticknor Table of Contents Abstract 3 Proposal 4 Project Overview 6 Basic Configurations 6 Page Management 7 Modules 7 Template Engine 7 Security 8 Deployment Prerequisite 8 CMSVega Screenshots 10 Front-end view 10 Administrator View - Page Modification 11 Administrator View - Gallery Module Administration 12 Development Timeline 13 Blind Study 14 Results 15 Future Work 16 Conclusion 17 References 18 Abstract Content management systems are becoming increasingly convoluted to use. Existing website creation systems require users without programming knowledge to scour documentation.
    [Show full text]
  • Master Agreement
    PUBLIC SECTOR SOLUTIONS we solve IT'" PROPOSAL PREPARED FOR: Education Service Center, Region 10 PROJECT: Request for Proposal for Technology Software, Equipment, Services and Related Solutions DUE: March 25, 2020 by 2:00 PM PREPARED BY: Corey Petersen Director SLED Sales Connection® Public Sector Solutions March 23, 2020 ,."i'.,: .. ,:.~. ·;-i~•-~.{'. /1~/',' ~.::.,, Connection® Public Sector Solutions • 732 Milford Road • Merrimack, NH 03054 • www.connection.com/ps EXECUTIVE SUMMARY / COVER LETTER March 23, 2020 Education Service Center, Region 10 400 E. Spring Valley Road Richardson, TX 75081 Electronic Submission: https://region10.bonfirehub.com/portal/?tab=login RE: Request for Proposal for Technology Software, Equipment, Services and Related Solutions Attn: Clint Pechacek, Purchasing Consultant We, at GovConnection, Inc. d/b/a Connection Public Sector Solutions (Connection), appreciate the opportunity to respond to the Education Service Center, Region 10 (Region 10 ESC) Request for Proposal (RFP) for Technology Software, Equipment, Services and Related Solutions, and offer the enclosed response for your review and consideration. Our Understanding: We understand that Region 10 ESC is seeking solicitations from qualified suppliers to enter into a Vendor Contract for the Technology Software, Equipment, Services and Related Solutions, as defined in this RFP. The resulting contract will assist Region 10 ESC in fulfilling its mission to: • Provide governmental and public entities opportunities for greater efficiency and economy in procuring goods and services. • Take advantage of state-of-the-art purchasing procedures to ensure the most competitive contracts. • Provide competitive price and bulk purchasing for multiple government or public agencies that yields economic benefits unobtainable by the individual entity. • Provide quick and efficient delivery of goods and services.
    [Show full text]
  • The On-Demand Application Server Platform Der
    RTB_076-077.qxd 4/12/06 11:48 AM Page 76 The On-Demand Application Server Platform der telos offers a unique combination of client-side Etelos Application Server Platform, the Operating Solution Provi Solution E software, pre-built applications and integrated serv- System, Database, Web server, Mail server and er technologies to help you design your ideal solution. Development Environment are all integrated and based With the Etelos Application Server (EAS) Platform at on robust, open-source solutions integrated into the your disposal, you can deploy solutions to impact organi- Etelos software stack. zational performance with revolutionary speed. The chal- lenge with most products on the market today is What You Don’t Have to Build? sacrificing customization for the ability to rapidly deploy a Dozens of Integrated Features solution. With Etelos you can have both. You can feel free The Etelos Application Server manages the system- to design a solution that solves your business problem, critical functions for you to simplify the development and and rest assured that it can be implemented more quickly deployment of your Etelos-built applications. These sys- and cost-effectively than with conventional development tems include the integrated contact database, variable environments or off-the-shelf solutions. content, Web and email distribution and more. Each layer in the Etelos Application Server manages an important Prepackaged & Customizable fundamental component of successful solutions. Applications Etelos Application Server Manages these Systems Probably the best part about the Etelos solution is the with Preconfigured Features: way the final product is packaged. Users do not have to I Contact Management start with an empty database.
    [Show full text]
  • Security Risk Management for the Internet of Things
    SECURITY RISK MANAGEMENT FOR THE INTERNET OF THINGS TECHNOLOGIES AND TECHNIQUES FOR IOT SECURITY,PRIVACY AND DATA PROTECTION JOHN SOLDATOS (Editor) Published, sold and distributed by: now Publishers Inc. PO Box 1024 Hanover, MA 02339 United States Tel. +1-781-985-4510 www.nowpublishers.com [email protected] Outside North America: now Publishers Inc. PO Box 179 2600 AD Delft The Netherlands Tel. +31-6-51115274 ISBN: 978-1-68083-682-0 E-ISBN: 978-1-68083-683-7 DOI: 10.1561/9781680836837 Copyright © 2020 John Soldatos Suggested citation: John Soldatos (ed.). (2020). Security Risk Management for the Internet of Things. Boston–Delft: Now Publishers The work will be available online open access and governed by the Creative Commons “Attribution-Non Commercial” License (CC BY-NC), according to https://creativecommons.org/ licenses/by-nc/4.0/ Table of Contents Foreword xi Preface xv Glossary xxi Chapter 1 Introduction 1 By John Soldatos 1.1 Introduction...............................................1 1.2 Overview and Limitations of Security Risk Assessment Frameworks................................................5 1.2.1 Overview of Security Risk Assessment.........................5 1.2.2 Limitations of Security Risk Assessment Frameworks for IoT.....7 1.3 New Technology Enablers and Novel Security Concepts..........9 1.3.1 IoT Security Knowledge Bases...............................9 1.3.2 IoT Reference Architectures and Security Frameworks........... 10 1.3.3 Blockchain Technology for Decentralized Secure Data Sharing for Security in IoT Value Chains............................. 10 1.3.4 Technologies Facilitating GDPR Compliance.................. 12 1.3.5 Machine Learning and Artificial Intelligence Technologies for Data-driven Security........................................ 13 1.4 Conclusion................................................. 13 Acknowledgments..............................................
    [Show full text]