Software Engineering Research - PowerPoint PPT Presentation

1 / 51
About This Presentation
Title:

Software Engineering Research

Description:

Imputation methods: replace missing values. Proposed Multiple Logistic Regression as an imputation method for missing categorical values ... – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 52
Provided by: auth55
Category:

less

Transcript and Presenter's Notes

Title: Software Engineering Research


1
Software Engineering Research Developmentat
A.U.Th
  • Ioannis Stamelos
  • Panagiotis Katsaros
  • stamelos, katsaros_at_csd.auth.gr

2
Presentation Outline
  • Introduction
  • AUTH / Dept of Informatics
  • Software Engineering Research Group
  • Software Quality, Management, Education
  • Open Source Software Engineering / Extreme
    Programming

3
Introduction
4
(No Transcript)
5
City of Thessaloniki
  • Capital of Macedonia region, northern Greece
  • 1 M inhabitants, 2nd greek city, major port of
    Balkans
  • 2300 years of continuous history, joined modern
    Greece in 1912

6
(No Transcript)
7
AUTH / Dept of Informatics
8
Aristotle University of Thessaloniki, Greece
  • First school (Philosophy) established in 1925
  • Largest Greek University
  • 45 departments
  • gt 60.000 students
  • gt 3.000 staff / teachers
  • www.auth.gr

9
Department of Informatics
  • School of Physical Science, plans to move to
    Polytechnic School
  • Established in 1993
  • 22 academic staff members
  • 700 students
  • www.csd.auth.gr

10
4-years Degree Curriculum
  • 8 semesters
  • 5 semesters with obligatory courses
  • 3 semesters with options out of 4 directions
  • Information Systems
  • Digital Media
  • Multimedia / Educational Technologies
  • Networks / Architecture / Communications
  • Thesis Project

11
Master Courses
  • MSc in Informatics (4 directions)
  • MSc in Informatics Management (with Dept. of
    Business Management)
  • Plus
  • MSc in Medical Informatics

12
Five Research Labs
  • Programming Languages and Software Engineering
    PLASE
  • Data Technologies and Engineering -DELAB
  • Information Processing and Artificial
    Intelligence
  • Multimedia (Educational Technologies)
  • Networks, Communications and Architecture

13
Programming Languages and Software Engineering
PLASE
  • 6 staff members
  • 10 research associates
  • 20 PhD students
  • Major research areas
  • Intelligent Systems
  • Web Engineering
  • Software Engineering
  • Mathematics

14
Software Engineering Group (SWENG)
  • 3 ac. staff members
  • Assistant Professors I. Stamelos, L. Angelis /
    PLASE
  • P. Katsaros / DELAB
  • 5 research associates
  • 10 PhD students (joined the group during last 4
    years)
  • http//sweng.csd.auth.gr

15
SWENG Teaching
  • Dept. of Informatics / Hellenic Open University
    (ODL)
  • Mathematics, Graph Theory
  • Language Theory, Compilers
  • Introduction to Software Engineering
  • Object Oriented Analysis / Java / C
  • Master Courses
  • Software Project Management
  • Enterprise Information Systems

16
SWENG RD Activities
  • Basic Research
  • Collaboration with other research teams in Greece
    and in EU
  • Politecnico di Torino (Prof. Morisio)
  • Univ. LAMSADE / Paris (Prof. Tsoukias)
  • Univ. Juan Carlos / Madrid (Prof. Barahona)
  • Funded Applied Research Development
  • Greek Public Sector
  • Greek Secretariat for Research and Technology
  • Private Companies
  • EU

17
SWENG Funding
  • Software industry context
  • Public Sector still developing IT infrastructure
    (e.g. transportation)
  • Private Sector companies enhancing IT
    infrastructure (banks, utilities, privatized
    public companies)
  • Most large SW Companies mainly acting as vendors
    (e.g. of ERP systems)
  • Various small but aggressive SW companies acting
    as developers
  • Funding limited but growing fast
  • (in last 5 years, while SWENG group was growing)
    0,7 M euros
  • mostly from development projects
  • participated also to other PLASE projects
    (MATHIND, Go Net, )
  • Now shifting to research projects as well
  • obtained 0,5 M, expecting another 0,6 M in
    years 2006 - 2007 (mainly from EU, GSRT)
  • see forthcoming research projects at Forthcoming
    Research Projects slide

18
Examples of current / completed projects
  • Expert System for Software Evaluation
  • Automated Certification System (with data mining
    functionality)
  • Enterprise Knowledge Management System
  • Specification of various public company
    information systems (e.g. ticketing)

19
SWENG Major Research Areas
  • Software Quality
  • Dependability, Security
  • Software Cost Estimation
  • Software Evaluation
  • Open Source Software
  • Extreme Programming
  • Software Education

20
Software Quality, Management, Education
21
Software Quality (1)
  • Problems
  • how to quantify and predict / assess SW quality
    attributes
  • many SW quality metrics /methods have been
    proposed but have not been sufficiently validated
  • Need for
  • novel, intuitively confirmed measures
  • empirical evidence for assessing methods, tools,
    approaches

22
Software Quality (2)
  • Formal experiments
  • Most powerful empirical investigation tool,
    producing generic conclusions
  • A typical formal experiment setting
  • Two groups of subjects are given the same object,
    differing only in the controlled variable (e.g.
    design of the same system based on two different
    design approaches, see next two slides)
  • Subjects are asked to perform the same task
  • All other potentially affecting variables are
    kept constant (e.g. group experience)
  • The two groups performance is monitored
    accurately and statistical tests are run to
    detect statistical difference

23
(No Transcript)
24
(No Transcript)
25
Software Quality (3)
  • Currently investigating quality assessment based
    on Heuristics
  • - A Heuristic is a good practice (e.g. avoidance
    of God classes in OO design, see previous
    slide)
  • Developed tools assessing compliance with Riels
    set of object-oriented heuristics (based on
    C/Java code, UML class diagrams)
  • Design of new methods / models for quality
    prediction
  • Software Defect Prediction Using Regression via
    Classification (AICSSA 06)

26
Decision tree for defect prediction (for a
specific data set)
27
Software Cost Estimation
  • The problem predict the human effort for
    developing a system
  • Expert judgment
  • Analogy based method, project is compared with
    past projects, project cost is proportional to
    cost of similar projects
  • Algorithmic / ad hoc models, a set of equations
    are used (e.g. the COCOMO models)
  • Issues
  • Wrong, inaccurate, missing past projects data
  • Uncertainty about new project
  • Many categorical values (e.g. type of system,
    language used)
  • Method accuracy
  • Calibration with local data
  • Method suitability to local situation (e.g. local
    project data may be not available or projects are
    not measured accordingly)

28
Software Cost Estimation (1)
  • Interval estimation
  • A range of values is produced
  • More realistic approach w.r.t to a point estimate
  • Interval incorporates model error
  • Interval accounts for estimation data inaccuracy
  • May be easily transformed to a point estimate
    (e.g. take the mean value of the interval)
  • A number of techniques has been proposed

29
Software Cost Estimation (2)
  • Improvement of Analogy Based Estimation
    (Bootstrap sampling method)
  • To calibrate method parameters (e.g. number of
    similar projects used for the estimation)
  • To produce interval estimates
  • Project portfolio estimation
  • Combination of interval estimates from portfolio
    project members
  • Categorical, multinomial, ordinal regression
  • Regression models that provide interval estimates
  • Intervals are often predefined by managers
  • Produced more accurate results than previously
    proposed methods (e.g. OLS)

30
BRACE a tool for advanced estimation by analogy
  • Screenshot of BRACE showing the results of a
    calibration session

31
BRACE interval estimate generation
  • New project is estimated to demand an effort of
    2000-2500 mh (prob. 65,1), 2500-3000 (prob.
    23,1), etc.

32
Software Cost Estimation (3)
  • How to deal with missing data in your historical
    data base?
  • Imputation methods replace missing values
  • Proposed Multiple Logistic Regression as an
    imputation method for missing categorical values
  • MLR found to perform better w.r.t. to previously
    proposed methods

33
Software Cost Estimation (4)
  • Comparative assessment of proposed methods
    (focusing on AI methods)
  • Association Rules, BBN, CART
  • AR are found to be the most accurate / promising
    approach

34
Example Association Rule for Productivity
Estimation
  • Association Rule
  • Support Confidence Rule Body Rule Head
  • 6.3 66.6 ACAP_HDATA_N gt PROD_4
  • Interpreted as follows
  • When the programmers analysis capability is
    high and the database size is nominal then the
    productivity is likely to be in the fourth
    category (100ltPRODlt160 KLOC/MM)

35
Software process modeling with iterative Bayesian
Belief Networks
36
Software Evaluation
  • Application of MCDA (Multiple Criteria Decision
    Aid) on software problem situations

37
Profile evaluation of software artifacts /
processes
  • User defines profiles as sets of attribute
    values, then product / process is assessed
    through the Electre method to decide its profile
    value

38
Software Engineering Education
  • Investigation of novel approaches in SE education
    through formal experiments
  • Distance learning of UML (sequence diagrams)
  • Use of a lesson sheet for teaching Usability

39
Open Source Software Engineering / Extreme
Programming
40
Free / Open Source Software (1)
  • Revolutionary software development
  • Issues
  • What is the quality of F/OSS products?
  • How can we assess an F/OSS project?
  • Is it active?
  • Is it interesting?
  • How can we predict an F/OSS project?
  • How will it grow in terms of code size, number of
    programmers?

41
Free / Open Source Software (2)
  • F/OSS product quality assessment
  • F/OSS process modeling
  • Dynamic models for predicting F/OSS project
    behavior
  • Knowledge sharing and learning in F/OSS

42
F/OSS product quality assessment
  • Case Studies
  • Measured and assessed 100 LINUX applications
    applications code found to be of at least equal
    quality w.r.t. to closed source code
  • Measured and assessed specific software systems
    quality (e.g. assessed COMPIERE code, an Open
    Source ERP system, found to be of excellent
    quality)
  • Quality assessment horizontal studies
  • Measured, assessed 5 F/OSS projects and compared
    with closed source counterparts using
    Maintainability Index (SEI)
  • F/OSS systems found to exhibit superior
    maintainability, however F/OSS maintainability
    deteriorated in similar way as in closed source

43
F/OSS maintainability evolution
44
F/OSS process modeling
  • Dynamical F/OSS process model
  • Based on programmer motivation
  • Elaborates on programmer tasks (coding,
    debugging), modules, defects
  • Calibrated on typical F/OSS projects (e.g.
    Apache, Gnome)
  • Predicting curves for size (LOCs), number of
    programmers

45
Knowledge sharing and learning in F/OSS
  • Modeling of knowledge sharing in F/OSS
  • Knowledge sharing model
  • Mining F/OSS mail lists to determine knowledge
    brokers
  • Learning mechanisms in F/OSS
  • Learning in F/OSS occurs following the
    constructivist model
  • Ultimate goal use of F/OSS projects in SE
    teaching
  • Ran a pilot study 15 students practiced software
    testing by participating in F/OSS projects,
    obtained promising results

46
F/OSS Knowledge Sharing Model
  • Knowledge is generated, shared and acquired by
    traversing various paths of the graph model in
    many different ways

47
F/OSS Mailing List Social Network
48
Extreme Programming
  • Surveying Agile Methods / XP spread in Greece
  • SW SMEs use XP methods without knowing it!
  • Investigation of human factors
  • Developer personality and temperament when
    forming a pair in pair programming
  • Conducted formal experiments with students
  • Found that mixed personalities and temperaments
    produce better results

49
Forthcoming Funded Research Projects
  • SQO OSS (IST/EU), Software quality observatory
    for Open Source, a system that will continuously
    monitor and evaluate OSS products
  • FLOSSMETRICS (IST/EU), studies and models for OSS
    process management
  • F/OSS in education (MINERVA / EU), exploitation
    of OSS in informatics education
  • DIERGASIA (means PROCESS in Greek) (TELETEL /
    GSRT), prediction models and procedures for
    advanced software quality assurance in a TLC
    systems company
  • Also bidding for funding for various development
    projects (training in basic computer skills using
    ODL, portal development for technology museums,
    )

50
Current / Future Research topics
  • F/OSS quality assessment through the use of
    heuristics
  • Social Networks in F/OSS
  • Indicators for community decay in F/OSS projects
    when is the project endangered because of mentors
    / key developers abandonment?
  • Software Architecture
  • Exploit architectural tactics in component
    specification to support reusability (ICSR06,
    Torino)
  • Management Anti-Patterns
  • Modeling with BBN
  • XP management anti-patterns
  • Intellectual Software Capital Valuation
  • How much is a software artifact (component,
    method, piece of knowledge) worth?
  • Investigate XP through experiments with
    professionals
  • Introduction of F/OSS projects in SE education

51
Tactic driven process
Write a Comment
User Comments (0)
About PowerShow.com