At Cysca-Sysacom we manage projects using a method that is a mix of the more classical waterfall model and the modern Agile model. The Agile model is better for software development and especially software for man-machine-interfaces since it enables continuous involvement from the customer and users. While the Waterfall model is better applied to projects which involve hardware design and manufacturing, since it is difficult to separate the project in many partial product releases as required by the Agile model.
The waterfall model is a sequential (non-iterative) design process, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of conception, initiation, analysis, design, construction, testing, production/implementation and maintenance. The waterfall development model originates in the manufacturing and construction industries: highly structured physical environments in which after-the-fact changes are prohibitively costly.
Waterfall model is generally composed of the following phases:
- Requirements capture
Agile model refers to an iterative, incremental method of managing the design and build activities of engineering, information technology and other business areas that aim to provide new product or service development in a highly flexible and interactive manner. It requires capable individuals from the relevant business, openness to consistent customer input, and management openness to non-hierarchical forms of leadership. Agile has conceptual links to lean techniques, kaizen, and the Six Sigma area of business ideas.
The Manifesto for Agile Software Development
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation (Requirements cannot be fully collected at the beginning of the software development cycle, therefore continuous customer or stakeholder involvement is very important.)
- Responding to change over following a plan
The Agile Manifesto is based on twelve principles:
- Customer satisfaction by early and continuous delivery of valuable software
- Welcome changing requirements, even in late development
- Working software is delivered frequently (weeks rather than months)
- Close, daily cooperation between business people and developers
- Projects are built around motivated individuals, who should be trusted
- Face-to-face conversation is the best form of communication (co-location)
- Working software is the principal measure of progress
- Sustainable development, able to maintain a constant pace
- Continuous attention to technical excellence and good design
- Simplicity—the art of maximizing the amount of work not done—is essential
- Best architectures, requirements, and designs emerge from self-organizing teams
- Regularly, the team reflects on how to become more effective, and adjusts accordingly
Project Management & Mentoring
With our extensive expertise, our project managers will assist you in managing your projects. We can easily use your existing processes or help you defining best or improved practices tailored to the context of your organization.
Reengineering of Processes and Change Management
Improving and optimizing processes require an acute sense of observation and special abilities to ensure people’s buy in and ultimately, a smooth implementation of changes. Our experts will propose solutions tailored to your organization and your specificities.