Project Methodology

Project Methodology

Q

uality software development methodology is aligned with RUP. The Rational Unified Process is an innovative software engineering process that enhances team productivity and delivers software best practices, ensuring the timely delivery to clients. It is tightly integrated with Rational tools, allowing development teams to gain the full benefits of the UML.

Functionality

The Rational Unified Process was developed by Rational University for the object oriented technology they had founded. RUP follows a waterfall-like pattern and customizes it to meet the unique requirements of object-oriented design. The end result is scalable, distributed; multi tiered and works in conjunction with the Unified Modeling Language.

It is underpinned by a key practice - each project iteration cycle begins with clear objectives and concludes with an evaluation of whether they have been met - and focuses on 6 best practices designed to develop high quality enterprise applications:

Develop iteratively to mitigate risk early in the project

Effectively manage requirements

Model visually to manage complexity

Use component architectures to build resilient architecture

Verify quality throughout the lifecycle

Control changes to software

The Quality Excellence software engineering team through a number of phases - inception, elaboration, construction and transition.

The objective at the inception stage is to achieve concurrence among all stakeholders on the lifecycle objectives for the project (e.g. project scope, boundaries and associated conditions and acceptance criteria) and determination of project schedule, resources and cost.

The elaboration stage focuses on the engineering process and involves analysis of the software design architecture, base lining of the project vision and construction plan and rationalization of the project plan. The outcome of this stage include the system use case model, refined non-functional specifications, software architecture documentation, revised risk list and a development plan.

In the third phase, construction, the actual implementation /development begins. Objectives are to optimize resources and processes to produce a complete and fully functional software product. In the final transitional stage, the software product is deployed and the objectives are for users to be self-supporting and for the project to be completed on time and budget, to vision and specifications. Beta testing, acceptance testing, training, fine tuning, project assessment and sign-off all occur at this stage.

Software Methodologies and Reuse

Transitioning software development from an art to an engineering discipline is not easy. However, creating structure and reuse around software development is paramount to delivering on time and on budget. In today's business environment, on-time and on-budget is no longer an option but a project requirement. Quality Excellence provides the development tools and techniques to ensure these expectations are met.

Applying RUP for Business Benefit

RUP effectively eliminates risk early in the phase of the project and ensures that the client's business requirements are totally satisfied by the end system/application produced. RUP is totally Web-enabled. It provides an online mentor or e-coach on each desktop plus presentation in HTML format for universal, platform-independent access across a corporate intranet. The result is a team of software engineers with easy access to the guidelines they need and the information they want - and, as a result, the ability to better support the development life cycle.

The RUP provides the clear, repeatable process needed for the on-time, on-budget development of quality software, which meets current business requirements and is scalable to future needs.

Methodologies and Process

Over the last decade, significant progress has been made in structured software methodologies. The Rational Unified Process (RUP) has led the pack as a full life cycle method for creating a repeatable development process that disambiguates project deliverables. RUP enables individuals that know the process, but haven't worked together before, to quickly contribute toward project deliverables in a consistent manner. UML, or the Unified Modeling Language is another leap forward in delivering consistent project documents and artifacts.In addition to budget and deadline restrictions, businesses are putting more emphasis on agile processes. This includes software development processes that enable users to quickly make changes to the system to reflect new business needs. Extreme Programming, or XP, is a development methodology at the forefront of agile methods.

Quality Excellence embraces RUP, UML and XP and has made a thorough analysis of what components should be used on different types of projects. Quality Excellence's consultants are equipped with best-of-breed methodologies and tools such as Reality to successfully deliver complex enterprise project assignments. Quality Excellence can provide your internal staff with customized training and mentoring programs to realize the same benefits of quality, consistency and timeliness for your projects as well.

Software Reuse

Reuse Empowerment focuses on creating reusable intellectual property resulting in better quality, lower development costs and reduced delivery time. Many organizations have made the move to object-oriented languages and service-oriented architecture. Our processes are documented, institutionalized and evaluated, helping us become more effective and efficient with every project we work on. We apply Quality architectures. However, switching to component-based development or service-oriented frameworks does not inevitably lead to software reuse. Required changes are needed in process and organization to recognize substantial productivity gains.

Quality Excellence's Reuse Jump Start program is a step-by-step process to enable your organization to realize these gains. Case studies have shown that it is very difficult for an organization to make the changes necessary to instill software reuse on their own. Quality Excellence works with you to set up software asset management tools, teaches your staff the processes that facilitate reuse, and works with you on best practices as you make the transition.

If your organization needs to bring down the cost of software development or enforce stricter on-time, on-budget requirements, contact Quality Excellence to see how our expertise in development methodologies and software reuse can help your organization.