Software Development Tools and Frameworks



Similar documents
Jenkins Continuous Build System. Jesse Bowes CSCI-5828 Spring 2012

Software infrastructure for Java development projects

Effektiver Tool-Einsatz

GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns

SA4 Software Developer Survey Survey Specification v2.2

Java Power Tools. John Ferguson Smart. ULB Darmstadt 1 PI. O'REILLY 4 Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo

Build management & Continuous integration. with Maven & Hudson

Introduction to OpenTM2 An Open Source Solution for Translators

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Releasing High Quality Applications More Quickly with vrealize Code Stream

Mastering Continuous Integration with Jenkins

Continuous Integration and Bamboo. Ryan Cutter CSCI Spring Semester

Continuous Integration in Kieker

Upping the game. Improving your software development process

November 12 th 13 th London: Mastering Continuous Integration with Jenkins

Software Development and Evolution

Java Software Quality Tools and techniques

Master Module SNET2 Seminar & Project Summer Term 2010

RepoGuard Validation Framework for Version Control Systems

Seminar Selected Topics in Communication Management Selected Topics in IT Security

HP ALM11 & MS VS/TFS2010

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Continuous Integration: A case study

Master Seminar Cloud Computing

Requirements Management

Development Testing for Agile Environments

Security Automation in Agile SDLC Real World Cases

Software Construction

MSc Programme Intelligent Adaptive Systems (IAS)

Lancelot Bertrand Expert Java J2ee

SAS in clinical trials A relook at project management,

Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software

How the Open Source tools and spirit enable better projects July 09 th 2009

The future of middleware: enterprise application integration and Fuse

Role Description dotnet and SharePoint Developer; Enterprise Systems Integration; IT & Business Systems; BBC Engineering.

Please see below open positions at Quality Assurance Department at Hyland, creator of OnBase.

Document Management. Document Management for the Agile Enterprise. AuraTech Pte Ltd

Improving Software Quality with the Continuous Integration Server Hudson. Dr. Ullrich Hafner Avaloq Evolution AG 8911

Continuous Delivery. Alejandro Ruiz

DevOps. Jesse Pai Robert Monical 8/14/2015

enterprise IBM Rational Team Concert 2 Essentials

Submitting your Dissertation, Thesis or Report to the Graduate School

Jenkins User Conference Herzelia, July #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP

SMZ. SocialMedia. Z olutions

DTWMS Required Software Engineers. 1. Senior Java Programmer (3 Positions) Responsibilities:

"Build and Test in the Cloud "

VAIL-Plant Asset Integrity Management System. Software Development Process

INFORMATION FOR GRADUATE STUDENTS IN BIOCHEMISTRY. Department of Chemistry and Biochemistry Utah State University, Logan, Utah

Confluence 3.5 JIRA 4.3 Customer Webinar

Urbancode Deploy Overview

A Practical Approach of Teaching Software Engineering

Continuous Integration

Continuous Integration Multi-Stage Builds for Quality Assurance

Client Overview. Engagement Situation. Key Requirements

Project Management. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies

Continuous Integration

Building Value with Continuous Integration

Web project proposal. European e-skills Association

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

SOFTWARE REPOSITORIES AND THEIR USABILITY IN SOFTWARE PROCESS RECONSTRUCTION

SOA-14: Continuous Integration in SOA Projects Andreas Gies

Finally, an agile test strategy (that works)! AS OW Test Model, Objectware

Continuous Integration with Jenkins. Coaching of Programming Teams (EDA270) J. Hembrink and P-G. Stenberg [dt08jh8

Assignment 12: Quality Assurance Plan

Scientific Knowledge and Reference Management with Zotero Concentrate on research and not re-searching

CS 4240: Principles of Software Design. Course Introduction. Tom Horton

Software Process and Models

France-Strasbourg: IT services: consulting, software development, Internet and support 2014/S Contract notice.

Paul Barham Program Manager - Java. David Staheli (dastahel@microsoft.com) Software Development Manager - Java

Open Source Tools. The Magazine for Professional Testers. December 2010

Modulo II Qualidade de Software com Maven

Contents. Introduction and System Engineering 1. Introduction 2. Software Process and Methodology 16. System Engineering 53

Agile Best Practices and Patterns for Success on an Agile Software development project.

Software Development. Overview.

Software Project Management Plan

Coverity Services. World-class professional services, technical support and training from the Coverity development testing experts

Effective Team Development Using Microsoft Visual Studio Team System

Continuous integration for databases using

Building Value with Continuous Integration

Emrah Dayioglu Phone: Bernhard-Weiß Str.3, Berlin

Service Management in Microsoft Dynamics CRM 2011

OXAGILE RESUMES SUMMARY OF QUALIFICATIONS TECHNICAL SKILLS SENIOR JAVA SOFTWARE ENGINEER

Tool support for Collaborative Software Quality Management

ITIL Foundation Certification Course

Writing a Major Research Paper (MRP)*

Transcription:

Software Development Tools and Frameworks Kick-off meeting René Schönfelder Institute for Software Engineering and Programming Languages October 17, 2013 http://www.isp.uni-luebeck.de/courses/ws-20132014/ seminar-software-development-tools-and-frameworks. R. Schönfelder October 17, 2013 1/39

Agenda Motivation Science Planning Topics Assignments R. Schönfelder October 17, 2013 2/39

Why this seminar? What is quality of software? What is science? R. Schönfelder October 17, 2013 3/39

Agenda Motivation Science Planning Topics Assignments R. Schönfelder October 17, 2013 4/39

What is science? Immanuel Kant: Eine jede Lehre, wenn sie ein System, d.i. ein nach Principien geordnetes Ganze der Erkenntniß, sein soll, heißt Wissenschaft,... Simply put: Science = Research + Teaching R. Schönfelder October 17, 2013 5/39

What is science? Qualification goals (Module Guide): The students can obtain a solid grounding a scientific topic. They are able to present the results in a written documentation and in a talk in an understandable way. The can present and discuss a scientific topic in English. This seminar shall prepare you for your bachelor s thesis. R. Schönfelder October 17, 2013 6/39

What is science? (Actually, there is a corresponding english page, but the guide lines are still in german.) R. Schönfelder October 17, 2013 7/39

Good scientific practice For example: respect for intellectual property, to document results, to consequently doubt all results yourself, mentoring the young academics, strict honesty with any kind of contributions, the backup and safe-keeping of any primary data, scientific publications. R. Schönfelder October 17, 2013 8/39

Scientific Literature How to find scientific literature? Zentrale Hochschulbibliothek Lübeck (http://www.zhb.uni-luebeck.de/) ACM Digital Library (http://portal.acm.org/dl.cfm) Springer (http://www.springerlink.com/) IEEE Xplore (http://ieeexplore.ieee.org/xplore/home.jsp) CiteSeer (http://citeseer.ist.psu.edu/) Google Scholar (http://scholar.google.de/) Not appropriate: Wikipedia, Heise, and other websites Access via university network or SSL gate (http://sslgate.uni-luebeck.de/) http://www.zhb.uni-luebeck.de/onlinemed.html Advice: Search for survey article, e.g. book chapters and dissertations. R. Schönfelder October 17, 2013 9/39

Scientific Literature How to read scientific literature? 1. Read the title and the abstract Is this paper of any interest for my work? 2. Take a look at pictures and read the conclusions What is the approach, what is the essential contribution? Is it still interesting for me? 3. Read thoroughly What is the exact reasoning? What is the connection to my work? What do I miss in this paper? 4. Write a summary (do not skip this step!) What are essential contributions? How do I need to cite this paper? Which questions are not yet solved? R. Schönfelder October 17, 2013 10/39

Scientific Literature How to cite? Look up the following things (or ask your advisor)... scientific writing, where to find literature, rules of citation, how to cite internet resources, what is BibTex? R. Schönfelder October 17, 2013 11/39

Agenda Motivation Science Planning Topics Assignments R. Schönfelder October 17, 2013 12/39

Expectations We expect from you: Search for scientific literature Writing a scientific paper Writing a review Attendence and participation Presentation of your topic R. Schönfelder October 17, 2013 13/39

Scientific paper Formal requirements: Use the template from the website. Number of pages between 8 and 10. Labels in images and tables should match the font of the document. Images should have a high enough resolution. With respect to the content, we expect you to: outline the academic (and economic) interest, present a clean and comprehensible structure, cite correctly and completely, give an overview on the literature, describe informative things easy to understand, respect the guide lines of good scientific practice. R. Schönfelder October 17, 2013 14/39

Review Your review (one page at most) will contain: Information about you as a reviewer Short summary General comments Well structured? Approach is clear? Complete? Good overview on literature? Well written and comprehensible? Roter Faden? (translation?) Does it convince you? Constructive citicism Typos, if they stand out Always remember: Stick to the facts, your name is on the review! R. Schönfelder October 17, 2013 15/39

Presentation Your presentation should: be 30 minutes long (plus 10 minutes discussion), be practiced beforehand, include the vita of VIPs (if appropriate), be easily comprehensable but also informative, incorporate the audience, have more images than text, not be your paper pressed into beamer slides, and end with an open question for discussion. R. Schönfelder October 17, 2013 16/39

Scheduling The schedule is similar to that of a scientific conference: Assignment of topics (30.07.) Familiarization phase (during semester break) Personal coaching with your advisor (beginning of the semester) Writing phase (deadline 22.11. - it s my birthday!) Review phase and preparation of your presentation (before 06.12.) Improvement phase (deadline 13.12.) Presentations (19.12. and 20.12. - 08:00 to 17:00) Christmas R. Schönfelder October 17, 2013 17/39

Publication With your participation you agree, that your paper and your presentation slides will be published to your fellow students (within this course) and to ISP members. R. Schönfelder October 17, 2013 18/39

Agenda Motivation Science Planning Topics Assignments R. Schönfelder October 17, 2013 19/39

Overview 0. Introduction 1. Revision Control 2. Project Management 3. Distributed Bugtrackers 4. Build and Dependency Tools 5. Artifact Repository 6. Continuous Integration 7. Web Server 8. Application Server 9. Agile Development 10. Usability Engineering 11. Static Code Analysis 12. Code Reviews 13. Documentation Tools 14. UML Tools 15. Test Driven Development 16. Test Generation R. Schönfelder October 17, 2013 20/39

Revision Control Research questions: What is version numbering? Which modify concepts are there? What is a workflow and which are used? http://flossmole.org/content/revision-control-matrix-june-2011 R. Schönfelder October 17, 2013 21/39

Project Management Research questions: How do project management tools improve software development? What is scalability and how to ensure? Which are the essential features of a project management tool? Some representatives are: Redmine, Trac, JIRA, Rhodecode,... (http://www.denizon.com/project-management/) R. Schönfelder October 17, 2013 22/39

Distributed Bugtrackers Research questions: How to manage and resolve bugs? Which states and priorities are there? How to integrate a bugtracker into a development process? Some representatives are: Artemis, Bugs Everywhere,... (http://www.bubblews.com/assets/images/news/1320729416_1370345820.jpg) R. Schönfelder October 17, 2013 23/39

Build and Dependency Tools Research questions: What is a build and how to resolve dependencies? What is a lifecycle and why are there standards? What are build plugins and how to write one? (http://zeroturnaround.com/rebellabs/developer-productivity-report-2012-java-tools-tech-devs-and-data/) R. Schönfelder October 17, 2013 24/39

Artifact Repository Research questions: What is an artifact? Why do artifacts need to be managed? How to create my own repository? Some representatives are: Nexus, Artifactory, Archiva,... (http://www.jfrog.com/home/v_ecosystem_integration) R. Schönfelder October 17, 2013 25/39

Continuous Integration Research questions: What is the integration hell and what is continuous integration? How to orchestrate different tools in the development process? Which best practices have established? Some representatives are: Jenkins, Continuum, Go, Hudson,... (http://jenkins-ci.org/) R. Schönfelder October 17, 2013 26/39

Web Server How to develop good and modern web sites? How can we assure quality in the web? Which kind of technology are there? Some representatives are: Tomcat, Jetty,... R. Schönfelder October 17, 2013 27/39

Application Server Which kind of web services are there? What is service oriented architecture and how to modularize? How does communication work? Some representatives are: WildFly, JBoss, Glassfish,... (http://www.wildfly.org/images/splash_wildflylogo.png) R. Schönfelder October 17, 2013 28/39

Agile Development Research questions: What is agile development and who benefits from it? How does Scrum work in practice? How could Scrum be implemented in scientific projects? (http://blog.seibert-media.net/2012/10/15/99-argumente-fuer-scrum-was-scrum-projekte-dem-kunden-bringen/) R. Schönfelder October 17, 2013 29/39

Usability Engineering Research questions: What is usability engineering? How to integrate it within the development process? What are the benefits? (http://www.imis.uni-luebeck.de/de/forschung/user-usability-engineering-fuer-softwaresysteme-oeffentlichenverwaltungen) R. Schönfelder October 17, 2013 30/39

Static Code Analysis Research questions: How to measure software quality? What is a software map? How does static code analysis influence the development process? Some representatives are: findbugs, emma, cobertura, checkstyle,... (http://www.softwarediagnostics.com/transparency-platform/) R. Schönfelder October 17, 2013 31/39

Code Reviews Research questions: What are code reviews? How to embed code reviews into the development process? What are the social effects that may occur? Some representatives are: Gerrit, Atlassian, AgileReview,... R. Schönfelder October 17, 2013 32/39

Dokumentationswerkzeuge Research questions: Why and how should I document? How to document collaboratively? What is a good project documentation? Some representatives are: Javadoc, Doxygen, Wiki, Confluence,... (http://www.ks-kruschat.de/index.php?id=42) R. Schönfelder October 17, 2013 33/39

Unified Modeling Language Research questions: What actually is UML (and what is behind it)? What is Model Driven Architecture? Which UML tool is the best? Some representatives are: Papyrus, ArgoUML,... R. Schönfelder October 17, 2013 34/39

Test Driven Development Research questions: Is it even worth the effort? What are stubs and what are they used for? Which testing approaches are there? Some representatives are: JUnit + Hamcrest, junitrv, JBehave, JMockit,... (http://janxl.blogspot.de/2010/02/test-driven-development-workshop.html) R. Schönfelder October 17, 2013 35/39

Test Generation Research questions: How to generate tests? Is that even possible? What is Design-by-Contract? What kind of best practices could arise? Some representatives are: CodePro AnalytiX, AgitarOne (https://developers.google.com/java-dev-tools/codepro/doc/features/junit/test_case_generation) R. Schönfelder October 17, 2013 36/39

Agenda Motivation Science Planning Topics Assignments R. Schönfelder October 17, 2013 37/39

Overview 0. Introduction 1. Revision Control 2. Project Management 3. Distributed Bugtrackers 4. Build and Dependency Tools 5. Artifact Repository 6. Continuous Integration 7. Web Server 8. Application Server 9. Agile Development 10. Usability Engineering 11. Static Code Analysis 12. Code Reviews 13. Documentation Tools 14. UML Tools 15. Test Driven Development 16. Test Generation R. Schönfelder October 17, 2013 38/39

Advisor 0. Introduction - Martin Leucker 1. Revision Control - Daniel Thoma 2. Project Management - Annette Stümpel 3. Distributed Bugtrackers - Annette Stümpel 4. Build and Dependency Tools - Grigory Markin 5. Artifact Repository - René Schönfelder 6. Continuous Integration - Grigory Markin 7. Web Server - Normann Decker 8. Application Server - Normann Decker 9. Agile Development - Gerhard Buntrock 10. Usability Engineering - Marc Paul (paul@imis.uni-luebeck.de) 11. Static Code Analysis - Franziska Kühn 12. Code Reviews - Franziska Kühn 13. Documentation Tools - Claudia Fischer 14. UML Tools - Claudia Fischer 15. Test Driven Development - Daniel Thoma 16. Test Generation - Normann Decker Contacts: http://www.isp.uni-luebeck.de/staff.html R. Schönfelder October 17, 2013 39/39