Digital Enterprise Research Institute                                                                 www.deri.ieOne-Stop ...
IntroductionDigital Enterprise Research Institute                                 www.deri.ie            Software develop...
Information SeekingDigital Enterprise Research Institute                                                                  ...
Heterogeneous & Interdependent       Software RepositoriesDigital Enterprise Research Institute                           ...
Heterogeneous & Interdependent       Software RepositoriesDigital Enterprise Research Institute                           ...
What we have !Digital Enterprise Research Institute                      www.deri.ie                                Deskto...
Project MemoryDigital Enterprise Research Institute                                                 www.deri.ie           ...
But …Digital Enterprise Research Institute                    www.deri.ie            Data format issues                 ...
Linked Data Driven Software       Development (LD2SD)Digital Enterprise Research Institute                                ...
Consuming InformationDigital Enterprise Research Institute                      www.deri.ie             Web-based lookup s...
What’s nextDigital Enterprise Research Institute                                                    www.deri.ie  Large Sca...
ConclusionDigital Enterprise Research Institute                                                www.deri.ie           Outl...
Upcoming SlideShare
Loading in …5
×

One-stop shop for software development information

1,060 views
1,005 views

Published on

Talks about the issues which developers face while interacting with the many software repositories and the questions they usually have in their mind while search. Introduce the linked data approach to integrate the information from different software repositories.

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,060
On SlideShare
0
From Embeds
0
Number of Embeds
48
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Software development as we all know is a collaborative activity. Now a days developers are well equipped with a variety of software development tools in order to manage and develop software projects efficiently and cost effectively.Apart from using the tools to produce high quality software, developers also use different mediums of communication to interact with each other.
  • The questions which developers usually have in mind are hidden deep inside the software repositories. Information stored in historical software repositories, such as mailing lists and bug repositories, represent a group memory for a project. Such information is very valuable for current members of a project. But these repositories are not easy to search in order to answer such questionsUnderstanding large software systems remains a challenge for most software organizations. Documentations for large systems rarely exist and if they exist they are often not up-to-date. Moreover system experts are usually too busy to help novice developers, or may no longer be part of an organization. The information is not easily accessible due to its sheer volume, the lack of tools to navigate the repositories effectively and the difficulty of making connections between logically related items in disparate repositories.software developer who joins an existing software development team must come up-to-speed on a large, varied amount of information before becoming productive. In collocated teams, this knowledge is often gained through mentoring: An existing member of the team works closely with each of the newcomers, looking over their shoulders, and imparting the oral tradition of the project, as the newcomers work on their first assigned tasks
  • It wouldn’t be wrong to consider these software artefacts as closely related and interdependent, talking about the same thing, i.e., software. However these interconnections are not explicit, hence machine-accessible but rather ofan implicit nature (a mentioning of a certain Java class in a blog post, for example). A bug report, for example, may lead to achange in the program code and additionally the documentation needs to be updated. This may be reflected in theconfiguration management system. Developers nowadays have to perform keyword-based searches on the Web to find source-code examples or need to manually trace discussions about a past bug on the mailing list.
  • An example here. A bug discussed on mailing list, implemented by someone and committed via source control. For a certain period of time, the information will be kept in mind of the developers but assume after six month, the bug has been reproduced than how easy would it be to trace back the discussion and the changes that was done six months ago.Given the type of information stored in these repositories, one can see the potential of linking these pieces of information which would address plenty of software development issues.
  • Provide developers effective and efficient access to project memory.
  • An example here. A bug discussed on mailing list, implemented by someone and committed via source control. For a certain period of time, the information will be kept in mind of the developers but assume after six month, the bug has been reproduced than how easy would it be to trace back the discussion and the changes that was done six months ago.Given the type of information stored in these repositories, one can see the potential of linking these pieces of information which would address plenty of software development issues.
  • One-stop shop for software development information

    1. 1. Digital Enterprise Research Institute www.deri.ieOne-Stop Shop for Software Development Information Aftab Iqbal aftab.iqbal@deri.org Digital Enterprise Research Institute, NUI Galway, Ireland Stefan.Decker@deri.org http://www.StefanDecker.org/ Copyright 2010 Digital Enterprise Research Institute. All rights reserved.
    2. 2. IntroductionDigital Enterprise Research Institute www.deri.ie  Software development is a collaborative activity.  Developers use various tools to solve software related problems:  Bug tracking systems  Source code management system  Continuous build integration frameworks  Developers use different communication channels.  Mailing lists  IRC channels  Discussion forums
    3. 3. Information SeekingDigital Enterprise Research Institute www.deri.ie Mailing lists Issue tracking Configuraiton Source code Test cases Discussion forums systems management Commit logs documentation What are my what is the last Who should I seek Who should i What are the relevant co-workers doing week activity of my help on the task assign the next information to the task co-workers task at hand
    4. 4. Heterogeneous & Interdependent Software RepositoriesDigital Enterprise Research Institute www.deri.ie  Software artefacts are closely related and interdependent. Feature Request Documentatio Specification n Test Data Configuration management etc
    5. 5. Heterogeneous & Interdependent Software RepositoriesDigital Enterprise Research Institute www.deri.ie Source Code Source Code Issue Tracking System Source Repository developers Bugs Bugs committers Bugs developers Source Code Discussion Forum IRC Channel Integrated Development Mailing list Source Code Environment developers
    6. 6. What we have !Digital Enterprise Research Institute www.deri.ie Desktop How to connect these islands Web Discussion forums IRC chat logs Mailing list
    7. 7. Project MemoryDigital Enterprise Research Institute www.deri.ie Query: Give me all developers, bugs and discussions related to a software module Interlinked Platform Discussion forums IRC Chat Logs Mailing lists
    8. 8. But …Digital Enterprise Research Institute www.deri.ie  Data format issues  Relational Data – Bug tracking systems – Discussion forums – Wikis – Source control repositories  Structured Data – Source code  RFC Standards – Mailing lists – IRC Channels
    9. 9. Linked Data Driven Software Development (LD2SD)Digital Enterprise Research Institute www.deri.ie Source Code Source Code Issue Tracking System Source Repository developers Bugs Bugs committers Bugs developers Source Code Discussion Forum IRC Channel Integrated Development Mailing list Source Code Environment developers
    10. 10. Consuming InformationDigital Enterprise Research Institute www.deri.ie Web-based lookup service Plug-in for IDEs
    11. 11. What’s nextDigital Enterprise Research Institute www.deri.ie Large Scale Software Project Integration (The Linked Data way) linked software data set RDF data sources GoogleCode SourceForge GitHub RubyForge code forges linking software project repositories
    12. 12. ConclusionDigital Enterprise Research Institute www.deri.ie  Outlined software tools used by software developers  Discussed problems in software development  Introduced linked data approach in software development paradigm  The idea is to make implicit links between software artefacts explicit and expose them using RDF  Provide valuable information to end users by aggregating information from different interconnected software artefacts

    ×