Detailed Requirements Elaboration #
Please see detailed requirements (product backlog items) for the MVP in Product Backlog.
Note
- Product Backlog items in Sprint Queue or Ready To Implement stages have detailed Acceptance Criteria, since they have been prepared by team lead and QA engineer
- Product Backlog items in Backlog Queue are formulated, but do not have detailed Acceptance Criteria and Quality Attributes yet, since they have lower priority than others
Prioritized backlog #
Development methodology adopted by our team requires three distinct backlogs:
- Requirements Engineering Backlog
- Transforms insights and ideas of team members into actionable increments (enriched user stories or intermediate action stories) using project strategy ( Hypotheses Map), enriched user flow ( Process-Experience Map), implementation forms specification ( Story Implementation Map), and target Technical Architecture
- Product Backlog
- Used for increments (small valuable additions to the product) flow, ensures full increment specification, automation of these specifications, and multi-stage deployment with intermediate validations reaching the end user
- Technical Backlog
- Used for technical tasks flow, ensuring testing and review of every task before committing it to any stable branch
Project specific progress #
Product Management #
- New increments added, existing ones advanced and validated, see Product Backlog for details
- Target Technical Architecture advanced significantly compared to previous week, security concerns handling included
- Specified and coordinated DevOps advancements, see Technical Backlog for details
- Validated and approved increments transition to production version
- Integrated security requirements into target Technical Architecture
Backend #
Realtime static analysis and deep static analysis on save using built-in LSP server and various static analysis tools with rendering native to JupyterLab are implemented
- See implemented backend tasks (they have âBackendâ tag) in Technical Backlog
ML Engineering #
Separation of localized deep feedback as code warnings and non-localized feedback as markdown text is implemented
- See implemented ML tasks (they have âMLâ tag) in Technical Backlog
DevOps Engineering #
A three-stage deployment system has been implemented and wrapped conveniently:
dev
deployment for developers and intermediate testingbeta
deployment for validating the value and match with acceptance criteriauat
deployment as a stable deployment for stakeholders Additionally, JupyterLab session credentials have been secured
- See implemented DevOps tasks (they have âDevOpsâ tag) in Technical Backlog
Security Engineering #
- Conjur Open Source integration research
- Keycloak integration research
- Target Technical Architecture updated with researched security tools
Weekly commitments #
Individual contribution of each participant #
Dmitriy Prokopyev #
- Added new increments, existing ones advanced and validated, see Product Backlog for details
- Advanced target Technical Architecture significantly compared to previous week, security concerns handling included
- Specified and coordinated DevOps advancements, see Technical Backlog for details
- Validated and approved increments transition to production version
- Integrated security requirements into target Technical Architecture
- Conducted Sprint Planning and other meetings required to orchestrate project development
Egor Torshin #
- Prepared and completed various backend tasks, see Technical Backlog, user âEgor Torshinâ
- Participated in system design, see Technical Architecture
- Developed a static analysis microservice (syntactic/deep)
- Supervised LSP deployment
Aziz Vundirov #
- Completed various backend tasks, see Technical Backlog, user âAziz Vundirovâ
- Reconfigured, implemented, and deployed the LSP-service (+ deep analysis integration)
- Configured and deployed real-time validation in JupyterLab
- Rewrote the functionality of main LSP-server for supporting the real-time code-checking
- Connected the JupyterHub, LSP-server and Deep Static Analysis microservice
Nikita Tiurkov #
- Prepared and completed various ML tasks, see Technical Backlog, user âNikita Tiurkovâ
- Implemented warnings generation functionality, see commit
- Implemented logging for semantic feedback microservice, see commit
Oleg Shchendrigin #
- Prepared and completed various ML tasks, see Technical Backlog, user âOleg Shchendriginâ
- Prepared test cases for generated warnings, approved implementation, see testing results document
Marsel Fayzullin #
- Completed various DevOps tasks, see Technical Backlog, user âMarsel Fayzullinâ
- Added support for multiple working deployments at a time, see corresponding commit
- Moved credentials out of jupyterhub config, see [corresponding commit](Moved credentials out of jupyterhub config)
Dmitriy Yashin #
- Conjur Open Source integration research
- Keycloak integration research
- Target Technical Architecture updated with researched security tools
Plan for Next Week #
- Account for all the new insights by updating the Hypothesis Map
- Account for strategy adjustments by updating the Process-Experience Map
- Finalize Story Implementation Map
- Finalize target System Design
- FInalize Functional Requiremets and Non-Functional Requirements documents
- Migrate deep LLM-generated feedback and statis analysis feedback to corresponding buttons near each cell of the .ipynb notebook
- Implement LLM-powered context aware chat for user clarifications on feedback
- Integrate multiple sessions support for every other implemented feature
- Integrate customized environments support (pre-installed packages, included datasets and template files for cases)
Confirmation of the codeâs operability #
We confirm that the code in the main branch:
- In working condition.
- Run via docker-compose (or another alternative described in the
README.md
).