Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Fac tExtraction For Ruby On Rails Platform
Blekinge Institute of Technology, School of Computing.
2010 (English)Independent thesis Advanced level (degree of Master (Two Years))Student thesis
Abstract [en]

In the field of software engineering, software architecture plays an important role particularly in areas of critical and large-scale software system development and over the years it has evolved as an important sub-discipline within the field of software engineering. However, software architecture is still an emerging discipline mainly attributed by the lack of standardized way for architectural representation and also due to lack of analysis methods that can determine if the intended architecture translates into correct implementation during the software development [HNS00]. Architecture compliance checking [KP07] is a technique used to resolve latter part of the problem and Fraunhofer SAVE (Software Architecture Visualization and Evaluation) is a compliance-checking tool that uses fact extraction. This master’s thesis provides fact extraction support to Fraunhofer SAVE for a system developed using Ruby on Rail framework by developing a fact extractor. The fact extractor was developed as an eclipse plug-in in Java that was integrated with SAVE platform, it consists of a parser that parses Ruby source code and then generates an abstract syntax tree. The architectural facts are extracted by analyzing these abstract syntax trees using a visitor pattern from which architecture of the system are generated. It is represented using the internal model of the SAVE platform. The fact extractor was validated using two reference systems of differing sizes developed using Ruby on Rails framework. A reference system with smaller size, which contains all the relevant Ruby language constructs, was used to evaluate correctness and completeness of the fact extractor. The evaluation result showed the correctness value of 1.0 or 100% and completeness value of 1.0 or 100%. Afterwards, a larger application with more complex architecture was used to validate the performance and robustness of the fact extractor. It has successfully extracted, analyzed and build the SAVE model of this large system by taking 0.05 seconds per component without crashing. Based these computations, it was concluded that the performance of the fact extractor was acceptable as it performed better than C# fact extractor.

Place, publisher, year, edition, pages
2010. , 59 p.
Keyword [en]
Fact Extractor, SAVE, Ruby on Rails, Compliance checking, Parser, eclipse Plug-in
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:bth-2542Local ID: oai:bth.se:arkivexE233CEF61404603AC12577EC004E0C26OAI: oai:DiVA.org:bth-2542DiVA: diva2:829825
Uppsok
Technology
Supervisors
Available from: 2015-04-22 Created: 2010-12-01 Last updated: 2015-06-30Bibliographically approved

Open Access in DiVA

fulltext(1102 kB)96 downloads
File information
File name FULLTEXT01.pdfFile size 1102 kBChecksum SHA-512
f7dab9213b5419ff7bf048941eae3a69a07f797f042fe379fab10aaa3dc619857d41ec6518af6737cd6b393f6fa20bba9eee27a2057d9393d6f422fb7ca0410b
Type fulltextMimetype application/pdf

By organisation
School of Computing
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 96 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 33 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf