Successfully engineering applications is far from being a trivial matter therefore
our engineering process encapulates our coined SSUPRREME aims of working.
-
Scalability - Is the
ability of a system, network, or process, to handle growing
amount of work in a capable manner or its ability to be enlarged to accommodate
that growth.
-
Security
- Application security encompasses measures taken throughout the
application's life-cycle to prevent exceptions in the security policy of an
application or the underlying system (vulnerabilities) through flaws in the
design, development, deployment, upgrade, or maintenance of the application.
-
Usability (User eXperience)
- Is the way a person feels about using
a product, system or service. User experience highlights the experiential,
affective, meaningful and valuable aspects of human-computer interaction and
product ownership, but it also includes a person's perceptions of the practical
aspects such as utility, ease of use and efficiency of the system. User
experience is subjective in nature, because it is about an individual’s feelings
and thoughts about the system. User experience is dynamic, because it changes
over time as the circumstances change.
-
Performance
- Encompasses the set of roles, skills, activities, practices,
tools, and deliverables applied at every phase of the Systems Development
Life Cycle which ensures that a solution will be designed, implemented, and
operationally supported to meet the non-functional performance requirements
defined for the solution.
-
Reliability
- Software quality refers to two related but distinct notions that
exist wherever quality is defined in a business context:
-
Software functional quality reflects how well it complies with or
conforms to a given design, based on functional requirements or
specifications. That attribute can also be described as the fitness
for purpose of a piece of software or how it compares to competitors
in the marketplace as a worthwhile product;
-
Software structural quality refers to how it meets non-functional
requirements that support the delivery of the functional requirements,
such as robustness or maintainability, the degree to which the software
was produced correctly.
-
Reusability
- Is the likelihood a segment of source code that can be used again
to add new functionalities with slight or no modification. Reusable modules
and classes reduce implementation time, increase the likelihood that prior
testing and use has eliminated bugs and localizes code modifications when a
change in implementation is required.
-
Extendability
- Where the implementation takes into consideration future growth.
It is a systemic measure of the ability to extend a system and the level of
effort required to implement the extension. Extensions can be through the
addition of new functionality or through modification of existing functionality.
The central theme is to provide for change - typically enhancements - while
minimizing impact to existing system functions.
-
Maintainability
- The ease with which a product can be maintained in order to:
- isolate defects or their cause
- correct defects or their cause
- meet new requirements
- make future maintenance easier, or
- cope with a changed environment.
-
Efficiency
- Characterized by the amount of useful work accomplished by a computer
system compared to the time and resources used.
- Short response time for a given piece of work
- High throughput (rate of processing work)
- Low utilization of computing resource(s)
- High availability of the computing system or application
- Fast (or highly compact) data compression and decompression and
- High bandwidth / short data transmission time.