Introduction to Software Engineering

Total Page:16

File Type:pdf, Size:1020Kb

Introduction to Software Engineering Introduction to Software Engineering Edited by R.P. Lano (Version 0.1) Table of Contents Introduction to Software Engineering..................................................................................................1 Introduction........................................................................................................................................13 Preface...........................................................................................................................................13 Introduction....................................................................................................................................13 History...........................................................................................................................................14 References......................................................................................................................................15 Software Engineer..........................................................................................................................15 Overview........................................................................................................................................15 Education.......................................................................................................................................16 Profession.......................................................................................................................................17 Debates within software engineering.............................................................................................18 References......................................................................................................................................18 UML...................................................................................................................................................19 Introduction....................................................................................................................................19 Overview........................................................................................................................................19 Modeling........................................................................................................................................19 Diagrams overview........................................................................................................................20 UML Modelling Tools...................................................................................................................21 References......................................................................................................................................21 Examples........................................................................................................................................22 Example: Bill at the Restaurant.....................................................................................................22 Use Case Diagram.........................................................................................................................22 Activity Diagram...........................................................................................................................22 Sequence Diagram.........................................................................................................................23 Collaboration Diagram..................................................................................................................23 Class Diagram................................................................................................................................23 Process & Methodology.....................................................................................................................25 Introduction....................................................................................................................................25 Software Development Activities..................................................................................................25 References......................................................................................................................................26 External links.................................................................................................................................27 Methodology..................................................................................................................................27 History...........................................................................................................................................27 Verb approaches............................................................................................................................29 Subtopics........................................................................................................................................33 See also..........................................................................................................................................38 References......................................................................................................................................38 External links.................................................................................................................................39 V-Model.........................................................................................................................................39 Verification Phases........................................................................................................................40 Validation Phases...........................................................................................................................41 References......................................................................................................................................43 Further reading...............................................................................................................................43 External links.................................................................................................................................43 Agile Model...................................................................................................................................44 History...........................................................................................................................................44 Characteristics................................................................................................................................46 2 Comparison with other methods....................................................................................................47 Agile methods................................................................................................................................48 Measuring agility...........................................................................................................................49 Experience and reception...............................................................................................................49 References......................................................................................................................................51 Further reading...............................................................................................................................53 External links.................................................................................................................................54 Standards........................................................................................................................................54 External Links................................................................................................................................55 Life Cycle......................................................................................................................................55 Overview........................................................................................................................................56 History...........................................................................................................................................56 Systems development phases.........................................................................................................57 Systems Analysis and Design........................................................................................................60 Systems development life cycle topics..........................................................................................60 Strengths and weaknesses..............................................................................................................62 References......................................................................................................................................63 Further reading...............................................................................................................................64 External links.................................................................................................................................64 Rapid Application
Recommended publications
  • Microsoft Macro Assembler Version 5.1.PDF
    Microsoft. Macro Assembler Version 5.1 • For the MS® OS/2 or MS-DOS® Operating System Microsoft Macro Asset bier version 5.1 puts all the speed and power of assembly-lar uage programming within easy reach. Make your programs run faster by linking assembly-language subroutines to your Microsoft QuickBASIC, BASIC compiler, C, FORTRAN, and Pascal programs. Technical Highlights If you're accustomed to programming beyond the level of documentation the correct model for your subroutine, in a high-level language like Microsoft supplied with previous versions of just use the MODEL directive and choose QuickBASIC, BASIC compiler, QuickC, Microsoft Macro Assembler. This totally the model you need. To start your data C, FORTRAN, or Pascal, Microsoft revised guide provides a complete and segment, just add a DATA directive; Macro Assembler version 5.1 is the bridge well-organized explanation of Microsoft to create a stack, add a STACK directive; you've been looking for to the assembly- Macro Assembler and the instruction and to begin writing instructions, use language environment. You can, for sets it supports. the CODE directive. example, use the powerful graphics func- What's more, the Mixed-Language High-level language interface tions of Microsoft QuickBASIC or the Programming Guide included with Micro- macros help you declare your subroutines, efficient math functions of Microsoft soft Macro Assembler version 5.1 con- set up stack parameters, and create local FORTRAN and then add time-critical tains complete, easy-to-follow instructions variables. In addition, version 5.1 offers routines in Microsoft Macro Assembler. on how to call assembly-language sub- MS-DOS interface macros that make it Easier to learn and use.
    [Show full text]
  • Current Trends in Vector-Based Internet Mapping: a Technical Review
    Chapter 3 Current Trends in Vector-Based Internet Mapping: A Technical Review Christophe Lienert, Bernhard Jenny, Olaf Schnabel, and Lorenz Hurni Abstract Possibilities and limitations of Internet cartography software largely depend on the pace set by the software industry. The variety of commercial and non-commercial software caters for the needs of a continuously growing mapping community, including both professional and amateur cartographers. This chapter provides an overview of state-of-the-art technologies for vector-based Web- mapping as of the beginning of 2011. Both proprietary and open format technologies are discussed for vector data rendering in browsers, highlighting their advantages and disadvantages. The discussed technologies are Adobe Flash, Microsoft Silverlight, Scalable Vector Graphics (SVG), JavaFX, Canvas, and WebGL. The chapter also discusses client and server side frameworks which provide Application Programming Interfaces (APIs) for creating custom interactive maps, mainly by overlaying raster images with vector data. 3.1 Introduction Internet maps are the major form of spatial information delivery, as the Internet is today the primary medium for the transmission and dissemination of maps (Peterson 2008). For map authors, the maze of available techniques for creating and distributing Web maps is overwhelming, while authoring tools for Web-maps meeting the demands of high-quality cartography are difficult to find. Map authors may choose between GIS and graphics software products to create maps for the Internet, but these off-the-shelve maps oftentimes fall short of effectively convey- ing information. There are three main reasons for this shortcoming: (a) the design of these maps sometimes does not take into account the specific limitations of digital displays (Jenny et al., 2008); (b) the maps are often restricted in using standard C.
    [Show full text]
  • IBM Research Report Software Development As a Service: Agile
    RJ10476 (A1011-022) November 19, 2010 Other IBM Research Report Software Development as a Service: Agile Experiences Tobin J. Lehman IBM Research Division Almaden Research Center 650 Harry Road San Jose, CA 95120-6099 USA Akhilesh Sharma IBM Global Services IBM Almaden Research Center 650 Harry Road San Jose, CA 95120-6099 USA Research Division Almaden - Austin - Beijing - Cambridge - Haifa - India - T. J. Watson - Tokyo - Zurich LIMITED DISTRIBUTION NOTICE: This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and specific requests. After outside publication, requests should be filled only by reprints or legally obtained copies of the article (e.g. , payment of royalties). Copies may be requested from IBM T. J. Watson Research Center , P. O. Box 218, Yorktown Heights, NY 10598 USA (email: [email protected]). Some reports are available on the internet at http://domino.watson.ibm.com/library/CyberDig.nsf/home . Software Development as a Service: Agile Experiences Tobin J. Lehman Akhilesh Sharma Almaden Services Research IBM Global Services IBM Almaden Research Center IBM Almaden Research Center San Jose, California, U.S.A. San Jose, California, U.S.A [email protected] [email protected] Abstract— At the IBM Almaden Research Center, we have projects from our past as examples, we show that the level of been working with other divisions of IBM, offering Software program technology and requirement understanding Development as a Service (SDaaS).
    [Show full text]
  • Rich Internet Applications
    Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight Master of Science Thesis in the Programme Software Engineering and Technology CARL-DAVID GRANBÄCK Department of Computer Science and Engineering CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG Göteborg, Sweden, October 2009 The Author grants to Chalmers University of Technology and University of Gothenburg the non-exclusive right to publish the Work electronically and in a non-commercial purpose make it accessible on the Internet. The Author warrants that he/she is the author to the Work, and warrants that the Work does not contain text, pictures or other material that violates copyright law. The Author shall, when transferring the rights of the Work to a third party (for example a publisher or a company), acknowledge the third party about this agreement. If the Author has signed a copyright agreement with a third party regarding the Work, the Author warrants hereby that he/she has obtained any necessary permission from this third party to let Chalmers University of Technology and University of Gothenburg store the Work electronically and make it accessible on the Internet. Rich Internet Applications (RIAs) A Comparison Between Adobe Flex, JavaFX and Microsoft Silverlight CARL-DAVID GRANBÄCK © CARL-DAVID GRANBÄCK, October 2009. Examiner: BJÖRN VON SYDOW Department of Computer Science and Engineering Chalmers University of Technology SE-412 96 Göteborg Sweden Telephone + 46 (0)31-772 1000 Department of Computer Science and Engineering Göteborg, Sweden, October 2009 Abstract This Master's thesis report describes and compares the three Rich Internet Application !RIA" frameworks Adobe Flex, JavaFX and Microsoft Silverlight.
    [Show full text]
  • Java Programming Standards & Reference Guide
    Java Programming Standards & Reference Guide Version 3.2 Office of Information & Technology Department of Veterans Affairs Java Programming Standards & Reference Guide, Version 3.2 REVISION HISTORY DATE VER. DESCRIPTION AUTHOR CONTRIBUTORS 10-26-15 3.2 Added Logging Sid Everhart JSC Standards , updated Vic Pezzolla checkstyle installation instructions and package name rules. 11-14-14 3.1 Added ground rules for Vic Pezzolla JSC enforcement 9-26-14 3.0 Document is continually Raymond JSC and several being edited for Steele OI&T noteworthy technical accuracy and / PD Subject Matter compliance to JSC Experts (SMEs) standards. 12-1-09 2.0 Document Updated Michael Huneycutt Sr 4-7-05 1.2 Document Updated Sachin Mai L Vo Sharma Lyn D Teague Rajesh Somannair Katherine Stark Niharika Goyal Ron Ruzbacki 3-4-05 1.0 Document Created Sachin Sharma i Java Programming Standards & Reference Guide, Version 3.2 ABSTRACT The VA Java Development Community has been establishing standards, capturing industry best practices, and applying the insight of experienced (and seasoned) VA developers to develop this “Java Programming Standards & Reference Guide”. The Java Standards Committee (JSC) team is encouraging the use of CheckStyle (in the Eclipse IDE environment) to quickly scan Java code, to locate Java programming standard errors, find inconsistencies, and generally help build program conformance. The benefits of writing quality Java code infused with consistent coding and documentation standards is critical to the efforts of the Department of Veterans Affairs (VA). This document stands for the quality, readability, consistency and maintainability of code development and it applies to all VA Java programmers (including contractors).
    [Show full text]
  • Embedded Linux Systems with the Yocto Project™
    OPEN SOURCE SOFTWARE DEVELOPMENT SERIES Embedded Linux Systems with the Yocto Project" FREE SAMPLE CHAPTER SHARE WITH OTHERS �f, � � � � Embedded Linux Systems with the Yocto ProjectTM This page intentionally left blank Embedded Linux Systems with the Yocto ProjectTM Rudolf J. Streif Boston • Columbus • Indianapolis • New York • San Francisco • Amsterdam • Cape Town Dubai • London • Madrid • Milan • Munich • Paris • Montreal • Toronto • Delhi • Mexico City São Paulo • Sidney • Hong Kong • Seoul • Singapore • Taipei • Tokyo Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the designations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or consequential damages in connection with or arising out of the use of the information or programs contained herein. For information about buying this title in bulk quantities, or for special sales opportunities (which may include electronic versions; custom cover designs; and content particular to your business, training goals, marketing focus, or branding interests), please contact our corporate sales depart- ment at [email protected] or (800) 382-3419. For government sales inquiries, please contact [email protected]. For questions about sales outside the U.S., please contact [email protected]. Visit us on the Web: informit.com Cataloging-in-Publication Data is on file with the Library of Congress.
    [Show full text]
  • Command Line Interface
    Command Line Interface Squore 21.0.2 Last updated 2021-08-19 Table of Contents Preface. 1 Foreword. 1 Licence. 1 Warranty . 1 Responsabilities . 2 Contacting Vector Informatik GmbH Product Support. 2 Getting the Latest Version of this Manual . 2 1. Introduction . 3 2. Installing Squore Agent . 4 Prerequisites . 4 Download . 4 Upgrade . 4 Uninstall . 5 3. Using Squore Agent . 6 Command Line Structure . 6 Command Line Reference . 6 Squore Agent Options. 6 Project Build Parameters . 7 Exit Codes. 13 4. Managing Credentials . 14 Saving Credentials . 14 Encrypting Credentials . 15 Migrating Old Credentials Format . 16 5. Advanced Configuration . 17 Defining Server Dependencies . 17 Adding config.xml File . 17 Using Java System Properties. 18 Setting up HTTPS . 18 Appendix A: Repository Connectors . 19 ClearCase . 19 CVS . 19 Folder Path . 20 Folder (use GNATHub). 21 Git. 21 Perforce . 23 PTC Integrity . 25 SVN . 26 Synergy. 28 TFS . 30 Zip Upload . 32 Using Multiple Nodes . 32 Appendix B: Data Providers . 34 AntiC . 34 Automotive Coverage Import . 34 Automotive Tag Import. 35 Axivion. 35 BullseyeCoverage Code Coverage Analyzer. 36 CANoe. 36 Cantata . 38 CheckStyle. ..
    [Show full text]
  • Security Testing
    ISSN 1866-5705 www.testingexperience.com free digital version print version 8,00 € printed in Germany 6 The Magazine for Professional Testers The MagazineforProfessional Security Testing © iStockphoto/alexandru_lamba June, 2009 © iStockphoto/Manu1174 ISTQB® Certified Tester Foundation Level for only 499,- € plus VAT ONLINE TRAINING English & German www.testingexperience.learntesting.com Certified Tester Advanced Level coming soon Editorial Dear readers, One of my professors at the university said once to all of us: Computer scientists are at some point criminals. What he meant was that we or some of us – computer scientists – at some point like to try things that are not that “legal”. The most of us are “clean”, but some of us are “free time hackers”! Nowadays the hackers are almost away from the 17 years old guy, trying to pen- etrate in some website and so on. They are now adults, with families, cars, pets, holidays and a job. They are professionals earning money for acting as such. Application Security is not only important and essential for the companies and their businesses, technology and employees. Application Security is a macroeco- nomic aspect for the countries. There are a lot of secret services or governments agencies working on getting technology or information by advance hacking the server and databases of top companies or governments worldwide. When we hear that some countries could be behind the penetration of the USA electricity net- work, you can imagine what is going on outside. Are we testers prepared for that job? I’m not! Last year we had the first tutorial by Manu Cohen about Application Security Testing.
    [Show full text]
  • Rmox: a Raw-Metal Occam Experiment
    Communicating Process Architectures – 2003 269 Jan F. Broenink and Gerald H. Hilderink (Eds.) IOS Press, 2003 RMoX: A Raw-Metal occam Experiment Fred BARNES†, Christian JACOBSEN† and Brian VINTER‡ † Computing Laboratory, University of Kent, Canterbury, Kent, CT2 7NF, England. {frmb2,clj3}@kent.ac.uk ‡ Department of Mathematics and Computer Science, University of Southern Denmark, Odense, Denmark. [email protected] Abstract. Operating-systems are the core software component of many modern com- puter systems, ranging from small specialised embedded systems through to large distributed operating-systems. This paper presents RMoX: a highly concurrent CSP- based operating-system written in occam. The motivation for this stems from the overwhelming need for reliable, secure and scalable operating-systems. The major- ity of operating-systems are written in C, a language that easily offers the level of flexibility required (for example, interfacing with assembly routines). C compilers, however, provide little or no mechanism to guard against race-hazard and aliasing er- rors, that can lead to catastrophic run-time failure (as well as to more subtle errors, such as security loop-holes). The RMoX operating-system presents a novel approach to operating-system design (although this is not the first CSP-based operating-system). Concurrency is utilised at all levels, resulting in a system design that is well defined, easily understood and scalable. The implementation, using the KRoC extended oc- cam, provides guarantees of freedom from race-hazard and aliasing errors, and makes extensive use of the recently added support for dynamic process creation and channel mobility. Whilst targeted at mainstream computing, the ideas and methods presented are equally applicable for small-scale embedded systems — where advantage can be made of the lightweight nature of RMoX (providing fast interrupt responses, for ex- ample).
    [Show full text]
  • Flex Resources*
    OpenStax-CNX module: m34542 1 Flex Resources* R.G. (Dick) Baldwin This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract The purpose of this document is to provide a list of links to online Flex and ActionScript resources to supplement the other lessons in the series. 1 Table of Contents • Preface (p. 1) • Resources (p. 1) • Miscellaneous (p. 3) 2 Preface This tutorial lesson is part of a series of lessons dedicated to programming using Adobe Flex. The purpose of this document is to provide a list of links to online Flex and ActionScript resources to supplement the other lessons in the series. note: The material in these lessons is based on Flex version 3 and Flex version 4. 3 Resources • Baldwin's Flex programming website 1 • Baldwin's ActionScript programming website 2 • Adobe Flex Home 3 • Download free open-source Adobe Flex 3.5 SDK 4 · Adobe Flex SDK Installation and Release Notes 5 · Application Deployment 6 • Download free open-source Adobe Flex 4 SDK 7 *Version 1.2: Jun 8, 2010 3:07 pm -0500 http://creativecommons.org/licenses/by/3.0/ 1http://www.dickbaldwin.com/tocFlex.htm 2http://www.dickbaldwin.com/tocActionScript.htm 3http://www.adobe.com/products/ex/?promoid=BPDEQ 4http://www.adobe.com/cfusion/entitlement/index.cfm?e=ex3sdk 5http://www.adobe.com/support/documentation/en/ex/3/releasenotes_ex3_sdk.html#installation 6http://livedocs.adobe.com/ex/3/html/help.html?content=Part3_deploy_1.html 7http://opensource.adobe.com/wiki/display/exsdk/Download+Flex+4 http://cnx.org/content/m34542/1.2/
    [Show full text]
  • MASM61PROGUIDE.Pdf
    Introduction (C) 1992-1996 Microsoft Corporation. All rights reserved. Programmer's Guide Microsoft® MASM Assembly-Language Development System Version 6.1 For MS-DOS® and Windows™ Operating Systems Microsoft Corporation Information in this document is subject to change without notice. Companies, names, and data used in examples herein are fictitious unless otherwise noted. No part of this document maybe reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Microsoft Corporation. ©1992 Microsoft Corporation. All rights reserved. Microsoft, MS, MS-DOS, XENIX, CodeView, and QuickC are registered trademarks and Microsoft QuickBasic, QuickPascal, Windows and Windows NT are trademarks of Microsoft Corporation in the USA and other countries. U.S. Patent No. 4,955,066 Hercules is a registered trademark of Hercules Computer Technology. IBM, PS/2, and OS/2 are registered trademarks of International Business Machines Corporation. Intel is a registered trademark of Intel Corporation. NEC and V25 are registered trademarks and V35 is a trademark of NEC Corporation. Document No. DB35747-1292 Printed in the United States of America. Macro Assembler 6.1 (16-bit) - MSDN Archive Edition Page 1 MASM Features New Since Version 5.1 (C) 1992-1996 Microsoft Corporation. All rights reserved. Introduction The Microsoft® Macro Assembler Programmer’s Guide provides the information you need to write and debug assembly-language programs with the Microsoft Macro Assembler (MASM), version 6.1. This book documents enhanced features of the language and the programming environment for MASM 6.1. This Programmer’s Guide is written for experienced programmers who know assembly language and are familiar with an assembler.
    [Show full text]
  • Louisiana Department of Insurance Software Development Standards
    Louisiana Department of Insurance Software Development Standards Louisiana Department of Insurance Table of Contents TABLE OF CONTENTS ....................................................................................... 2 EXECUTIVE SUMMARY ...................................................................................... 3 IMPLEMENTATION OBJECTIVES ...................................................................... 5 LDI SYSTEMS INTEGRATION ............................................................................ 6 LDI ACCEPTABLE TOOLS AND TECHNOLOGIES BY CATEGORY ................ 7 LDI PROJECT MANAGEMENT ......................................................................... 10 LDI PROJECT AND SOFTWARE DELIVERABLES ......................................... 12 SOFTWARE DELIVERABLES ................................................................................. 13 DOCUMENTATION DELIVERABLES ........................................................................ 14 User Documentation/ User Manual ................................................................................... 15 Technical Documentation .................................................................................................. 16 LDI APPLICATION LOOK AND FEEL GUIDELINES ........................................ 19 LDI EXTERNAL BROWSER COMPATIBILITY REQUIREMENTS .................... 20 NETWORK, SERVERS AND MISCELLANEOUS STANDARDS ...................... 21 LDI DEVELOPMENT, TEST AND PRODUCTION ENVIRONMENTS ............... 23 METHODS AND PROCEDURES
    [Show full text]