
services
CONTACT US
+4021 311 75 81
office@exesoftware.ro
Send us a RFI / RFP / RFQ
Custom Application Development
Our experienced business analysts, project managers, programmers and testers work on your project from its conceptualization through and beyond its completion and implementation.
We will manage the project engagement to ensure that it remains on its intended course and within budget. It is easy to offer deployable systems and install them, but we will remain with you to ensure that your technical personnel and other employees can successfully use the application.
We also include in our outsourcing software services customized support contracts to meet almost any need.
EXE Software implemented the latest methodologies and procedures in software development industry and has more than ten years experience in order to offer high quality services at minimum costs:
We will manage the project engagement to ensure that it remains on its intended course and within budget. It is easy to offer deployable systems and install them, but we will remain with you to ensure that your technical personnel and other employees can successfully use the application.
We also include in our outsourcing software services customized support contracts to meet almost any need.
EXE Software implemented the latest methodologies and procedures in software development industry and has more than ten years experience in order to offer high quality services at minimum costs:
Agile Development
EXE Software is one of the pioneering practitioners of Agile development.
Some of the principles of agile development methodologies are:
The main benefits of implementing Agile Development methods and procedures are:
Effort Estimation ProcessSome of the principles of agile development methodologies are:
- Client satisfaction through fast and continuous delivery of useful software
- Working software delivered frequently (weekly rather than monthly)
- Working software as the principal measure of progress
- Even late changes in requirements are welcomed
- Close, daily cooperation between business people and developers
- Face-to-face conversation as the best form of communication
- Projects built around motivated, trustworthy individuals
- Continuous attention to technical excellence and good design
- Simplicity
- Self-organizing teams
- Regular adaptiveness to changing circumstances
Why Agile Development
Latest Research reveals that budget forecast accuracy, time-to-market, and end-user satisfaction improve even when teams collaborate across geographic divides, time zones, and cultural barriers.The main benefits of implementing Agile Development methods and procedures are:
- Increase return on investment through focus on providing a continuous flow of value to the client
- Deliver reliable results by engaging clients in frequent interactions and shared ownership of projects
- Manage uncertainty, increase visibility, and drive down the cost of change through iterative development, frequent delivery of working software, anticipation and adaptiveness
- Unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference
- Boost performance through group accountability for results and shared responsibility for team effectiveness
- Improve effectiveness and reliability through situational specific strategies, processes and practices
One of the key factors for the success of a software development project is the ability to accurately estimate the time and/or cost.
Our experts, relaying on historical data and following standard rules, procedures and methods will provide realistic use of effort required to develop or maintain software even on incomplete, uncertain and/or noisy input.
These methods, rules and procedures help development teams:
System Design Document (SDD)Our experts, relaying on historical data and following standard rules, procedures and methods will provide realistic use of effort required to develop or maintain software even on incomplete, uncertain and/or noisy input.
These methods, rules and procedures help development teams:
- Create more accurate effort estimation calculations
- Create consistent client effort estimation reports
- Track status of development project
- Improve existing analysis, design and estimation process
This document is designed for internal use, for our team. It plays an important role in system documentation and maintenance.
The System Design Document (SDD) records the results of the system design process and describes how the system will satisfy the Requirements Specification. The SDD interprets the requirements into a description of the structure, components, interfaces, and data necessary to support the build process.
Proof of ConceptThe System Design Document (SDD) records the results of the system design process and describes how the system will satisfy the Requirements Specification. The SDD interprets the requirements into a description of the structure, components, interfaces, and data necessary to support the build process.
-
The main topics of this document are:
- System Overview
- Design Constraints
- System Hardware Architecture
- System Software Architecture
- Database Management System Files
- Non-Database Management System Files
- Inputs
- Outputs
- Hardware Detailed Design
- Software Detailed Design
- Interface Architecture
- Interface Detailed Design
A proof of concept can refer to a partial solution involving a relatively small number of users acting in business roles to establish whether the system satisfies a certain aspect of the requirements.
We have a streamlined methodology for implementing quality PoC with any necessary systems integration to meet your specific goals and requirements.
The main benefits of developing PoC before starting a project are:
Last but not least, please consider that if you have a need to present a potential solution to the board or stakeholders to secure further funding or investment, then our Proof of Concept development service is the optimal choice.
Coding StandardsWe have a streamlined methodology for implementing quality PoC with any necessary systems integration to meet your specific goals and requirements.
The main benefits of developing PoC before starting a project are:
- Ability for your business users and decision makers to visualize early on the look-and-feel of the solution.
- Very clear understanding of requirements.
- Ability to assess design decisions early in the process.
- Understanding of the capabilities and limitations of new technologies.
- Reduction in the overall risk of project failure.
Last but not least, please consider that if you have a need to present a potential solution to the board or stakeholders to secure further funding or investment, then our Proof of Concept development service is the optimal choice.
Successful software development is a long term activity because successful software will live a long time: new features to be added, new platforms to be supported and the software must be adapted to new markets. Therefore, in many cases, the code base should be maintained by a succession of many different programmers over a period of many years.
Long term collaboration involves great responsibility for us in maintaining the code implemented for all our clients. Based on well known industry standards and on our experience we have developed and implemented strong code standards.
This helped us:
Code CommentsLong term collaboration involves great responsibility for us in maintaining the code implemented for all our clients. Based on well known industry standards and on our experience we have developed and implemented strong code standards.
This helped us:
- Improve code maintainability.
- Improve code quality. In particular: testability, supportability, portability, security, efficiency, robustness, high cohesion/loose coupling.
- Improve development speed.
- Increase teamwork efficiency. We do not waste time with needless debates.
- Have better performance under pressure.
- Record fewer bugs. We minimized common coding mistakes.
We implemented specific procedures and methods for inserting and writing code comments in all our source code. This is available for each type of development environment, language or tool used in our company (.Net, Java, ColdFusion, SQL etc.).
Code comments procedures and methods are an important subset of Coding Standards implemented in our company and have a significant contribution in providing better quality software development and maintenance services.
Code ReviewCode comments procedures and methods are an important subset of Coding Standards implemented in our company and have a significant contribution in providing better quality software development and maintenance services.
Code review is a process whereby one member of a team reviews the code of other members of the team. There can be one or several reviewers.
Code review process is one of the building blocks of better software solutions. EXE Software integrates code review procedures in every step of the development process.
By implementing these procedures we obtained the following benefits:
QA and TestingCode review process is one of the building blocks of better software solutions. EXE Software integrates code review procedures in every step of the development process.
By implementing these procedures we obtained the following benefits:
- Better quality code - using review process we can identify defects early in the development process. In that way the benefit is the cost that we save to identify these errors.
- Enforcing coding standards - by reviewing other developers we enforce company's coding standards. This also functions as a back-up system to ensure code readability to other developers on the team.
- Better structured code - when a developer knows that someone will review his/her code, the code that he/she writes will be more documented and easier to read.
- Wider project overview - the developer that performs the code review can review areas in the system that he/she never analysed before.
- Mentoring tool - the use of code review to enrich developers' experience by providing them with new insights and development options
The importance of mitigating the risk of failure in software is quickly growing in today's IT&C environment. We really understand that this comes with great responsibility for us: the success of an application for our clients' business and of our organisation relies on the quality of the software products we deliver.
At EXE Software, QA is involved in the project from the very beginning. This helps the team of EXE communicate and understand the problems and concerns, as well as gives time to set up the testing environment and configuration.
Software Testing starts after the test plans are written, reviewed and approved based on the design documentation.
The testing process involves the following activities:
In order to offer highly reliable applications we are currently using the following testing methods:
Release StrategyAt EXE Software, QA is involved in the project from the very beginning. This helps the team of EXE communicate and understand the problems and concerns, as well as gives time to set up the testing environment and configuration.
Software Testing starts after the test plans are written, reviewed and approved based on the design documentation.
The testing process involves the following activities:
- Understanding and reviewing requirement specifications
- Creating Software Test Plan
- Creating detailed Test Cases
- Creating Test Data
- Setting up the test environment
- Executing tests
- Managing defects
- Analyzing results
In order to offer highly reliable applications we are currently using the following testing methods:
- Black box testing - based on requirements and functionality, not on any knowledge of internal design or code
- White box testing - based on knowledge of the internal logic of the application code. Tests are based on coverage of code statements, branches, paths, conditions
- Unit testing - testing particular functions or code modules. Performed by the programmer and not by testers, as it requires detailed knowledge of the internal program design and code
- Incremental integration testing - continuous testing of an application as new functionality is added; performed by programmers or by testers
- Integration testing - testing the combined parts of an application to determine if they function together correctly
- End-to-end testing - similar to system testing; the 'macro' end of the test scale; involves testing of a complete application environment in a situation that mimics real-world use, such as interacting with a database, using network communications, or interacting with other hardware, applications, or systems if appropriate
- Regression testing - re-testing after fixes or modifications of the software or its environment. Automated testing is commonly used for this type of testing
- Load testing - testing an application under heavy loads, such as testing a web site under a range of loads to determine at what point the system's response time degrades or fails
- Stress testing - functional testing while under unusually heavy loads, heavy repetition of certain actions or inputs, input of large numerical values, large complex queries to a database system etc.
- Performance testing - as defined in requirements documentation or QA or Test Plans
- Usability testing - testing for 'user-friendliness'. User interviews, surveys, video recording of user sessions, and other techniques can be used
- Install/uninstall testing - testing of full, partial, or upgrade install/uninstall processes
- Recovery testing - testing how well a system recovers from crashes, hardware failures, or other catastrophic problems
- Compatibility testing - testing how well the software performs in a particular hardware/software/operating system/network/etc. environment
- Exploratory testing - a creative, informal software test that is not based on formal test plans or test cases; testers may be learning the software as they test it
- User acceptance testing (UAT) - determining if software is satisfactory to an end-user or client
One of our highest priorities is to satisfy your business needs through early and continuous delivery of valuable software. In all our development projects we plan to deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
The main benefits of this strategy are:
Project Status ReportThe main benefits of this strategy are:
- Create value - the project was initiated because it provides value to you. By releasing early, you can get some return on your investment by delivering some of that value right away. The release will give the project allies that hope for its success and it will increase the feedback that is the life blood of any project.
- Reduce risk - releasing often reduces the risk of being on the wrong track or of never being able to deliver.
- Crisis after the first release - users suddenly realize that what they need is not what they said they needed. Replacement projects have the greatest risk of running into problems with a long release cycle.
- Handle change - most organisations operate in an environment that continually changes. A successful organisation adapts and takes advantage of new possibilities. This has implications for the IT-solutions that the organisation uses. The ideal feature set in a particular system will change over time. The longer it takes from specification to production, the higher the risk that a feature is obsolete before it is deployed to production.
- Focus - with short releases users do not need to predict what their needs will be a long time into the future. They can focus on what is vital in the short run. This reduces the risk of developing features that turn out to have little value. Frequent releases also reduce the need for bug fixes. As releases become more frequent, there will be more bugs that can wait until the next release. This reduces the discomfort of having to work with parallel versions.
- Terminate early - When a project releases often, it has the option of cutting development early and not delivering all the features that were planned from the beginning. It does not matter if the early cut-off is caused by external or internal factors. In both cases frequent releases have the effect of expanding project options.
Contains details of project execution and implementation. One of the most important activities of any project is project tracking. We ensure this is done efficiently by observing our process for project monitoring. The Project Status Report (PSR) includes details about the current status of the project.
Change Request Document
Contains change requests to be incorporated. This also includes the nature of the change, whether it is internal or from the client, as well as the scope and reason for the change.
Impact Analysis Document
Contains the details about the impact of the change requested on the entire product and individual module. This is a very important document, as it helps keep track of changes and eliminates unusual bugs in the code.
Minutes of Meeting
Contain details of the client meeting and the agenda for the next meeting. We follow this standard to keep track of and follow each interaction during project development.

