Symbolik Group uses RUP for software development. It is based in 6 basic principles:
The process must be adapted to the necessities of the project and company. These factors will determine the specific design.
The project limits must be taken into consideration as well. Requirements of actors can be different, contradicting and dispute limited resources. A balance must be found to satisfy their interests.
Software Development isn’t made by only one person but multiple teams. A good/fluid communication must exist in order to coordinate requirements, development, evaluations, etc.
Projects are delivered, even in an internal scope, in iterative phases. In each iteration, the opinion of actors, the stability and the quality of the product are analyzed; the risks involved are revised as well.
This dominant principle motivates the use of reusable concepts like software patterns, 4GL languages or frameworks, to name a few. This prevents software engineers from going directly from requirements to programming of the system. A high level of abstraction also allows analyses at different architectural levels. These can be complemented by visual representations of architectures with standards like UML.
Quality control shouldn’t be performed only in the end of every iteration but in every aspect of production.
A phase based plan is made. Use cases are identified as well as risks.
A plan for the project is made, use cases are completed and risks are worked to be eliminated.
The product is built according to specs.
The product is delivered to the client and the user is trained.
A disciplinated way of assigning tasks and responsibilities (who does what, how and when). Aimed to implement the best practices in software engineering.