Software Architecture Document

baroohspottyΚινητά – Ασύρματες Τεχνολογίες

19 Ιουλ 2012 (πριν από 5 χρόνια και 3 μήνες)

339 εμφανίσεις



D. C. S. Weerasinghe



Android Bots

Software Architecture Document


Version 1.0




Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
2

of
9


Revision History

Date

Version

Description

Author

29/Oct/2010

1.0

Software Architecture Document

Chamika Weerasinghe














Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
3

of
9


Table
of Contents

1.

Introduction

4

1.1

Purpose

4

1.2

Scope

4

1.3

Definit ions, Acronyms, and Abbreviations

4

1.4

Overview

4

2.

Architectural Representation

4

3.

Architectural Goals and Constraints

4

4.

Use
-
Case View

5

4.1

Use
-
Case Realizat ions

5

5.

Logical View

5

5.1

Overview

5

5.2

Architecturally Significant Design Packages

6

6.

Process View

6

7.

Implementation Vie
w

7

7.1

Overview

7

7.2

Layers

8

7.2.1

Common Android Library

8

7.2.2

Android Location Manager Library

8

7.
2.3

Android System Library

8

7.2.4

Generic codes

8

8.

Size and Performance

8

9.

Quality

9

Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
4

of
9


Software Architectu
re Document


1
.

Introduction

1
.
1

Purpose

This document provides a comprehensive architectural overview of the system, using a number of different
architectural views to depict different aspects of the system. It is intended to capture and convey the
significant
architectural decisions which have been made on the system.


1
.
2

Scope

This document covers complete design description of the system Android Bots.
System Engineers, project
managers,

developers and end
-
users

must use this document

as the reference.


1
.
3

Definitio
ns, Acronyms, and Abbreviations

Android

Bots



the product, hereafter referred
-
to as just 'product' and 'program'.

Android



the Android™ mobile operating system developed by Google Inc.

CellID




the ID code associated with the particular 'cell'

tower

o
f the cellular service provider.

Wi
-
Fi




Wireless Fidelity
-

wireless network connectivity service

Bluetooth



simple microwave
-
based mobile connectivity service

for data transmission

SDK




Software Development Kit

ADT




Android

Development Toolkit

I
DE




Integrated Development Environment

OS




Operating System refers to the Android operating system in this document.

UI




User Interface


1
.
4

Overview

This document contains
different architectural views including Architectural representation, Use
-
Case
view, Logical View, Process view, deploying and implementation views to depict different aspects of the
system.


2
.

Architectural Representation

All the diagrams and descriptions are used standard methods of representing design architectures. Use
-
Case
view
is designed using UML 2.0 standards.


3
.

Architectural Goals and Constraints

Android Bots provides extended software for the user to manage some functionalities of an Android mobile
device. Profile, battery and alarm are some of the functionalities are used
in this system. Therefore this
system always ensures the safety and security of the user. Since this system does not record any user
activities and privacy data, it does not affect the privacy issues of the user.
This system records CellID of
the current l
ocation of the mobile device.

Therefore system designed to encrypt these details to avoid
unauthorized access.

The system current version 1.0 is currently developed for free and open source community which allows
any developer to distribute or reuse the sy
stem for better improvements. It is illegal to use this system for
corruptions and other

software based

illegal activities.

This system will be developed according to the project schedule. Mainly there are two iterations in the
overall project and will be
finalized them before the scheduled date.

System will be used Eclipse
TM

IDE for
the
overall development process

Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
5

of
9


4
.

Use
-
Case View

4
.
1

Use
-
Case Realizations


This software has main 4 user interfaces which provide user to set current location and setup new settin
g of
profiles, battery and alarm of the device.
Locater UI uses for setting up current location settings. Other 3
UIs are used for setting up specific feature. All the UI has
A
ndroid activity which extends program “Main
Activity”. Android Shared Preference
s is used for storing user preferences throughout the system.


5
.

Logical View

5
.
1

Overview

In Android application life cycle each graphical user interface is an Android activity. Therefore each
interface must have
separate

class. It must

be

implement
ed

other cl
asses for the functionality of the system.

A main class should be designed for communicating between user interface classes. All these facts must be
considered when designing
software

for Android OS.









Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
6

of
9


5
.
2

Architecturally Significant Design Packages



S
ystem designed as shown in above UML class diagram.

MainActivity class handles all other classes and
each class has its own attributes to do their activity. Rule class is used for making rules for specific task.
For an example if user wants to change profi
le in specific location user will create a rule for that using
Profile Bot.

“android” classes are used for implementing android application life cycle functions.


6
.

Process View

Following activity diagrams show the system processes. There are 4 processes fo
r overall system. Locator
is used for catching locations and adding them to the application. Profile Bot, Battery Bot and Alarm Bot
gives interface for managing profiles, battery and alarm respectively.










Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
7

of
9




L潣ate
r Process

Pr潦ile B潴

Batter礠B潴


arm B潴



L潣ater Process

L潣ater 灲潣ess 杩癥s 畳er t漠来t t桥 c畲re湴 cell t潷er i搠a湤nsa癥 it as a 灲eferre搠l潣ati潮o It 畳es se灡rate
灲潣esses f潲 来tti湧ncell i搠a湤 異摡ti湧n UI t漠 e湳畲e s祳tem reliabilit礮 Ot桥rwise s祳tem ma礠湯n
res灯湤 t漠t桥

user a湤 畳er 桡s to force cl潳e t桥 a灰picati潮o


Pr潦ile B潴

T桩s 灲ocess 摩s灬a祳 a UI to a摤d湥w pr潦ile r畬e t漠t桥 system. T桥渠it a摤s t桡t r畬e t漠t桥 ser癩ce f潲
灥rf潲mi湧nat t桥 ri杨g l潣ati潮oa湤ntime.


Batter礠B潴

T桩s 灲ocess als漠杩癥s a UI

for user a摤d湧n扡ttery ma湡来me湴 r畬e. User ca渠select Bluet潯o栬

-


a湤n
潴桥r s祳tem setti湧nw桥n
s灥cifie搠扡tter礠le癥l reac桥搮


Alarm B潴

T桩s 灲ocess 摩s灬a祳 a UI t漠a摤d湥w alarm r畬e t漠t桥 system. T桥渠it a摤d t桡t r畬e t漠t桥 ser癩ce f潲
p
erf潲mi湧nat t桥 ri杨g l潣ati潮oa湤ntime.



7
.

Implementation View

7
.
1

Overview

In designing process it must use common libraries of android to build application framework. Apart from
that some other libraries must use to get cell ID and system states of the dev
ice.

All these libraries and
Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
8

of
9


c潤o湧n灡rts are 摥scri扥搠扥l潷.

7
.
2

Layers



7
.
2
.
1

Common Android Library

When implement ing system common android library must use in order to build basic android application.
Every android application must have some compulsory method
s which provide by these common libraries.


7
.
2
.
2

Android Location Manager Library

This library must use to identify the cell tower id of the current location from the device. Cell ID is majorly
use in this system. Therefore it is a “must have” library for this
system.


7
.
2
.
3

Android System Library

For the battery management process it is essential to get system state such as Bluetooth on/off, Wi
-
Fi on/off
and other system performances. To get all these details Android Development Kit has many system
libraries. These l
ibraries should be imported.


7
.
2
.
4

Generic codes

All the application functionalit ies are to be designed in the generic codes. This layer includes XML files
such as layout files, string files, color files, dimension files etc. Other than that resources this laye
r includes
all the codes which are included in the java files.


8
.

Size and Performance

Android devices have small and slow hardware specifications comparing to PC. But Android OS manages
this limited hardware for the application. Architecture design always
try to reduce system consumption so
that it can achieve maximum perform with limited hardware in the device. Separate processes and android
services are used in design
to reduce processor consumption.



Android Bots


Version: 1.0

Software Architecture Document


Date: 29/Oct/2010


Confidential


D. C. S. Weerasi湧桥

㈰ㄱ

Pa来
9

of
9


9
.

Quality

Application is designed for releasing intern
ational Android Market. Therefore all the international
standards will be used. Apart from that this software specially consider about the reliability. User will face
unexpected events and sounds if the software does not operate accurately. Therefore overa
ll quality can be
good comparing to other open source
software
.