Not Signed-In
Which clippings match 'Requirements Engineering' keyword pg.1 of 1
18 APRIL 2014

Design conceptualisation through reverse engineering abstraction

"2.1 Abstraction Levels: An abstraction for a software artifact is a succinct description that suppresses the details that are unimportant to software developer and emphasizes the information that is important. For example, the abstraction provided by high level programming language allows a programmer to construct the algorithms without having to worry about the details of hardware register allocation. Software typically consists of several layers of abstraction built on top of raw hardware; the lowest–level software abstraction is object code, or machine code. Implementation is a common terminology for the lowest level of detail in an abstraction. When abstraction is applied to computer programming, program behavior is emphasized and implementation details are suppressed. The knowledge of a software product at various levels of abstraction undoubtedly underlies operations regarding the maintenance and reuses the existing software components. It is, therefore natural that there is a steadying growing interest in reverse engineering, as a capable of extracting information and documents from a software product to present in higher levels of abstraction than that of code. The abstraction as the process of ignoring certain details in order to simplify the problem and so facilitates the specification, design and implementation of a system to proceed in step–wise fashion. In the context of software maintenance [3], four levels of reverse engineering abstraction are defined: implementation abstraction, structural abstraction, functional abstraction and domain abstraction.

Implementation abstraction is a lowest level of abstraction and at this level the abstraction of the knowledge of the language in which the system is written, the syntax and semantics of language and the hierarchy of system components (program or module tree) rather then data structures and algorithms is abstracted. Structural abstraction level is a further abstraction of system components (program or modules) to extract the program structures, how the components are related and control to each other. Functional abstraction level is a higher abstraction level, it usually achieve by further abstraction of components or sub–components (programs or modules or class) to reveal the relations and logic, which perform certain tasks. Domain Abstraction further abstracts the functions by replacing its algorithmic nature with concepts and specific to the application domain."

(Nadim Asif, 2003)

Nadim Asif (2003). "Reverse Engineering Methodology to Recover the Design Artifacts: A Case Study". International Conference on Software Engineering Research and Practice, SERP '03 Las Vegas, Nevada, USA. Volume 2.


2003abstract representation • abstraction layers • abstractions for problem solving • application domain • appropriately complex representation • conceptual hierarchy • conceptual organisation • conceptualisationdesign abstractiondesign conceptualisationdesign methodologydesign modeldesign problem • domain abstraction • functional abstractionhigh-level design • implementation abstraction • layers of abstraction • problem abstractionproblem-solvingrequirements engineeringreverse engineeringreverse engineering abstraction • Reverse Engineering Abstraction Methodology (REAM) • software abstraction • software artefact • software designsoftware engineeringsoftware modellingstructural abstraction • system components • system processes • systems theory


Simon Perkins
21 FEBRUARY 2014

Video Tutorial of OOP Design Patterns

Fig.1 Java Video Tutorial by Derek Banas, 19 August 2012.



data abstraction • Derek Banas • design patterns • encapsulation • inheritanceJavamodelling language • object class • object-oriented designOOP • OOP concepts • OOP design principles • programming fundamentals • requirements engineeringsoftware code • software design principles • software design problems • software developmentsoftware engineeringsoftware modellingsoftware programmingsoftware requirementssoftware tutorial • subclass • superclass • UML • UML diagram • Unified Modelling Languagevideo tutorial


Simon Perkins
22 OCTOBER 2013

Project Management and Business Analysis Guides

"The Project Service Centre (PSC) role within CSU is to establish sound Project Management (PM) principles throughout the organisation. This will provide a means of clearly identifying the true needs of the University and help facilitate those desired outcomes.

To achieve these objectives, the PSC must provide and enhance the methodology for project management and business analysis, including guides and templates. This particular section concentrates on a set of guides which recommends how different processes can be undertaken."

(Charles Sturt University)


enefits analysis • brainstormingbusiness analysisbusiness analystbusiness communicationbusiness logicbusiness management • business process modelling • Charles Sturt University • conducting meetings • cost estimatedecision makingdocument analysis • echnical specification • elicitation practices • elicitation process • engineering process • financial analysis • focus group • functional decomposition • gathering requirements • interface analysis • interviewingmodelling and prototyping • needs analysis • PowerPoint lectureproblem-solvingproject managementprototypingquestionnaire • requirements analysis • requirements elicitationrequirements engineeringrequirements gatheringrequirements process • requirements workshop • reverse engineeringrole playingshared practicessoftware engineering • stakeholder interviews • surveysystem requirementsuse casesuser activity data • user observation • workshops


Simon Perkins

to Folksonomy

Can't access your account?

New to Folksonomy?

Sign-Up or learn more.