Full-stack development of Enterprise-grade Applications
Gustavo Reis
Starting at
$
60
/hrAbout this service
Summary
What's included
Planning and Analysis of Requirements
The goal of this first phase is to have a clear picture of the application use case: What does it accomplish? What features does it require to do so? This phase involves breaking the domain of the application into several features, each one with one or multiple solvable tasks, ranging from the database all the way to the front-end. This is also a good time to create some wireframes of how the application will be structured. While these details are nailed, the system design and technologies are decided so we can start planning for the actual implementation, our next phase. What you can expect as a deliverable: A clear breakdown of the tasks needed to fulfil your idea, in the form of a full description of the Software Development Life Cycle in a Technical Specification Document: Wireframes, System Architecture Tech Stack API Specifications Data Models Security Scalability and Performance Deployment and Devops Monitoring and Logging Backup and Recovery Maintenance and Support
Software Implementation
Development occurs in iterations that produce deliverable demos and a repository codebase, piece by piece, until the Project's completion. This is the phase where the hard work takes place and actual code gets programmed. Deliverables are handed over through an online repository at your choosing where the code will reside (such as Github, Bitbucket, Gitlabs or Azure Repos). Projects are tracked with productivity management tools such as Azure Devops or Atlassian's Jira. Work is organized as planned in phase 1, where tasks are assigned a complexity, priority and estimated delivery date (always as a worst case scenario), and handled in bouts of 15 days of effort called sprints. Before each sprint, a small sprint planning is done to adjust for unpredictable events or bugs or to restructure tasks as to be yet more efficient; after each sprint, a sprint demo takes place, where the actual deployed code is visible for everyone to see, try out and provide feedback. Local development code, if required, can be reviewed by your development team before it is delivered and merged with the repository code. During the merge process, all tests are ran to assure the new code does not conflict with earlier functionalities. Deployment and hosting are also taken care of as part of this phase. What you can expect as a deliverable: Running, testable software Deployed demo of your Project
Maintenance and Support
With time, tools and technologies used in the project can become outdated or obsolete, which will (almost inevitably) incur in bugs in the application. To solve this, software has to be upgraded and tools have to be replaced. Other factors such as user's feedback requesting specific features to be changed, removed or added can also create a need for the software to be maintained or supported. This is the best time to renew your application and to correct initial assumptions, be they business or structural in nature, and to extend the solution with new features and fresh top-of-the-line tools. What you can expect as a deliverable: Bugs fixed Upgraded Software New Software Implementation Tasks completed - New Features Plan reviews
Skills and tools
Industries
Work with me