# SWOT Analysis of Vendor - Alok
## Globant
| Strength | Weakness | Opportunity | Threat |
| -------- | -------- | -------- | -------- |
| Good Coders | // | More refactoring in View & ViewModels | Are we gping to get the guys who wrote the code? |
| SwiftUI | CocoaPods | CocoaPods | // |
| Very Well <br />Structured Code | // | <br/><li/>First party netwroking code <br/><li/> File Structure | // |
| Solved Cahcing <br />Image issue for us :P | // | // | // |
| CoreData | // | Scope of Var/Func | // |
| Good OO Practices <br/><li/> Operator Overlaod | | // | // |
| Good basic coverage | // | <br/><li/> No nill test <br/><li/>More test coverage | // |
Requirements(5) + UX (5) + Tests (4)
| Category | Score out of 5 |
| ------------------------------------------------------- | -------- |
| Adherence to business requirements & UX Design (MVP3) | 5 |
| Adherence to DSG, platform standards & best practices | 4.5 |
| Overall quality of technical design, architecture | 5 |
| Adequate and thorough unit test coverage| 4 |
### TCS
| Strength | Weakness | Opportunity | Threat |
| -------- | -------- | -------- | -------- |
| SwiftUI | Not good use of MVVM | UIKit | Copy paste code, <br /> without attibution -> <br/><li/>CGPoint+Extensions, <br/><li/>CGRect+Extensions, <br/><li/>Placeholder, <br/><li/>ShimmerCoreView, <br/><li/>ShimmerCoreView, <br/><li/>ShimmerElement, <br/><li/>ShimmerScope, <br/><li/>ShimmerSyncTarget, <br/><li/>ShimmerView, <br/><li/>ShimmerViewStyle, <br/><li/>SwiftUIViewController, <br/><li/>UIColor+Extensions, <br/><li/>UIResponder+Extensions, <br/><li/> Basically copied an open source library and and dropped in project |
| Conformance to design | MVVM issue: No specialized View-ViewModel pair. <br /> One large ViewModel is passed into all the Views | Over complicated views Specially Shimmer view | Dead Code ShimmerReplicatorView, ShimmerReplicatorViewCell, |
| No dep on third party lib | Loosely followed the design | Unit test should not depend on API Calls | No attention to details, font sizes, boldness not matching. <br /> Images are not matching size nor aspect ratio. No proper shadows on elements |
| | | Single Unit test should not have multiple asserts | |
| | | Only 3 line of Combine code | |
Requirements(3.5) + UX (3.5) + Tests (1.5)
| Category | Score out of 5 |
| ------------------------------------------------------- | -------- |
| Adherence to business requirements & UX Design (MVP3) | 3.5 |
| Adherence to DSG, platform standards & best practices | 3.5 |
| Overall quality of technical design, architecture | 3 |
| Adequate and thorough unit test coverage| 1.5 |
## Def Method
| Strength | Weakness | Opportunity | Threat |
| -------- | -------- | -------- | -------- |
| Good code structure | Obvious UI bugs | UI Issues <br/><li/> Back button nav <br/><li/> Map interaction | // |
| SwiftUI | // | Almost two weeks spread: I expecorted more from Steven | UI blocking code <br/><li/>CLLocationManager.locationServicesEnabled() |
| ETC philophy | // | Smaller models | // |
| MVVM | // | <br/><li/> MVVM <br/><li/> No nill test <br/><li/>More test coverage | // |
Requirements(3) + UX (3.2) + Tests (3)
| Category | Score out of 5 |
| ------------------------------------------------------- | -------- |
| Adherence to business requirements & UX Design (MVP3) | 3.2 |
| Adherence to DSG, platform standards & best practices | 3 |
| Overall quality of technical design, architecture | 3 |
| Adequate and thorough unit test coverage| 3 |
## Collabera
| Strength | Weakness | Opportunity | Threat |
| -------- | -------- | -------- | -------- |
| SwiftUI | Explicit unwrap | | Not being careful about nullability make code crash prone |
| // | Autogenerated code | Storing large data in UserDefault | <br /> Code Structure -> UIApplication Extension in SearchTab View. |
| // | // | Retrofitting combine in URLSession | No modularity in <br/><li/> View Code <br/><li/> Data storage |
| // | // | // | Overengineering of API |
Requirements(0) + UX (0) + Tests (0)
| Category | Score out of 5 |
| ------------------------------------------------------- | -------- |
| Adherence to business requirements & UX Design (MVP3) | 0 |
| Adherence to DSG, platform standards & best practices | 0 |
| Overall quality of technical design, architecture | 0 |
| Adequate and thorough unit test coverage| 0 |