This document mainly aims to help the implementation team in configuring and customizing the eDCR engine as per the state/city rules and regulations. Samples are given for each of the activities that are to be done. This can be considered as a handbook on how to approach the DCR automated scrutiny for a newcomer.
Below mentioned are the various activities to be done as part of eDCR customization and configurations for the state/city. Also, it mentioned the training needs for the end-users.
Layer Matrix contains the colour and layer names to be applied while drawing a plan that needs to be scrutinized in the eDCR system. A sample is provided here. If there are new layers to be added or a new occupancy type to be considered, additions will have to be made to layers and colours. This needs to be done by a person having architecture and Auto Cad knowledge. The document needs to be updated with the new layers and colours and the same need to be shared with the architects.
Drawing manual maps list of layers used in marking for a feature. Here is a sample drawing manual for a client. Similarly, this customer-specific manual needs to be created.
Drawing details provide additional details required for marking or drawing a part or full feature.
Drawing details can be understood and prepared using the column “Parameters /Additional details to be addressed in drawings “ column from this sheet.
Rules need to be read and understood from the state rule book and this information has to be translated into a data template. This will enable the customization team to validate and codify the rules efficiently. Here is a reference to a sample data collection template. This may need to be enhanced for any state-specific rules if it cannot fit into the sample one.
Based on the rules documented in the data template, the implementation team needs to make the required configuration changes in the existing features. In cases where the default implementation is different from the state rules, customization needs to be done by the implementation team. If there are any rules in a state which are not covered in any of the features in eDCR, this needs to be coded afresh.
Example 1: where there is a change in the existing rule and the rule number-
Change in the FAR (Floor Area Ratio) in a particular state, where the expected value is 1.4 instead of 1.2 which is the default. Changes will need to be done in the FAR.java file for this.
Example 2: Where there is a new rule, say -distance from the monument -
If this rule is not currently available in eDCR, you will need to add a new file with the rule name, where the implementation of the rule will be written.
Videos are helping tools for architects to make a plan drawing as per the standards defined by the eDCR system. Implementation partners will be training the end-user which is an architect using these help videos. These are the Sample videos that are done for Kozhikode, Kerala state.
Currently, ULBs follow a complete manual mass mode of providing various building-related approvals and related NOCs. This delays the approval process and creates a lot of inconvenience for applicants and architects. There is also a lack of transparency and accountability in this manual approach. Due to the complexity of scrutiny and approval processes and the involvement of various stakeholders, there are several challenges in the system. Some of the issues are-Complex rules and bye-laws and their interpretation, the time-consuming process of issuance of Planning Permission, increased chances of human errors due to manual submission and scrutiny, inadequate citizen interface and no single point of contact, etc.
The manual scrutiny of the building bye-laws is replaced with “Digit-DCR”.Digit-DCR is capable of reading the drawing, extracting parameter values, applying them to bylaws and generating the acceptance or rejection information in seconds. This process provides a leap of 15 days of cumbersome manual work to a few seconds. The Digit-DCR is even capable of marking mistakes and failing details. It converts details of drawing like Site plans, Floor plans, Elevation, etc to pdf and saves them in the system.
Knowledge on following
Java
Basics of 2D Drawing like ( Top view, Front view, Side view, etc)
Basic Math
Sequence Diagram
The general Practice of the Architects is to draw diagrams in the default layer with the name “0” with portions stating Section Plan, Floor Plan, etc. With this approach, it is not possible to extract parts of the building for Bye-Laws validation. Hence Parts of the buildings should be drawn in specific layers. These layers also should have a standard format for machine reading.
For example, Plan will have a “Bathroom” and "Washbasin” which should be validated for dimensions and counts for Sanitation. Hence these sanitation-related parts should be drawn in a layer called “BLK_1_WATER_CLOSET” layer, where “BLK_1” states it is block 1 and “WATER_CLOSET” states it is a toilet. Another example is Toilets for the disabled should be validated floor wise Hence it should be defined as Floorwise layer names like “BLK_1_FLR_0_SP_WC” layer.
We cannot define a complete set of layer names with these combinations because it is based on the following parameters
Number of Blocks
Number of Floors in each Block
Number of Polygons on each floor
Number of levels
So when data is required at Plan Level, Block Level, Floor Level, or Height it is named and prefixed accordingly
At the Plan level, the layer names are used without any prefixes. The list of such layer names are
Some parts of the building and its validation is based on Usage(Occupancy) types. For example, every floor in which all types of usage present have to be defined. Based on usage type parking has to be calculated. So only layer name is not sufficient to differentiate but colour also to include. Hence Floorwise built-up area will be defined in “BLK_1_FLR_0_BLT_UP_AREA” with index colour 2 for Residential type of usage. All colours are defined based on Occupancy type. The below list provides the colour codes for each occupancy-
The following components are used in the drawing. EDCR deals with only a defined set of drawing components.
1
PLOT_BOUNDARY
2
VERT_CLEAR_OHEL
3
HORIZ_CLEAR_OHEL
4
WASTE_DISPOSAL
5
PLAN_INFO
Block Level Layer Names
1
BLK_*_COVERED_AREA
2
BLK_*_COVERED_AREA_DEDUCT
3
BLK_*_BATH
4
BLK_*_WC
Floor Level Layer Names
1
BLK_*_FLR_*_BLT_UP_AREA
2
BLK_*_FLR_*_BLT_UP_AREA_DEDUCT
1
Residential
1
2
Commercial
8
3
Apartment/Group Housing
2
4
Hostel/ Residential building Lodging purpose/Guesthouse
19
Drawing Components
Serial No
Type
Supported
Required
1
Line
YES
YES
2
Dimension
YES
YES
3
PolyLine
YES
YES
4
Circle
YES
YES
5
Arc
NO
NO
This document aims to put together all the items which will enable us to come up with a proper training plan for a partner team that will be working on the eDCR service used for the plan scrutiny.
Below listed are the technical skillsets that are required to work on eDCR service. It is expected that the team planning on attending training is well versed with the mentioned technologies before they attend eGov training sessions.
Java and REST APIS
Postgres
Maven
Spring framework
Basics of 2D CAD Drawings
Git
Postman
YAML/JSON
Strong working knowledge of Linux, command, VM Instances, networking, storage
The session, cache, and tokens handling (Redis-server)
Understanding of VM types, Linux OS types, LoadBalancer, VPC, Subnets, Security Groups, Firewall, Routing, DNS
Experience setting up CI like Jenkins and creating pipelines
Artifactory - Nexus, verdaccio, DockerHub, etc
Experience in setting up SSL certificates and renewal
Gitops, Git branching, PR review process. Rules, Hooks, etc.
JBoss Wildfly, Apache, Nginx, Redis and Postgres
Trainees are expected to have laptops/ desktops configured as mentioned below with all the software required to run the eDCR service application
Laptop for hands-on training with 16GB RAM and OS preferably Ubuntu
All developers need to have Git ids
Install VSCode/IntelliJ/Eclipse
Install Git
Install JDK 8 update 112 or higher
Install maven v3.2.x
Install PostgreSQL v9.6
Postman
Install LibreCAD
Application Server JBoss Wildfly v11.x
There are knowledge assets available on the Net for general items and eGov assets for DIGIT services. Here you can find references to each of the topics of importance. It is mandated the trainees do a self-study of all the software mentioned in the prerequisites using the reference materials shared.
Git
Do you have a Git account?Do you know how to clone a repository, pull updates, push updates?Do you know how to give a pull request and merge the pull request?
Postgres
How to create database and set up privileges?How to add index on table?How to use aggregation functions in psql?
Postman
Call a REST API from Postman with proper payload and show the responseSetup any service locally(MDMS or user service has least dependencies) and check the API’s using postman
REST APIs
What are the principles to be followed when making a REST API?When to use POST and GET?How to define the request and response parameters?
JSON
How to write filters to extract specific data using jsonPaths?
YAML
How to read an API contract using swagger?
Maven
What is POM?What is the purpose of maven clean install and how to do it?What is the difference between version and SNAPSHOT?
eDCR Approach Guide
How to configuring and customizing the eDCR engine as per the state/city rules and regulations.
eDCR Service setup
Overall Flow of eDCr service, design and setup process