Monday, May 14, 2012

Roles


Business Analysis is the process of understanding business change needs, assessing the impact of those changes, capturing, analysing and documenting requirements and then supporting the communication and delivery of those requirements with relevant parties.


The term "Software Architect" is somewhat vague. The definitions we can give depend on the context. This article concentrates on architects working with a small to medium team, on multiple projects, but not so many. In these conditions, the software architect also acts as a technical expert on one or multiple platforms.
During the DotNetGuru Symposium 2003, Sami Jaber presented two kinds of architects:
·         functional architects, who optimize business processes, and have a very good knowledge about analysis methods;
·         technical architects, who design long-term, reliable and adaptive technical architectures, and constitute a technical gateway between the project manager and the developers.
We can come across other kinds of architects. You can refer to the resources presented at the bottom of this page to learn more. We will focus here on technical architects, and not on functional architects.
Here is the role of a technical architect, according to Sami:
·         Anticipate on technological evolutions
·         Build durable architectures
o    Independence with regard to API/framework providers
·         Promote genericity and abstraction
·         Bridge between developers, project managers, and business experts
·         Technological evangelization, sharp sense of communication
·         Ensure the technical directions and choices
·         Often mixed culture (.NET/J2EE/opensource)
·         First a role instead of a job


GSM:
GSM (Global System for Mobile Communications, originally Groupe Spécial Mobile), is a standard set developed by the European Telecommunications Standards Institute (ETSI) to describe technologies for second generation (2G) digital cellular networks. Developed as a replacement for first generation (1G) analog cellular networks, the GSM standard originally described a digital, circuit switched network optimized for full duplex voice telephony. The standard was expanded over time to include first circuit switched data transport, then packet data transport via GPRS(General Packet Radio Services). Packet data transmission speeds were later increased via EDGE (Enhanced Data rates for GSM Evolution) referred as EGPRS. The GSM standard is more improved after the development of third generation (3G) UMTS standard developed by the 3GPP. GSM networks will evolve further as they begin to incorporate fourth generation (4G) LTE Advanced standards. "GSM" is a trademark owned by the GSM Association.

CDMA:
Code division multiple access (CDMA) is a channel access method used by various radio communication technologies. It should not be confused with themobile phone standards called cdmaOne, CDMA2000 (the 3G evolution of cdmaOne) and WCDMA (the 3G standard used by GSM carriers), which are often referred to as simply CDMA, and use CDMA as an underlying channel access method.
One of the concepts in data communication is the idea of allowing several transmitters to send information simultaneously over a single communication channel. This allows several users to share a band of frequencies (see bandwidth). This concept is called multiple access. CDMA employs spread-spectrum technology and a special coding scheme (where each transmitter is assigned a code) to allow multiple users to be multiplexed over the same physical channel. By contrast, time division multiple access (TDMA) divides access by time, while frequency-division multiple access (FDMA) divides it by frequency. CDMA is a form of spread-spectrum signalling, since the modulated coded signal has a much higher data bandwidth than the data being communicated.
3G:
3G or 3rd generation mobile telecommunications is a generation of standards for mobile phones and mobile telecommunication services fulfilling the International Mobile Telecommunications-2000 (IMT-2000) specifications by the International Telecommunication Union.[1] Application services include wide-area wireless voice telephone, mobile Internet access,video calls and mobile TV, all in a mobile environment.
Several telecommunications companies market wireless mobile Internet services as 3G, indicating that the advertised service is provided over a 3G wireless network. Services advertised as 3G are required to meet IMT-2000 technical standards, including standards for reliability and speed (data transfer rates). To meet the IMT-2000 standards, a system is required to provide peak data rates of at least 200 kbit/s (about 0.2 Mbit/s). However, many services advertised as 3G provide higher speed than the minimum technical requirements for a 3G service. Recent 3G releases, often denoted 3.5G and 3.75G, also provide mobile broadband access of several Mbit/s to smartphones and mobile modems in laptop computers.
4G:
In telecommunications, 4G is the fourth generation of cell phone mobile communications standards. It is a successor of the third generation (3G) standards. A 4G system provides mobile ultra-broadband Internet access, for example to laptops with USB wireless modems, to smartphones, and to other mobile devices. Conceivable applications include amended mobile web access, IP telephony, gaming services, high-definition mobile TV, video conferencing and 3D television.
Two 4G candidate systems are commercially deployed: The Mobile WiMAX standard (at first in South Korea in 2006), and the first-release Long term evolution (LTE) standard (in Scandinavia since 2009). It has however been debated if these first-release versions should be considered as 4G or not. See technical definition. In the U.S. Sprint Nextel has deployed Mobile WiMAX networks since 2008, and MetroPCS was the first operator to offer LTE service in 2010. USB wireless modems have been available since the start, while WiMAX smartphones have been available since 2010, and LTE smartphones since 2011. Equipment made for different continents are not always compatible, because of different frequency bands. Mobile WiMAX and LTE smartphones are currently (April 2012) not available for the European market.
VOIP:
Voice over IP (VoIP) commonly refers to the communication protocols, technologies, methodologies, and transmission techniques involved in the delivery of voice communications andmultimedia sessions over Internet Protocol (IP) networks, such as the Internet. Other terms commonly associated with VoIP are IP telephony, Internet telephony, voice over broadband (VoBB),broadband telephony, and broadband phone.
Internet telephony refers to communications services —voice, fax, SMS, and/or voice-messaging applications— that are transported via the Internet, rather than the public switched telephone network (PSTN). The steps involved in originating a VoIP telephone call are signaling and media channel setup, digitization of the analog voice signal, encoding, packetization, and transmission asInternet Protocol (IP) packets over a packet-switched network. On the receiving side, similar steps (usually in the reverse order) such as reception of the IP packets, decoding of the packets and digital-to-analog conversion reproduce the original voice stream.[1] Even though IP Telephony and VoIP are terms that are used interchangeably, they are actually different; IP telephony has to do with digital telephony systems that use IP protocols for voice communication, while VoIP is actually a subset of IP Telephony. VoIP is a technology used by IP telephony as a means of transporting phone calls.[2]

Three-tier architecture


In a three-tier architecture (also known as a multi-tier architecture), there are three or more interacting tiers, each with its own specific responsibilities.
Three-Tier Architecture
  • Tier 1: the client contains the presentation logic, including simple control and user input validation. This application is also known as a thin client.
  • Tier 2: the middle tier is also known as the application server, which provides the business processes logic and the data access.
  • Tier 3: the data server provides the business data.
These are some of the advantages of a three-tier architecture:
  • It is easier to modify or replace any tier without affecting the other tiers.
  • Separating the application and database functionality means better load balancing.
  • Adequate security policies can be enforced within the server tiers without hindering the clients.
Three-tier architecture is an architectural deployment style that describe the separation of functionality into layers with each segment being a tier that can be located on a physically separate computer. They evolved through thecomponent-oriented approach, generally using platform specific methods for communication instead of a message-based approach.
This architecture has different usages with different applications. It can be used in web applications and distributed applications. The strength in particular is when using this architecture over distributed systems. In this course work, I will furthermore invest this through the example of three-tier architecture in web applications.


RTOS


Real-Time Operating System (RTOS) comprises of two components, viz., “Real-Time” and “Operating System”.

An Operating system (OS) is nothing but a collection of system calls or functions which provides an interface between hardware and application programs. It manages the hardware resources of a computer and hosting applications that run on the computer. An OS typically provides multitasking, synchronization, Interrupt and Event Handling, Input/ Output, Inter-task Communication, Timers and Clocks and Memory Management. Core of the OS is the Kernel which is typically a small, highly optimised set of libraries.

Real-time systems are those systems in which the correctness of the system depends not only on the logical result of computation, but also on thetime at which the results are produced.

RTOS is therefore an operating system that supports real-time applications by providing logically correct result within the deadline required.  Basic Structure is similar to regular OS but, in addition, it provides mechanisms to allow real time scheduling of tasks.
Though real-time operating systems may or may not increase the speed of execution, they can provide much more precise and predictable timing characteristics than general-purpose OS.

Examples of RTOS:
*QNX
*RTLinux
*VxWorks
* Windows CE
* chimera


Real-Time Opearting Systems (RTOS) Companies

Open Source Technology



Open source technology is defined as the production and development philosophy of allowing end users and developers to not only see the source code of software, but modify it as well. The Linux operating system is a one of the best-known examples of open source software technology.
The Linux operating system’s open source paradigm is in direct contrast to Microsoft’s approach to development and production of its popular Windows operating system. Unlike Linux, Windows is built on a closed source paradigm that does not allow the end user the ability to see or edit the code that makes up the operating system. In fact, certain aspects of the end-user license for the Windows operating systemspecifically forbids the end user from attempting to view or modify the code that makes up the software. Such attempts are often known as reverse engineering or reverse compiling.
Generically, open source refers to a program in which the source code is available to the general public for use and/or modification from its original design free of charge, i.e., open. Open source code is typically created as a collaborative effort in which programmers improve upon the code and share the changes within the community. Open source sprouted in the technological community as a response to proprietary software owned by corporations.
Open source software consists of applications and components where the source code is publicly available for others to use and enhance as they wish. Such software has large (online) communities of developers and users sharing information on bugs, enhancements and ideas related to the application or component.
Examples include:
1.     Joomla or Drupal – web content management applications
2.     Thunderbird – desktop email and messaging application
3.     LibreOffice – desktop productivity suite
4.     Linux – operating system
In the world of open source software, there are two types of licences used to ‘govern’ ongoing development in summary;
·         GNU General Public Licence where the main principle is that if you use an open source application or component in your software then your software needs to be made available as open source as well
·         Apache Licence where the principle is a little different in that you don’t have to make your software application open to other developers even though you may have used open software in the application

Sunday, May 13, 2012

ERP


Enterprise resource planning (ERP) systems integrate internal and external management information across an entire organization, embracing finance/accountingmanufacturing, sales and service, customer relationship management, etc. ERP systems automate this activity with an integrated software application. Their purpose is to facilitate the flow of information between all business functions inside the boundaries of the organization and manage the connections to outside stakeholders.

ERP systems can run on a variety of computer hardware and network configurations, typically employing a database as a repository for information.


Characteristics
ERP (Enterprise Resource Planning) systems typically include the following characteristics:
  • An integrated system that operates in real time (or next to real time), without relying on periodic updates.[citation needed]
  • A common database, which supports all applications.
  • A consistent look and feel throughout each module.
  • Installation of the system without elaborate application/data integration by the Information Technology (IT) department.[10]
Engineeringbill of materials, work orders, scheduling, capacity, workflow managementquality control, cost management, manufacturing process, manufacturing projects, manufacturing flow,activity based costingproduct life cycle management
Order to cashinventory, order entry, purchasingproduct configurator, supply chain planning, supplier scheduling, inspection of goods, claim processing, commissions
Costing, billing, time and expense, performance units, activity management
Sales and marketing, commissions, service, customer contact, call center support
Data services 
Various "self–service" interfaces for customers, suppliers and/or employees
Management of user privileges for various processes
[edit]Components
·         Transactional database
·         Management portal/dashboard
·         Business intelligence system
·         Customizable reporting
·         External access via technology such as web services
·         Search
·         Document management
·         Messaging/chat/wiki
·         Workflow management

Enterprise Resource Planning (ERP) should enable your company to do just that. What tools you use and how should be based on what your organization needs. In what order you implement the system should also be based on your companies situation. So what ERP is and does maybe be different from organization to organization but……
At its core it should
·         Process sales orders – entry, shipping, invoicing
·         Accounting fully integrated and functional
·         CRM
·         Costing in any mode Standard, Average, Lot
·         Production scheduling
·         Estimating
·         Bar Coding
·         Reports
·         Purchasing
·         Bills of materials and routing’s
Every company has different needs and priorities so you may not need all the things listed or you may need some different things, the point is, ERP is about what you need more than what the software can do. Canned software or approaches rarely work in the small to mid size market because organizations have different expectations and issues.