Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
A Component- and Message-Based Architectural Style for GUI Software
IEEE Transactions on Software Engineering - Special issue: best papers of the 17th International Conference on Software Engineering (ICSE-17)
Pattern-oriented software architecture: a system of patterns
Pattern-oriented software architecture: a system of patterns
Software architecture in practice
Software architecture in practice
A Comparative Study of Synthesis Methods for Discrete Event Controllers
Formal Methods in System Design
Proof, language, and interaction
A real world object modeling method for creating simulation environment of real-time systems
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Autonomous Robots
Java-MaC: A Run-Time Assurance Approach for Java Programs
Formal Methods in System Design
UML-based service robot software development: a case study
Proceedings of the 28th international conference on Software engineering
Proceedings of the 28th international conference on Software engineering
ReeF: defining a customizable reengineering framework
CAiSE'07 Proceedings of the 19th international conference on Advanced information systems engineering
Formal construction and verification of home service robots: a case study
ATVA'05 Proceedings of the Third international conference on Automated Technology for Verification and Analysis
Feature-oriented re-engineering of legacy systems into product line assets: a case study
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
ICSR'06 Proceedings of the 9th international conference on Reuse of Off-the-Shelf Components
A goal-oriented approach for the generation and evaluation of alternative architectures
ECSA'07 Proceedings of the First European conference on Software Architecture
Hi-index | 0.00 |
With the advances of robotics, computer science, and other related areas, home service robots attract much attention from both academia and industry. Home service robots present interesting technical challenges to the community in that they have a wide range of potential applications, such as home security, patient caring, cleaning, etc., and that the services provided by the robots in each application area are being defined as markets are formed and, therefore, they change constantly.Without architectural considerations to address these challenges, robot manufacturers often focus on developing technical components (e.g., vision recognizer, speech processor, and actuator) and then attempt to develop service robots by integrating these components. When prototypes are developed for a new application, or when services are added, modified, or removed from existing robots, unexpected, undesirable, and often dangerous side-effects, which are known as feature interaction problem, happen frequently. Reengineering of such robots can make a serious impact in delivery time and development cost.In this paper, we present our experience of re-engineering a prototype of a home service robot developed by Samsung Advanced Institute of Technology. First, we designed a modular and hierarchical software architecture that makes interaction among the components visible. With the visibility of interactions, we could assign functional responsibilities to each component clearly. Then, we re-engineered existing codes to conform to the new architecture using a reactive language Esterel. As a result, we could detect and solve feature interaction problems and alleviate the dificulty of adding or updating components.