kbss-cvut / fta-fmea Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
FTA and SNS example is extended with FHA based failure rate, see kbss-cvut/fta-fmea-ui#274.
Update backend so that it fetches the FHA based failure rate in the example.
Currently the FHA based failure rate is retrieved from the failure event associated with the component of a specific aircraft type. In the example the FHA based failure rate is stored in the super type.
You can copy configuration in jenkins, don't forget to configure to different repository (i believe that they are created already).
see also /etc/apache2/sites-enabled/000-kbss.felk.cvut.cz.conf
that maps the url.
Afterwards notify @kostobog to update its git repo.
A/C:
avic
deploys to kbss.felk.cvut.cz/fta-fmea-avic
main
deploys to kbss.felk.cvut.cz/fta-fmea
(note main
instead of master
)REST API should return an ordered list of cutsets, with the highest probability first.
This way:
API requirements
input parameters:
returns - a list of FHA Events Summaries with the following fields
input parameters:
returns - a list of FHA and SNS failure Events Summaries with the following fields
Generate Fault Tree Model based on the functional dependencies (FD) network defined trough the field Function.requiredFunctions.
Acceptance criteria:
Requirements:
Created FTA should be associated with:
Possible solutions:
How to represent FHA Category?
Possible solutions:
How to represent relation between FTA tree and FHA Fault Category
FHA Fault category is associated with Root Event.
Representation of FHA Fault category is associated with Root Event:
Reference: this
Add Full Text Search (FTS) API for name Entities Aircraft, FHA event type and SNS component failure type . The solution should easily extensible with additional entity types and text attributes.
List of entities which match the query. Each entity has the following attributes:
The implementation should be based on text index capability GraphDB compatible with GraphDB version 10.2.0. See GraphDB Full-text Search documentation
The http request API should be:
The path above is specified from the root of the rest API.
Parameters are defined in section Input.
System model should be described in three contexts for each aircraft type containing structural and behavioral model of the aircraft type.
This context scheme will require the following references among contexts - this is relevant for the redesign of the JOPA entity descriptor.
Each fault tree may have three types of fault events which contain references to resources from other contexts
Steps:
Functions should have a field of list of functions on which they are dependent.
Create rest for fetching the dependency of a function
Model Class:
When create a fault tree (with existing event):
Backend:
INFO c.c.k.a.c.FaultTreeController - > create - FaultTree <null/>
ff-iauth-demo-fta-fmea-server | 16-05-2024 08:23:08.706 [] [thread] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [/fta-fmea] threw exception [Request processing failed: java.util.NoSuchElementException: No value present] with root cause
ff-iauth-demo-fta-fmea-server | java.util.NoSuchElementException: No value present
ff-iauth-demo-fta-fmea-server | at java.base/java.util.Optional.orElseThrow(Optional.java:377)
I successfully built the provided Dockerfile, resulting in a functional image. However, I'm unable to identify the port at which the project would be exposed. The Dockerfile seems to export 8080
port, but localhost:8080
doesn't work. I have also tried localhost:8000
and localhost:9999
, none of which does work.
When I reverse engineered the Dockerfile and built the project without the use of docker, it seems to work on port 9999
. I would consider adding healthcheck page to confirm that the project is successfully running for new people - all I see now is Whitelabel Error Page. Based on my familiarity with other KBSS projects, this might be the page that users encounter when accessing a URL they shouldn't be at.
Same with the frontend setup - I don't know if this build is optimal for development. Setup guide of any kind better than Dockerfile would be appreciated.
It is not possible to fetch this tree:
Backend Logs:
[thread] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [/fta-fmea] threw exception [Request processing failed: cz.cvut.kbss.jopa.exceptions.CardinalityConstraintViolatedException: Expected single value of attribute lastEditor of instance http://onto.fel.cvut.cz/ontologies/fta-fmea-application/fault-tree/instance1443295929, but got multiple.] with root cause
ff-kauth-demo-fta-fmea-server | cz.cvut.kbss.jopa.exceptions.CardinalityConstraintViolatedException: Expected single value of attribute lastEditor of instance http://onto.fel.cvut.cz/ontologies/fta-fmea-application/fault-tree/instance1443295929, but got multiple.
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.oom.SingularObjectPropertyStrategy.verifyCardinality(SingularObjectPropertyStrategy.java:75)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.oom.SingularObjectPropertyStrategy.addAxiomValue(SingularObjectPropertyStrategy.java:68)
ff-kauth-demo-fta-fmea-server | at java.base/java.lang.Iterable.forEach(Iterable.java:75)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.oom.EntityConstructor.setFieldValue(EntityConstructor.java:319)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.oom.ObjectOntologyMapperImpl.loadFieldValue(ObjectOntologyMapperImpl.java:191)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.sessions.ConnectionWrapper.loadFieldValue(ConnectionWrapper.java:87)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.sessions.AbstractUnitOfWork.loadEntityField(AbstractUnitOfWork.java:792)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.proxy.lazy.gen.LazyLoadingEntityProxy.triggerLazyLoading(LazyLoadingEntityProxy.java:25)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.jopa.proxy.lazy.gen.LazyLoadingEntityProxyGenerator$GetterInterceptor.get(LazyLoadingEntityProxyGenerator.java:77)
ff-kauth-demo-fta-fmea-server | at UserReference_LazyLoadingProxy.getUri(Unknown Source)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.ComplexManagedEntityRepositoryService.setUserName(ComplexManagedEntityRepositoryService.java:66)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.ComplexManagedEntityRepositoryService.postLoad(ComplexManagedEntityRepositoryService.java:60)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.ComplexManagedEntityRepositoryService.postLoad(ComplexManagedEntityRepositoryService.java:22)
ff-kauth-demo-fta-fmea-server | at java.base/java.util.Optional.map(Optional.java:260)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.BaseRepositoryService.find(BaseRepositoryService.java:73)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.BaseRepositoryService.findRequired(BaseRepositoryService.java:88)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.FaultTreeRepositoryService.findRequired(FaultTreeRepositoryService.java:85)
ff-kauth-demo-fta-fmea-server | at jdk.internal.reflect.GeneratedMethodAccessor28.invoke(Unknown Source)
ff-kauth-demo-fta-fmea-server | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
ff-kauth-demo-fta-fmea-server | at java.base/java.lang.reflect.Method.invoke(Method.java:568)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:351)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ff-kauth-demo-fta-fmea-server | at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
ff-kauth-demo-fta-fmea-server | at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:385)
ff-kauth-demo-fta-fmea-server | at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:765)
ff-kauth-demo-fta-fmea-server | at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:717)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.service.FaultTreeRepositoryService$$SpringCGLIB$$0.findRequired(<generated>)
ff-kauth-demo-fta-fmea-server | at cz.cvut.kbss.analysis.controller.FaultTreeController.find(FaultTreeController.java:42)
ff-kauth-demo-fta-fmea-server | at jdk.internal.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
ff-kauth-demo-fta-fmea-server | at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
ff-kauth-demo-fta-fmea-server | at java.base/java.lang.reflect.Method.invoke(Method.java:568)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:261)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:189)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:917)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:829)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
ff-kauth-demo-fta-fmea-server | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:527)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
ff-kauth-demo-fta-fmea-server | at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:365)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.oauth2.server.resource.web.authentication.BearerTokenAuthenticationFilter.doFilterInternal(BearerTokenAuthenticationFilter.java:145)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:374)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74)
ff-kauth-demo-fta-fmea-server | at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:225)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
ff-kauth-demo-fta-fmea-server | at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
ff-kauth-demo-fta-fmea-server | at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340)
ff-kauth-demo-fta-fmea-server | at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391)
ff-kauth-demo-fta-fmea-server | at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
ff-kauth-demo-fta-fmea-server | at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
ff-kauth-demo-fta-fmea-server | at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
ff-kauth-demo-fta-fmea-server | at java.base/java.lang.Thread.run(Thread.java:840)
@kostobog if it makes sense, FTA trees should be saved into separate context in graphdb, so they are:
The build outputs a warning. Cannot find usage in our codebase or in dependencies.
[warning] Found @DeclareAnnotation while current release does not support it (see 'org.aspectj.weaver.bcel.AtAjAttributes')
This issue occurred as a result of upgrading JOPA
to newest version in [#44] Upgrading project build
Same as it was done for Record Manager, we would like to remove dependency on AspectJ here.
Implement the model in the diagram in Figure 1.
Figure 1. Diagram of the extension of the JOPA model
The goal of the task is to agree on how to document REST endpoints. Inspiration can be taken from https://github.com/kbss-cvut/termit.
A/C:
Change FailureMode.hasFailureModeType from string to URI.
FailureMode -> http://onto.fel.cvut.cz/ontologies/fta-fmea-application/FailureMode
FailureModeCause -> http://onto.fel.cvut.cz/ontologies/fta-fmea-application/FailureModeCause
Update kbss-cvut/fta-fmea-ui if necessary.
Extend fault tree summary to support
Add the following properties to fault tree summary:
Check if imported SNS can be used to edit fault trees. This includes:
FaultEventDao.getAllFaultEvents
fetches SNS failures (if not in main see PR #91)The goal of this task is to normalize the model of behaviors.
super class - Behavior
specializations - Function, FailureMode and Mitigation
Behavior class properties (that includes both their fields and methods) from behavior sub-classes to behavior.
Behavior relationships - add the following relationship fields
Replace the following relations with relations in the Behavior class:
- Function
- Set requiredFunctions -> this field should be replaced by Behavior.requiredBehaviors
- remove the field from the Function class
- move and refactor accessor methods to Behavior class using the requiredBehaviors field instead of requiredFunctions
- find other usage of the removed field and rewrite the code to use the field Behavior.requiredBehaviors
- Failure Mode
- Set effects -> this field should be replaced by Behavior.manifestations
- remove the field from the FailureMode class
- move and refactor accessor methods to Behavior calss using the manifestations field instead of effects
- find other usage of the removed field and rewrite the code to use the field Behavior.manifestations
- Component component -> this fied should be replaced by Behavior.component
- find usage of the refactored field and rewrite the code to use the field Behavior.component instead
- Set functions
- remove field from Function class
- move and refactor accessor methods to Behavior class and use the field impairedBehaviors instead
- find usage of the removed field and rewrite the code to use the field Behavior.impairedBehaviors
- Mitigation mitigation
- remove field from class
- move and refactor accessor methods to Behavior class using the impairedBehaviors field instead
- revise code using this relationship and change to use move to Behavior.impairs (s_p_impaired_by).
Collection fields should have "add" and "remove" methods.
The diagram below shows the schema of the new diagram
The diagram below shows an example specification of dependencies of functions and their impairment of failure modes according to the new model.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.