|
|
Glossary
|
|
The definitions given on this page are to provide more information about technical
terms used throughout this website or to clarify terms used in the context intended.
|
|
Microsoft, Access, Silverlight, Visual Basic, Visual C#, .NET, SQL Server, Windows
Mobile and Windows are either registered trademarks or trademarks of Microsoft Corporation
in the United States and/or other countries.
|
|
- .NET framework
-
.NET (pronounced dot net) is a Microsoft software framework that is included as
part Windows operating systems. Because .NET contains a large library of common
programming tools and features (basically code that solves common problems and is
ready to use) we are able to produce complex applications in a very efficient, clear,
and bug-free way. The .NET framework also includes, and uses, the CLR (Common Language
Runtime), which is the compiler software shared by all of the latest Microsoft languages.
Working with .NET, programs can be developed in a variety of different languages
that execute in exactly the same way, this gives us great flexibility in how we
implement systems.
- Agile software development
-
This is a common lable given to a range of programming techniques and methodologies
to group them under one heading. The main principle of agile software development
is to design and develop systems by tackling the overall problem in small steps
and building up the whole from its component parts. The basic principal sounds like
common sense (and it is), but the range of techniques employed (like for example
'test driven development') are at the cutting edge of software design.
- AJAX (Asynchronous JavaScript and XML)
-
When something changes on a web page, for example the user clicks a Submit button,
typically the computer sends a request to the server and the whole web page is reloaded
with updated information. AJAX is a technique that allows us to update parts of
a page with server data without reloading the page. This can result in more dynamic
web pages and a better, more fluid browsing experience for the user.
- ASP (Active Server Pages)
-
ASP is the Microsoft approach to web development. As the name suggests, this is
a server-side technology giving us the option of processing user requests directly
on the server rather than the clients machine. This is essential for protecting
sensitive data and enabling us to build more responsive web applications. Another
big advantage of developing in ASP is that it enables us to make use of the .NET
framework.
- Bespoke software systems
-
Unusual requirements sometimes require unusual solutions and we pride ourselves
on our innovative solutions to everyday problems, but here at Open Projects we're
not trying to push back the frontiers of science. We offer unique products that
do exactly what you want, at the right price.
- Development strategy
-
There are many ways to approach a problem and your business needs always dictate
the route we recommend. Do you require step by step improvement of existing systems
or a radical overhaul of your working practices? Will your software be all encompassing
or would it be advisable to include foundations for future expansion? How will you
switch over to the new system when it is complete? We consider all aspects of development
to ensure that you only get exactly what you want.
- Distributed computing
-
There are several varieties of distributed computing. In this context we use the
term to refer to a type of client-server architecture where the user interface is
kept seperate from the business logic and data tiers, this often involves the use
of web services and online database facilities.
- Easily extensible
-
By this we mean 'easy to extend or modify at a future date'. We take great care
from the very earliest stages of the design process to ensure that all of our software
is modular and that the constituent components of the system (e.g. classes, methods
etc.) are loosely coupled (the opposite of this: tight coupling, is where components
share functionality or depend highly upon other components within the software)
with high cohesion (i.e. the code contained within these system components is focussed
on performing a single, well defined task). Technical jargon aside, this means good
code layout techniques that result in a system where individual parts of the overall
system can be changed without affecting the rest.
- Flexible software solutions
-
Our experience in different areas like networking, web development and mobile computing
allow us to offer a more complete system that complements the way you already work.
- Legacy code
-
Legacy code is a term used to describe existing software that is outdated or obsolete,
but which is still needed in the system for reasons of cost or backwards compatibility.
- Mobile development
-
By mobile devices, we mean any handheld (or 'smart') device (e.g. Barcode readers,
PDA/EDAs) Pocket PC, Smartphone or any other Windows Mobile based platform (not
to be confused with laptops or other portable devices that use a standard Windows
operating system, though we also produce software for those platforms). This is
an area that Open Projects have specialist experience in, please follow the link
for more information
about mobile development.
- MVC (Model-View-Controller)
-
An architecture for developing well structured ASP.NET web applications. We recommended
this technique for all new development of website applications, please follow this
link for a more in-depth
explanation of MVC.
- Responsive
-
Responsiveness in terms of time taken to process user requests, for example displaying
a web page or querying a database. A less responsive system could be characterised
as lots of lag and lots of user frustration.
- Silverlight™
-
A rapidly evolving new Microsoft platform for creating 'graphically rich' web content.
Silverlight is in a superficial way very similar and a direct competitor to Adobe's
Flash. Based on the same technology as WPF (described below), Silverlight is a platform
independent way to incorporate advanced graphical effects into web pages.
- Time and materials
-
A more flexible approach to project costing. Rather than working to an estimate
of how long a project will take to complete we can offer our services for just as
long as it takes, leaving you free to adapt or expand on your specifications at
any time during production.
- WPF (Windows Presentation Foundation)
-
A relatively new Microsoft technology for creating 'graphically rich' user interfaces.
In practice this means that we are able to create applications with advanced graphical
effects such as lighting effects, 3D, video and graphical animations with comparitive
ease. WPF uses the .NET framework and so is compatible with a range of other programming
technologies and languages.
|
|
|