Based on the user requirements and the detailed analysis of a new system, the new solution will be designed. This is the phase of system designing. It is the most crucial phase in the development of a system. The logical system design arrived as a result of system analysis and is converted into physical system design. In the design phase the SDI process continues to move from the what questions of the analysis phase to the how. The logical design production during the analysis is turned into a physical design. Description of what is needed to solve original problem. Input output databases, forms, codification schemes and processing specifications are drawn up in detail. In the design stage, the programming language and the hardware and software platform in which the new system will run are also decided. Data structure, control process, equipment source, workload and limitation of the system, interface, documentation, training, procedures of using the system, taking backups and staffing requirement are decided at this stage. There are several tools and techniques used for describing the system design of the system.
The Unified Modeling Language (UML) is a general-purpose, developmental, modeling language in the field of software engineering, that is intended to provide a standard way to visualize the design of a system. UML was originally motivated by the desire to standardize the disparate notational systems and approaches to software design developed by Grady Booch, Ivar Jacobson and James Rumbaugh at Rational Software in 1994–1995, with further development led by them through 1996. In 1997 UML was adopted as a standard by the Object Management Group (OMG), and has been managed by this organization ever since. In 2005 UML was also published by the International Organization for Standardization (ISO) as an approved ISO standard. Since then it has been periodically revised to cover the latest revision of UML.
At Felagi we use UML diagrams where they are needed. Even though we could, we rarely describe every process with UML. We stick to describing the most complex functionallities. Where it helps our customers to better understand what they can expect, we use it and we also find some of the UML diagram types useful for documentation purposes.
A website wireframe, also known as a page schematic or screen blueprint, is a visual guide that represents the skeletal framework of a website. Wireframes are created for the purpose of arranging elements to best accomplish a particular purpose. The purpose is usually being informed by a business objective and a creative idea. The wireframe depicts the page layout or arrangement of the website’s content, including interface elements and navigational systems, and how they work together. The wireframe usually lacks typographic style, color, or graphics, since the main focus lies in functionality, behavior, and priority of content. In other words, it focuses on what a screen does, not what it looks like. Wireframes can be pencil drawings or sketches on a whiteboard, or they can be produced by means of a broad array of free or commercial software applications. Wireframes are generally created by business analysts, user experience designers, developers, visual designers, and by those with expertise in interaction design, information architecture and user research.
At Felagi we use wireframing as our most important tool in interacting with the customer regarding functionallity and data storage. Wireframing is one of our primary tools in the planning and design phase.
Graphic design is the process of visual communication and problem-solving using one or more of typography, photography and illustration. The field is considered a subset of visual communication and communication design, but sometimes the term "graphic design" is used synonymously. Graphic designers create and combine symbols, images and text to form visual representations of ideas and messages. They use typography, visual arts and page layout techniques to create visual compositions. Common uses of graphic design include corporate design (logos and branding), editorial design (magazines, newspapers and books), wayfinding or environmental design, advertising, web design, communication design, product packaging and signage.
At Felagi we use our own graphic designers to produce mock-ups of all the wireframes approved by the customer. These models are important in our next step in the software development cycle, the making of HTML templates. If you have your own graphic designer that you use, hen is welcomed onboard!
User interface design (UI) or user interface engineering is the design of user interfaces for machines and software, such as computers, home appliances, mobile devices, and other electronic devices, with the focus on maximizing usability and the user experience. The goal of user interface design is to make the user's interaction as simple and efficient as possible, in terms of accomplishing user goals (user-centered design). Good user interface design facilitates finishing the task at hand without drawing unnecessary attention to itself. Graphic design and typography are utilized to support its usability, influencing how the user performs certain interactions and improving the aesthetic appeal of the design; design aesthetics may enhance or detract from the ability of users to use the functions of the interface. The design process must balance technical functionality and visual elements (e.g., mental model) to create a system that is not only operational but also usable and adaptable to changing user needs. Interface design is involved in a wide range of projects from computer systems, to cars, to commercial planes; all of these projects involve much of the same basic human interactions yet also require some unique skills and knowledge. As a result, designers tend to specialize in certain types of projects and have skills centered on their expertise, whether that be software design, user research, web design, or industrial design.
At Felagi we acknowlege the fact that UI, UX and Graphic Design are closely linked.
UX designers' main goal is to solve the end-users' problems, and thus the ability to communicate the design to stakeholders and developers is critical to the ultimate success of the design. Regarding UX specification documents, these requirements depend on the client or the organization involved in designing a product. The four major deliverables are: a title page, an introduction to the feature, wireframes and a version history. Depending on the type of project, the specification documents can also include flow models, cultural models, personas, user stories, scenarios and any prior user research. Documenting design decisions, in the form of annotated wireframes, gives the developer the necessary information they may need to successfully code the project. Depending on the company, a user experience designer may need to be a jack of all trades. It is not uncommon to see a user experience designer jump in at the beginning of the project lifecycle, where the problem set and project definition is vague, or after the project requirements document has been finalized and wireframes and functional annotations need to be created.
At Felagi we use Wireframing tools together with HTML dummies to illistrate and search for the best user experience. Web applications are tools to be used by our customer for production purposes and not in marketing. For that we use public websites. Focus should therefor be more on functionallity than looks. Said that, it is till possible for these two to go hand in hand.
When ending the design phase of the project we will summarise our design plans in a SAD. Depending on the sise of the project, it could actually contain of several documents. This act as our assuranse that we have understood the mission the customer has given us and that we know how to do things before we satrt the next phase, development (programming).
The SAD has several parts:
Architectural External Design Specification
Architectural Internal Design Specification
Architectural Development Environment Requirements
Database design is the process of producing a detailed data model of database. This data model contains all the needed logical and physical design choices and physical storage parameters needed to generate a design in a data definition language, which can then be used to create a database. A fully attributed data model contains detailed attributes for each entity. The term database design can be used to describe many different parts of the design of an overall database system. Principally, and most correctly, it can be thought of as the logical design of the base data structures used to store the data. In the relational model these are the tables and views. In an object database the entities and relationships map directly to object classes and named relationships. However, the term database design could also be used to apply to the overall process of designing, not just the base data structures, but also the forms and queries used as part of the overall database application within the database management system (DBMS).
At Felagi we use E/R diagrams for all parts of the database design. We follow normalisation rules strictly and stribe for a Boyce-Codd normalisation in everything we do. Database diagrams have the tendency of being alive and change during the development process, hence we give online updates of the diagrams for those customers whom are interested. As a tool we use Visual Paradigm for both E/R and UML modelling.
.NET Framework is a software framework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large class library named Framework Class Library (FCL) and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for .NET Framework execute in a software environment (in contrast to a hardware environment) named Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling. (As such, computer code written using .NET Framework is called "managed code".) FCL and CLR together constitute .NET Framework.
HTML5 is a markup language used for structuring and presenting content on the World Wide Web. It is the fifth and current version of the HTML standard.It was published in October 2014 by the World Wide Web Consortium (W3C) to improve the language with support for the latest multimedia, while keeping it both easily readable by humans and consistently understood by computers and devices such as web browsers, parsers, etc. HTML5 is intended to subsume not only HTML 4, but also XHTML 1 and DOM Level 2 HTML. HTML5 includes detailed processing models to encourage more interoperable implementations; it extends, improves and rationalizes the markup available for documents, and introduces markup and application programming interfaces (APIs) for complex web applications. For the same reasons, HTML5 is also a candidate for cross-platform mobile applications, because it includes features designed with low-powered devices in mind.