Page 214 -
P. 214

7.3   Implementation issues  197




                                 UML deployment diagrams

                          UML deployment diagrams show how software components are physically deployed on processors; that
                          is, the deployment diagram shows the hardware and software in the system and the middleware used
                          to connect the different components in the system. Essentially, you can think of deployment diagrams as
                          a way of defining and documenting the target environment.

                                         http://www.SoftwareEngineering-9.com/Web/Deployment/


                                         A software development platform should provide a range of tools to support soft-
                                       ware engineering processes. These may include:

                                       1.  An integrated compiler and syntax-directed editing system that allows you to
                                          create, edit, and compile code.
                                       2.  A language debugging system.
                                       3.  Graphical editing tools, such as tools to edit UML models.

                                       4.  Testing tools, such as JUnit (Massol, 2003) that can automatically run a set of
                                          tests on a new version of a program.
                                       5.  Project support tools that help you organize the code for different development
                                          projects.


                                       As well as these standard tools, your development system may include more special-
                                       ized tools such as static analyzers (discussed in Chapter 15). Normally, development
                                       environments for teams also include a shared server that runs a change and con-
                                       figuration management system and, perhaps, a system to support requirements
                                       management.
                                         Software development tools are often grouped to create an integrated develop-
                                       ment environment (IDE). An IDE is a set of software tools that supports different
                                       aspects of software development, within some common framework and user inter-
                                       face. Generally, IDEs are created to support development in a specific programming
                                       language such as Java. The language IDE may be developed specially, or may be an
                                       instantiation of a general-purpose IDE, with specific language-support tools.
                                         A general-purpose IDE is a framework for hosting software tools that provides data
                                       management facilities for the software being developed, and integration mechanisms,
                                       that allow tools to work together. The best-known general-purpose IDE is the Eclipse
                                       environment (Carlson, 2005). This environment is based on a plug-in architecture so
                                       that it can be specialized for different languages and application domains (Clayberg and
                                       Rubel, 2006). Therefore, you can install Eclipse and tailor it for your specific needs by
                                       adding plug-ins. For example, you may add a set of plug-ins to support networked sys-
                                       tems development in Java or embedded systems engineering using C.
                                         As part of the development process, you need to make decisions about how the
                                       developed software will be deployed on the target platform. This is straightforward
   209   210   211   212   213   214   215   216   217   218   219