Nebula Framework Page development steps and Checklist
This document gives a guidance on what to check for in each step of Nebula Framework (NF) development. The checklist is not a complete list, but addresses the basic requirements of any page.
Every item in the checklist must be checked & verified for completion of a page.
NF Method - Target Method source (TMS)
This is the first step and core to any page development. The purpose of this step is to thoroughly analyze the business requirements, and develop a logic/algorithm (a “Method”) to provide a response for a given input.
The NF method is a black box of what we want to accomplish.
SP/query/DLL methods Checklist
- All pages will have a minimum of “Read” method. Is the “Read” method developed, tested, working for all use cases, for various input/request parameters?
- Does the page have Create (C), Update (U), Delete (D), Execute (E) method? For each applicable method,
- Is method developed ?
- Tested, working for use cases?
- if SP is documented properly?
- Purpose
- Examples
- Comments in important lines of code?
- If SP or query, are they tested (in SSMS) for various parameter values, and produces expected results ?
- If the method is a DLL method
- DLL methods are generally written in C#. Is the method documented for
- Purpose
- How the C# method will be called, with examples
- Comments in important lines of code?
- DLL methods are generally written in C#. Is the method documented for
- Does the NF method have hardcoded parameters ? like @effective_date=getdate(), @invoice_run_sequence = null. It should not be hardcoded with static values. If needed, explain the why it is needed within the NF method in comments.
- Does the NF method (SP, queries) have sample queries in comments, that we can take and execute in SSMS
NF Method Tables and Fields Checklist
- If the input/request parameters exist for a method, is request table setup?
- Are the keys to NF tables (both request and response tables) setup properly? If the NF method of table type, the NF key field(s) should match with database table key column(s)
- The output fields from method should match the NF field for
- Data type
- Length of the field, if the field datatype is char, nchar, varchar or nvarchar
- Data precision if the field datatype is numeric/decimal
- For each field, NF “Target” default values must match SP, database table, DLL default values – Three fields must be setup in NF
- Is Target Nullable?
- Is Target Default Value Null?
- Target Default Value
- Entity Default Values should be setup. Entity Default values overrides the Target default values – These three fields must be setup in NF
- Is Entity Nullable?
- Is Entity Default Value Null?
- Entity Default Value
- If a field requires lookup, are the lookups set properly ? If there are dependent lookups, dependent fields setup correctly?
- Does each NF field have description with sufficient details for user to understand the purpose, how to use ?
NF Validation Errors Check
Check the NF validation errors for the NF setup. Errors must be zero.
Web Page Check List
Most pages can be setup as "Virtual Page" without .html file. First try and see if this possible.
.html page
- If going for non-Virtual page, the .html file should have minimal data setup, and almost zero code. Explain every sub-set of code (function, line) as to why that code is needed.
Web Page User Experience Checklist
- Test the page thoroughly if it meets the application/business requirement.
- The page should be simple to use.
- The performance should be good.
- On the tab heading of the page, right click, open the "Show the Current Tab's Debug Info". Check for the time taken for each step. Identify the slow steps, and make changes to the NF method, change SP/query to increase performance. Check the request/ response JSON of each step. You should be able understand the purpose of each step, and able to analyze the JSON data.
Setup the Page for Automated Test
Setup Automated Test – The automated tests help to make sure the page is not broken due to SP/query changes or NF changes.
Take help from Mr. Hariharan, and inform him after you completed the automated test setup.