Lessons learned from an open-source University Project P. Basdaras, K. Chalkias, A. Chatzigeorgiou, I. Deligiannis, P. Tsakiri, N. Tsantalis Department.

Slides:



Advertisements
Similar presentations
Ranking Refactoring Suggestions based on Historical Volatility Nikolaos Tsantalis Alexander Chatzigeorgiou University of Macedonia Thessaloniki, Greece.
Advertisements

Towards Adaptive Web-Based Learning Systems Katerina Georgouli, MSc, PhD Associate Professor T.E.I. of Athens Dept. of Informatics Tempus.
Automated Software Testing: Test Execution and Review Amritha Muralidharan (axm16u)
Lecture # 2 : Process Models
Project Proposal.
SEAgle: Effortless Software Evolution Analysis T. Chaikalis, E. Ligu, G. Melas and A. Chatzigeorgiou Department of Applied Informatics University of Macedonia,
Software Evolution Managing the processes of software system change
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Embedding NVivo in postgraduate social research training Howard Davis & Anne Krayer 6 th ESRC Research Methods Festival 8-10 July 2014.
Application of Graph Theory to OO Software Engineering Alexander Chatzigeorgiou, Nikolaos Tsantalis, George Stephanides Department of Applied Informatics.
Faculty Information System Team Members Aaron Flocke Geetha Krishnasamy Leena Paulose James Curry.
Knowledge Process Outsourcing1 Turning Information into Knowledge... for YOU The Gyaan Team.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
Program development & programming languages Chapter 13.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 18 Slide 1 Software Reuse.
Software Engineering Muhammad Fahad Khan
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Selected Topics in Software Computing Distributed Software Development CVSQL Final Project Presentation.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Systems Analysis And Design © Systems Analysis And Design © V. Rajaraman MODULE 14 CASE TOOLS Learning Units 14.1 CASE tools and their importance 14.2.
1 USING EXPERT SYSTEMS TECHNOLOGY FOR STUDENT EVALUATION IN A WEB BASED EDUCATIONAL SYSTEM Ioannis Hatzilygeroudis, Panagiotis Chountis, Christos Giannoulis.
N By: Md Rezaul Huda Reza n
Domain 1: Preparation and Planning. ElementUnsatisfactoryBasicProficientDistinguished Knowledge of content and the structure of the discipline In planning.
Software evolution. Objectives l To explain why change is inevitable if software systems are to remain useful l To discuss software maintenance and maintenance.
A MULTIMEDIA APPLICATION FOR THE TEACHING OF THE MODULE "WATER" Anna Thysiadou 1, Sofoklis Christoforidis 2, Panagiotis Jannakoudakis 1 1 Aristotle University.
CLC reading program Nguyen Thi Thu Trang. In-class activities Assignment Assessment Add your text in here Reading program Objectives Contents.
Developing Contemporary Canonical Software Courses Summer Program Overview Rise Research Group at Drexel.
Heidi Atha Diane Look Buena Vista School District.
Leonardo Da Vinci Programme TRANSFERENCE OF INNOVATION INTERJOB4YOUTH PROJECT.
Professor Michael J. Losacco CIS 1110 – Using Computers Database Management Chapter 9.
Samad Paydar Web Technology Lab. Ferdowsi University of Mashhad 10 th August 2011.
Lucian Voinea Visualizing the Evolution of Code The Visual Code Navigator (VCN) Nunspeet,
Toward Generic Systems Shifra Haar - Central Bureau of Statistics-Israel.
©Ian Sommerville 2004 Software Engineering. Chapter 21Slide 1 Chapter 21 Software Evolution.
ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 2: Software Design Cycle.
CS Data Structures I Chapter 2 Principles of Programming & Software Engineering.
Disciplined Software Engineering Lecture #2 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #2 Software Engineering.
Curricular Revision ICOM Curricular Revision 2001 Outline Motivation & Goals ICOM Before and After –The old program –The new program –Additional.
Chapter 3: Software Project Management Metrics
Implementation Phase CS4311 – Spring 2008 References: Shach, Object Oriented and Classical Software Engineering E. Braude, Software Engineering, an Object-Oriented.
Friday, October 15 Objective: Students will be able to present information they have found on an engineering career. Bell Ringer: Quick Write: What is.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
Understanding User Goals in Web Search University of Seoul Computer Science Database Lab. Min Mi-young.
HNDIT23082 Lecture 06:Software Maintenance. Reasons for changes Errors in the existing system Changes in requirements Technological advances Legislation.
Search Engine using Web Mining COMS E Web Enhanced Information Mgmt Prof. Gail Kaiser Presented By: Rupal Shah (UNI: rrs2146)
System Maintenance Modifications or corrections made to an information system after it has been released to its customers Changing an information system.
Report Performance Monitor & Control Risk Administer Procurement MONITORING & CONTROLLING PROCESS.
IT323 - Software Engineering 2 1 Tutorial 4.  List the main benefits of software reuse 2.
Word Guess Team (Team #4) October 8, Word Guess Team  Team Members  Chakib Kouhel:  Steve Mattingley:
MANAGEMENT INFORMATION SYSTEM
Software Reuse. Objectives l To explain the benefits of software reuse and some reuse problems l To discuss several different ways to implement software.
Sikkim Manipal University Distance Learning MBA in Information System Management.
Advanced Software Engineering Dr. Cheng
Software Configuration Management
The Development Process of Web Applications
(New) English Discoveries Online at HANU
VCE Computing Units 1 & 2.
Classical Waterfall Model
Life Cycle Models PPT By :Dr. R. Mall.
Software Metrics Validation using Version control
Project Group: ACN Application-Controlled Network
SLOC and Size Reporting
Predicting Fault-Prone Modules Based on Metrics Transitions
Lecture 06:Software Maintenance
Sharing Statistical Software
Introduction of PTM (Planning Tracking & Management) Tool - developed by Meridian Technology 29/05/2019.
NOTICE! These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Presentation transcript:

Lessons learned from an open-source University Project P. Basdaras, K. Chalkias, A. Chatzigeorgiou, I. Deligiannis, P. Tsakiri, N. Tsantalis Department of Applied Informatics University of Macedonia Thessaloniki, Greece 10 th Int. WSEAS Conf. on Computers, July 13, 2006, Vouliagmeni, Greece

Motivation Open-source software development  widespread trend According to OSI, the basic idea behind open-source software is that when programmers are free to read, redistribute and modify the source code, the software evolves First spark: Netscape's Navigator (1998)

Motivation July 2005: Project Initiation CSSE Lab, Dept. Applied Informatics, U. of Macedonia, Greece Aims: to help students understand practices and become familiar with the philosophical, technological, legal and social issues to log all aspects of the software development process software versions development effort programmer capability LOC types of changes

Project Description Project Domain: (typical choices: CRMs, ERPs, scientific software) Criteria motivation of as many students as possible be expandable in a number of axes Final Selection: Bet Analysis and Prediction clearly a "hot" topic (esp. for male students) many students had prior domain knowledge Can be expanded to many directions: filling coupons Statistical analysis of past data Visualization Use of AI Information retrieval from Web Risk analysis, portfolio management

Project Description Programming Language: Java object-oriented language  modular undegrads in our Dept. are familiar with Java large number of available API's facilitates development Development based on a widely used CVS Administrative team checks submitted code Every student is free to enhance functionality Project's Homepage maintains a "to do list"

Data Collection To obtain an account each participant provides info: age, studies, programming experience etc When committing a class (smallest piece of code than can be submitted): Class Name: Consumed Time (mins): Maintenance adaptive: corrective: perfective: Locality of change Local: Propagated: origin of propagation (list):

Supporting Software Diff tool for comparing different versions extracts new, deleted, modified classes/methods Log form Analyzer records and visualizes information provided by developers

Observations Student participation helps to comprehend basic practices and tools Development is carried out by a small group Intense activity when new requirements are published Number of bugs is limited Responsibility in following formal/informal rules Quick generation of multiple versions Further advertisement is necessary

Results - LOC Analyzed System: 44 functional commits, 13 classes

Results - NOO

Results – CBO, LCOM, WMC

Results – Commits per class (Log form)

Results – Development Time/class (Log form) In an actual project this indicates that capable programmers should be allocated to the most time and effort consuming modules

Results – Type of changes/class (Log form)

Results – Propagation of changes (Log form)

Conclusions Open-source projects embedded in CS curricula are beneficial: from a pedagogic point of view as a tool for collecting data Suitable project selection is important Participation is initially high / slowdown follows Offer incentives / Continuous Advertisement Rich experience for students / integrated with Software Engineering Courses

Lessons learned from an open-source University Project Thank you for your attention 10 th Int. WSEAS Conf. on Computers, July 13, 2006, Vouliagmeni, Greece