Theory and Practice
In every aspect there is software development theory and there is practice. There is the plan, and there is its execution. This paper addresses itself with the practice and execution of utilizing Shlaer-Mellor object-oriented analysis on real-time control systems. The task of the project manager is to make the theory and the plan work together in the context of a given organization, project, and engineering team. This paper explain experiences in this world and shows an approach which suited best, evolved over time and with the assist of other software development employees working in that particular area, for ensuing with this work.
The experiences explained in this paper were increased on five different projects. They concerned medium to big real-time systems. The organizations usually had small or no past experience with formal analysis software development techniques. The incentive for utilizing a more formal approach comprised efforts to
Object Oriented Software Development
- Utilization again and again all or significant parts of the system,
- Manage the size and complexity of the system,
- Develop a long-term, product platform and
- Improve the software development methods.
The first two projects were on distributed minicomputer platforms. The last three were on embedded, distributed, microcomputer platforms. The following table provides a summary of these projects.
Shlaer-Mellor object-oriented analysis utilizes an integrated group of models to recognize the conceptual objects in the system, behavior, and the needed processing. The cause for utilizing this approach comprise
- Its explicit attention to real-time issues,
- The skill to confirm the analysis by replicate the models,
- The availability of contents, training and technical support for it
- Its prescribed approach for transitioning from analysis to design.
The reader is encouraged to read the first two references for more details on this approach.
2. The Real World
Practice, as opposed to theory, is usually neither attractive nor clean. In this all aspects of projects that are looks sometimes ugly and dirty are considered. The problems here are not to point a self-righteous finger at these areas, but to recognize that they do exist and will have a negative impact on the software development project if not efficiently addressed. The areas in that Object Oriented Analysis can offer assistance are noted.