RTeamworks, Inc.
Software Engineering Consulting Services
Experience makes the difference

 

Home
Up


Software Architecture Analysis and Consulting

Every software system needs a solid foundation on which to build. This foundation called the software architecture may mean the difference between a system's success or failure.

Our RTeamworks experts can help guide you through the development of a properly architected software system. Our approach is tailored to specific product or problem domains. We consider testability, performance assessment and tuning, risk mitigation, robustness, and flexibility at the beginning of the development process.

We are goal oriented and seek to reduce program risk. We believe that testability, performance assessment and tuning, risk mitigation, robustness and flexibility must be considered at the beginning of development process so that the greatest improvements may be realized through the life of the program. The approach we use for a  system is tailored to the technical (and sometimes political) constraints of the program.

Model Driven Development

Model Driven Development is a new paradigm in software development that involves building executable UML models.  One of the key aspects of this paradigm is that a single model artifact defines the analysis, design, documentation, tests, and implementation views for the system.  From this model, the executables are generated.  All of the external source files generated by the tool are intermediate artifacts and are NOT maintained -- the model IS the source.

Model Driven Architecture (MDA) is an approach to software development with great potential for some projects.  However, MDA may not be the right approach for all projects.  The success of MDA on a project depends heavily on the choice of modeling tool and methodology.  Unfortunately, there is no clear definition of what constitutes MDA, however the "vision" it offers for an  approach that separates system dependent and system independent issues has potential. 

The planning and process for defining and building a system's architecture can be improved by using Model Driven Development.  RTeamworks has valuable experience building executable models using different methodologies.

Some call Model Driven Development simply an evolution of computer languages and the way we build our software systems.  However, there are enough differences in the way you approach Model Driven Development, compared to the traditional approach, that an organization must make some major adjustments for successful incorporation.  Here are a few issues to be considered when migrating to Model Driven Development:

  • The organization must obtain and use a quality UML modeling tool
  • More members of the team will need to work with the modeling tool than ever before
  • Tools that handle requirements, configuration management, and change management will also be integrated into one tool environment
  • The organization of the UML model is very important
  • MDA forces a significant change in how software is developed
  • Full emersion into UML semantics and syntax will be required

An organization can be successful at Model Driven Development and benefit from lower costs, higher quality, more usable and maintainable software, and a more mature software development culture.  But, without the proper planning, process, and tool selection, none of these benefits will be realized.  In fact, the cost can be higher, lower productivity, and lower quality.

RTeamworks has helped companies make the appropriate adjustments to project management, tool environment, and technical understanding needed to successfully adopt Model Driven Development.

Key Benefits

  • Establish a model process and tool environment that will sustain a highly successful and productive Model Driven Development approach
  • Establish and maintain modeling artifacts that will be of benefit to other projects
  • Build software systems that are resilient to change, have a flexible design, and easy to maintain
  • Employ good software architecture principles that will produce software systems with a good foundation for development and deployment

Capabilities

  • Help your organization assess the pros and cons of employing a Model Development approach
  • Define and implement a process to support Model Development
  • Define requirements for and help with selection of appropriate tool to support Model Development
  • Support analysis, design, implementation, and test of system software architecture
  • Mentor team members on UML, architecture, and Model Development


Information Request Form

Select the items that apply, and then let us know how to contact you.

Send service literature
Send company literature
Have someone contact me

Name
Title
Company
Address
E-mail
Phone

Home Up Feedback Contents Search

Send mail to webmaster@rteamworks.com with questions or comments about this web site.
Copyright © 2005 RTeamworks, Inc.            Last modified:  10/22/07

 

 

 

 

 

 

OO Software Architecture - Object-Oriented Software Architecture - Unified Modeling Language - UML - Object-Oriented Software Programming - Object-Oriented Methodology - Model Driven Development - MDD - Model Driven Architecture - MDA - Visual Modeling - Executable Models - Executable UML -  Real-Time Software - Real-Time Systems - Real-Time Software Architecture - Booch Methodology - Architectural Patterns - Embedded Systems - Embedded Software - Cross Development - Software Development - Real-Time Software Development - Consulting - Expert - Contracting - Auto Code Generation - Test Generation - Test Automation - Auto Documentation Generation - Ada Programming Language - C++ Programming Language - C Programming Language - Pictures to Code - Technology - Rose RT Training - Rose RealTime Training, Jobs - Software Engineering Positions -  Huntsville Jobs - Employment