Approach for analysis and design of Enterprise application
In general, developing application for our clients means that the particular application will serve our client only or a very limited set of users in a very specific area. Also this includes the fact that these users possess large experience in this specific area having high requirements for usability, speed and functionality of application.
For the development of a successful application one should study the following aspects:
- environment where this application will be used;
- application domain for which this software is developed;
- users who will be working with this software;
For a comprehensive analysis of these issues, we build a model of the environment where this software will be used and a model of users who will be working with this software. We consider these models when conducting business analysis, when developing user interface design, as well as when developing Users Story and Use Cases. Next, we design software architecture based on all project specifications and plan our approaches to software testing. In general, we pay special attention to the stages of analysis and application design.
Development and implementation approaches
We implement such solutions as Desktop applications, Cloud & Saas Applications, and Mobile Applications. Most often, these solutions are designed as web applications available in company’s networks for their internal use.
We pay special attention to the users’ training process, preparing presentations, users’ tutorial webinars, as well as special documentation for people responsible for the software maintenance. Also we may prepare user manuals that help to study the system operation workflow itself.
Business model for application development
We can develop enterprise applications based on the T&M approach, having first defined the required budget and functionality with the client or based on Fixed Project cost. We always recommend our clients to choose T&M approach, as it allows flexibility in changing the required functionality and their development priorities while controlling the budget. This approach also allows applying such methodologies as SCRUM and Agile in the best possible way.
Our Software Application Development Services Include:
- Business analysis, domain studying and research, studying of users and business needs
- Application design, UI/UX design including mockups, software development, and Quality Assurance
- Systems integration and prelaunch testing
- Presentations for users and online webinars for teaching users to work with the developed application
- Re-engineering, performance tuning and porting service
For application development we use the following technologies:
UML, RUP, MS Visio, Design patterns GoF, MVS, MVVM
MS Visual Studio 2008/2010, Eclipse, NetBeans, PhoneGap, CodeSys
Oracle, MS SQL Server®, MS SQL, PostGres, MongoDB, Dynamic DB
TCP/IP, UDP, SOAP, JSON, SIP, RTP, RTCP, HTTP, FTP, DALI, EnOcean, MBus
NHirnate 4, Entity Framework 4, DirectX, XNA, Telerik, ComponentOne, DevExpress, SWING, JNI, ANT, BIRT, Spring, Spring Security, Enterprice Java Beans, c3p0, iText, pd4ml, MAVEN
Web libraries and technologies
JQUERY, AJAX, Web Services, JSF 2.1, Facelets, Struts, Primefaces 3.2, Prettyfaces
Mobile Systems and Technologies
Visual C#, .NET Compact Framework, Java Me
IIS, MS Speech Server, MS Live Communication Server, MS SharePoint Server, MS Exchange Server, MS Project, Apache, Tomcat(v. 6 and v. 7), GlassFish, Jetty
WinForms, WPF, WCF, .NET Framework, ADO.NET, COM, COM+, OLE, OLE Automation, ActiuveX, Networks, VoiceXML, SALT, Windows services
Windows OS family, Linux OS Family, Linux Embedded Android, MacOS X, iSO
SCRUM, Agile, Extreme Programming, RUP
Hadoop, Windows Azure, Amazon S3, ES2