• No results found

Software Development Tools and Frameworks

N/A
N/A
Protected

Academic year: 2021

Share "Software Development Tools and Frameworks"

Copied!
39
0
0

Loading.... (view fulltext now)

Full text

(1)

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.

(2)

Agenda Motivation Science Planning Topics Assignments

(3)

Why this seminar?

I What is quality of software?

(4)

Agenda Motivation Science Planning Topics Assignments

(5)

What is science?

Immanuel Kant:

I “Eine jede Lehre, wenn sie ein System, d.i. ein nach Principien geordnetes Ganze der Erkenntniß, sein soll, heißt Wissenschaft, . . . ” Simply put:

(6)

What is science?

Qualification goals (Module Guide):

I The students can obtain a solid grounding a scientific topic.

I They are able to present the results in a written documentation and in a talk in an understandable way.

I The can present and discuss a scientific topic in English. This seminar shall prepare you for your bachelor’s thesis.

(7)
(8)

Good scientific practice

For example:

I respect for intellectual property,

I to document results,

I to consequently doubt all results yourself,

I mentoring the young academics,

I strict honesty with any kind of contributions,

I the backup and safe-keeping of any primary data,

(9)

Scientific Literature

How to find scientific literature?

I Zentrale Hochschulbibliothek Lübeck (http://www.zhb.uni-luebeck.de/)

I ACM Digital Library (http://portal.acm.org/dl.cfm)

I Springer (http://www.springerlink.com/)

I IEEE Xplore (http://ieeexplore.ieee.org/Xplore/home.jsp)

I CiteSeer (http://citeseer.ist.psu.edu/)

I Google Scholar (http://scholar.google.de/) Not appropriate:

I Wikipedia, Heise, and other websites

Access via university network or SSL gate (http://sslgate.uni-luebeck.de/)

I http://www.zhb.uni-luebeck.de/onlinemed.html

(10)

Scientific Literature

How to read scientific literature? 1. Read the title and the abstract

I Is this paper of any interest for my work? 2. Take a look at pictures and read the conclusions

I What is the approach, what is the essential contribution?

I Is it still interesting for me?

3. Read thoroughly

I What is the exact reasoning?

I What is the connection to my work?

I What do I miss in this paper?

4. Write a summary (do not skip this step!)

I What are essential contributions?

I How do I need to cite this paper?

(11)

Scientific Literature

How to cite? Look up the following things (or ask your advisor) . . .

I scientific writing,

I where to find literature,

I rules of citation,

I how to cite internet resources,

(12)

Agenda Motivation Science Planning Topics Assignments

(13)

Expectations

We expect from you:

I Search for scientific literature

I Writing a scientific paper

I Writing a review

I Attendence and participation

(14)

Scientific paper

Formal requirements:

I Use the template from the website.

I Number of pages between 8 and 10.

I Labels in images and tables should match the font of the document.

I Images should have a high enough resolution.

With respect to the content, we expect you to:

I outline the academic (and economic) interest,

I present a clean and comprehensible structure,

I cite correctly and completely,

I give an overview on the literature,

I describe informative things easy to understand,

(15)

Review

Your review (one page at most) will contain:

I Information about you as a reviewer

I Short summary

I General comments

I Well structured?

I Approach is clear?

I Complete?

I Good overview on literature?

I Well written and comprehensible?

I “Roter Faden”? (translation?)

I Does it convince you?

I Constructive citicism

I Typos, if they stand out

(16)

Presentation

Your presentation should:

I be30minutes long (plus10minutes discussion),

I be practiced beforehand,

I include the vita of VIPs (if appropriate),

I be easily comprehensable but also informative,

I incorporate the audience,

I have more images than text,

I not be your paper pressed into beamer slides, and

(17)

Scheduling

The schedule is similar to that of a scientific conference:

I Assignment of topics (30.07.)

I Familiarization phase (during semester break)

I Personal coaching with your advisor (beginning of the semester)

I Writing phase (deadline 22.11. - it’s my birthday!)

I Review phase and preparation of your presentation (before 06.12.)

I Improvement phase (deadline 13.12.)

I Presentations (19.12. and 20.12. - 08:00 to 17:00)

(18)

Publication

With your participation you agree, that

I your paper and your presentation slides will bepublishedto

I your fellow students (within this course)

(19)

Agenda Motivation Science Planning Topics Assignments

(20)

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

(21)

Revision Control

Research questions:

I What is version numbering?

I Whichmodifyconcepts are there?

I What is a workflow and which are used?

(22)

Project Management

Research questions:

I How do project management tools improve software development?

I What is scalability and how to ensure?

I Which are the essential features of a project management tool? Some representatives are: Redmine, Trac, JIRA, Rhodecode, . . .

(23)

Distributed Bugtrackers

Research questions:

I How to manage and resolve bugs?

I Which states and priorities are there?

I How to integrate a bugtracker into a development process? Some representatives are: Artemis, Bugs Everywhere, . . .

(24)

Build and Dependency Tools

Research questions:

I What is a build and how to resolve dependencies?

I What is a lifecycle and why are there standards?

I What are build plugins and how to write one?

(25)

Artifact Repository

Research questions:

I What is an artifact?

I Why do artifacts need to be managed?

I How to create my own repository?

Some representatives are: Nexus, Artifactory, Archiva, . . .

(26)

Continuous Integration

Research questions:

I What is the integration hell and what is continuous integration?

I How to orchestrate different tools in the development process?

I Which best practices have established?

Some representatives are: Jenkins, Continuum, Go, Hudson, . . .

(27)

Web Server

I How to develop good and modern web sites?

I How can we assure quality in the web?

I Which kind of technology are there? Some representatives are: Tomcat, Jetty, . . .

(28)

Application Server

I Which kind of web services are there?

I What is service oriented architecture and how to modularize?

I How does communication work?

Some representatives are: WildFly, JBoss, Glassfish, . . .

(29)

Agile Development

Research questions:

I What is agile development and who benefits from it?

I How does Scrum work in practice?

I How could Scrum be implemented in scientific projects?

(30)

Usability Engineering

Research questions:

I What is usability engineering?

I How to integrate it within the development process?

I What are the benefits?

(http://www.imis.uni-luebeck.de/de/forschung/user-usability-engineering-fuer-softwaresysteme-oeffentlichen-verwaltungen)

(31)

Static Code Analysis

Research questions:

I How to measure software quality?

I What is a software map?

I How does static code analysis influence the development process? Some representatives are: findbugs, emma, cobertura, checkstyle, . . .

(32)

Code Reviews

Research questions:

I What are code reviews?

I How to embed code reviews into the development process?

I What are the “social effects” that may occur?

(33)

Dokumentationswerkzeuge

Research questions:

I Why and how should I document?

I How to document collaboratively?

I What is agoodproject documentation?

Some representatives are: Javadoc, Doxygen, Wiki, Confluence, . . .

(34)

Unified Modeling Language

Research questions:

I What actually is UML (and what is behind it)?

I What is Model Driven Architecture?

I Which UML tool is thebest?

(35)

Test Driven Development

Research questions:

I Is it even worth the effort?

I What are stubs and what are they used for?

I Which testing approaches are there?

Some representatives are: JUnit + Hamcrest, jUnitRV, JBehave, JMockit, . . .

(36)

Test Generation

Research questions:

I How to generate tests? Is that even possible?

I What is Design-by-Contract?

I What kind of best practices could arise?

Some representatives are: CodePro AnalytiX, AgitarOne

(37)

Agenda Motivation Science Planning Topics Assignments

(38)

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

(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 ([email protected]) 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

References

Related documents

The present study was quantitative in design which involved the statistical analysis of questionnaire results to describe students’ perception of their willingness

However, excess returns on single stock vari- ance swaps can often be fully explained by a systematic vari- ance risk factor proxied by returns on variance swaps with the S&P 500

Vice-President, European Law Faculties Association Dean, Autonomous University of Barcelona, Faculty of Law Speakers:.

BUILDING CHANGE DETECTION IN VERY HIGH RESOLUTION SATELLITE STEREO IMAGE TIME SERIESJ. Photogrammetry and Image Analysis, Remote Sensing Technology Institute, German Aerospace

Thus, as our main contribution, we argue that development aids are not substitute for migration and that the traditional aid policies (such as those of the European Union), aimed

H01: There is no statistically significant difference in high school students’ overall sense of community as measured by the Classroom Community Scale when participating in

Although a standard and comprehensive definition of the term as used in literature has been elusive, the term has been defined specifically as (1) a “device,

In our study, the direct e ff ects of air temperature and moisture on the fatty acid content of the 17 sa ffl ower accessions tested under dry conditions were not evaluated, but