Custom Development for Your Needs
One of our core competencies is performing custom .NET development for a range of Microsoft and Linux based products. Our language proficiency ranges but focuses on both front end and backend development for products including (but not limited to)
- Microsoft SharePoint
- Microsoft Team Foundation Server
- Microsoft Project Server
- Microsoft SQL Server
- Microsoft Windows Applications
- Mobile Development
- Windows PowerShell
- Linux (SSH)
- Penetration Languages/BackTrack Technologies
Utilizing our Combined Lifecycle Model (CLM), TEDI approaches complex IT challenges with a structured step by step strategy for .NET, infrastructure, or ALM solution.
Our capabilities surrounding our technical languages focus primary on Microsoft and Linux development. Amongst those we have the resources to satisfy any development requirement. We continue to expand our knowledge with each engagement and certification we pursue. Keeping up on the latest technologies and frameworks for development is essential to our core business focus. We pride ourselves on the adaptability we deliver and utilize what we have learned over years to both our clients and our internal product development.
- C# 100%
- C++ 95%
- PowerShell 100%
- JSON 95%
- HTML 100%
- SQL 100%
- SSH 95%
- Ruby 90%
- Python 100%
- Violent Python 100%
Defining Our Process
The Combined Life-cycle Model (CLM)
As a result of spending years performing custom cloud solutions, .NET development efforts, and other large scope IT projects, TEDI has combined all of its knowledge and approach into a Combined Lifecycle Model (CLM). The CLM incorporates various development methods including AGILE/SCRUM, Standard Development Lifecycle (SDLC), and Unified Modeling Language (UML). Each of these models are essential but individually do not cover the gamut of tangibles that should be produced during a custom solution engagement.
This model applies for any of our large IT scoped projects from Cloud Design, .NET Development, ALM solutions and more. For example, the AGILE/SCRUM lifecycle is essential for development operations and ensuring functional requirements, user stories, or use cases are created in an adaptable format. However, AGILE/SCRUM do not cover the documentation requirements or identify when specific components of documentation should be produced nor does it cover how to classify the structure of the code. The SDLC model is a strategic process for planning, creating, testing, and deploying an information system with tangible documentation. We extract the documentation methods we’ve seen using SDLC and incorporate it into our AGILE/SCRUM. However, even these two systems together do not get granular into the structure of the code. This is where UML comes into play. When an application contains hundreds or thousands of lines of code and we need to architect class structures through UML. When we combine all three models we ensure requirements delivery, flexible development, traceability, documenting functionality, and code structure.
Standard Development Lifecycle (SDLC)
SDLC is defined in systems engineering, information systems and software engineering to describe a process for planning, creating, testing, and deploying an information system (Wikipedia). Adherence to an SDLC is essential to ensure success and Operations and Maintenance (O&M). Development efforts can be complex with dozens of scripts and thousands of lines of code. It is essential that Functional Requirements are documented and recorded. In addition, our Solution Design Document (SDD) will demonstrate through requirements traceability how the application has been built and how it satisfies the needs of the client.
Business Process Translation (BPT)
BPT is a method for interpreting a business process. Although not necessarily specific to .NET vs any development, configuration, or tool installation, BPT is a coined term for steps that any developer or solution designer will take. Each meeting, discussion, or reference material provided by our clients is part of the BPT. Our profession is based on streamlining processes to make them work faster, more efficiently, and with more visibility. Therefore, we need to master the workflows you perform to enhance them. Our talking point approach on this is a simulation of hiring a new employee to assist you in your day to day operations. We want to walk in your shoes to understand why you do what you do and what pain points make the day harder. These are the bottlenecks we will work to resolve through the solutions we produce.
Unified Modeling Language (UML)
UML is a methodology to visualize the design of a system. One of the fundamental capabilities in designing IT solutions is the architecture behind the design. UML allows us to accompany visual designs to understand the size and complexity of the .NET engagement through the object and class structure. When TEDI is working with clients in designing the system with heavy investment in time, energy, and resources we ensure as part of our CLM that the architecture of the system – whether infrastructure or code, is identified and understood.
Application Lifecycle Management (ALM)
Application Lifecycle Management is the software lifecycle from governance, development, and maintenance of a particular software application. At TEDI we’ve been exposed to various methods and models in both the private sector and government. The primary method’s we’ve performed include CMMI, Waterfall, AGILE, and AGILE/SCRUM. Our background and capability allows us to be flexible and adaptable to any method. In addition, our extent of tool exposure to enforce these lifecycles range from Team Foundation Server (TFS) to Mercurial, Git, GitHub and more. We pride ourselves on the development knowledge and experience we deliver. For more information on background and capabilities surrounding ALM, please visit our ALM page.