Software Development

Language and Development Environments
We know almost all of them. We enjoy learning about new ones. You receive our experience in almost everything from Java/.NET/C#/C/C++ to shell scripting.

Architecture Review
Software is too often updated without regard for the effect on the architecture. Tight deadlines for new functionality often play a role in damaging the overall cohesiveness of the original design. So, perhaps a year after the last deployment, hindsight illuminates what now seem like glaring deficiencies in the original architecture.

We are helping our clients re-engineer their web application through our architecture review service.  This service can be tailored to our client's needs, as appropriate, and includes the following:

  • 3 days of investigation
  • 3 days for the preparation of a tailor-made report
  • 1 day to present a summary of our findings

Phased Deliverables
We make sure you're satisfied at multiple points in the process, not just at the end. It will be what you asked for, period.

All projects have many (sometimes competing) business and technical requirements, a list of feature requirements that cannot meet cost constraints, and limited development resources. Managing project scope is critical to ensuring a project's success. We employ a process of feature prioritization that takes into account the business need, technical complexity, risk, and cost.

E-gineering will work with you and your key management, marketing, and technical stakeholders to define business goals, system features, and technical constraints. Through a series of workshops and meetings, we will facilitate the definition of each feature's business priority, implementation difficulty, and risk to the overall delivery schedule of the project. We will work with the project manager and delivery team to get high-level estimates of effort for feature delivery.

The end result is a Phased Delivery Project Plan with well defined phases, milestone dates, and a list of prioritized features that will be implemented in each phase. This plan establishes a baseline which will deliver critical requirements in a predictable timeframe and allows tracking and management of future changes. Additionally, there will be a Vision Document which details the overall reason for the project to exist (user needs, feature requirements) and the phased plan to guide the project's delivery.

Once the overall Delivery Plan is complete, take advantage of our Requirements Analysis services to flesh out the details of your first phase of development. Back to top

Risk Analysis
Honest assessment of risk and project status.  No "smoke and mirrors". We want you, our customer, to hold us accountable. Issues are going to come up. We believe that it's how you handle them that matters. Back to top

Interactive Design
The success of your application depends on customer and user acceptance. Users become lost if their mental model of the application doesn't match the system model. E-gineering focuses on how customers will use the application to identify and implement a system model consistent with the user's view of the application. We call this User Centered Design.

The information architecture ties data elements, navigation features and content types into a cohesive site map. It identifies persistent data and content categories. Navigation features are targeted at customers so they can find what they need quickly.

Building on the information architecture, we create user scenarios, and storyboards to precisely describe the interface before the project moves to the build stage. Once these deliverables are created, E-gineering can analyze the usability of the interface to ensure that assumptions about the user experience are accurate.

Like our Technical Design Service, the Interactive Design is driven by Use Cases. Using the same documents as input to both the Interactive and Technical Designs ensures that the system is consistent from front to back. Back to top

Technical Design
E-gineering's Technical Design Service ensures that your application can be implemented quickly and efficiently. Our approach is based on best-of-breed object-oriented design techniques. We create models using the industry-standard Unified Modeling Language (UML).

E-gineering has been developing object-oriented systems for years. We are experts in creating reusable object-oriented business models.

During the design process the technical architecture is specified in detail. Object models and sequence diagrams are created from the use cases to describe the static and dynamic nature of the application. Deployment diagrams are created to describe the tiers and processing nodes required to support the application. Back to top

Metrics
A forgotten art on too many projects. Valuable metrics can be collected during and after a project. Everybody wins with metric results: the customer gets a tangible artifact that describes progress.  E-gineering gets to improve upon their methods. An added benefit is that the most important metrics are easy to collect, so the budget of the project isn't adversely affected by the process. Back to top

Reusable Components
Really. We've spent time learning and using proven frameworks and components that will get your application off to a running start. We won't spend endless hours re-inventing the wheel so that you can pay for something that only our subsequent clients will benefit from. We refuse to do it. Back to top

Change Management
Requirements will change. It's proven and it will happen. We will react to change because we expect it. We will work with you to try and identify areas that are likely to change and design the application accordingly. We will tell you, up-front, where we will save you money and you will know, up-front, that changing those parts of the application may be more difficult. The analogy here is that it is easy to add a room to a ranch on the ground floor, but making such a change to your basement isn't nearly as easy (or cost effective for that matter). Back to top

Great Documentation
It won't be put off until the end. It will be part of the phased deliverable. The phase won't be complete without it. In addition we only create documentation that will actually be used. Many documents get created and are stored in the "project repository" never to be read or referenced again. Back to top

Development Assistance
Often times, you, the customer, want extra manpower in order to complete your project on time.  Whether it be code reviews, testing, change control, or just more senior level programming skills, E-gineering provides resources that can step in and support your team.  Back to top

We understand that the customer may very well have the senior management expertise to direct the project and our people.  In that case, E-g is very comfortable in providing the gaps to help complete the project.

 

Back to top