Pages

Sunday, April 29, 2007

Week 8


Moving to design,

everybody is so busy with assignment, so am I...that's why this week blog is posted this time

many things have to be considered when designing new system; one is from now on the assumption of the perfect technology is no longer valid so all the possibilities of failure should be considered & the system should be designed in a way that it can be up & running all the time (that's not written anywhere- that's what I'm guessing).

the design phase consists of many parts:
designing application architecture
designing the network
designing the system & user interface
designing the database

again the system can be designed in Traditional & OOA, each has its own diagrams. the most important thing in design phase is application development. the definitions should be clarified by end of this phase.

to avoid coding many times, or to avoid changing code in different places in the system, applications are made in 3 different interrelated but independent layers i.e. view layer, business logic & data layer.

Saturday, April 21, 2007

Week 7


feel so exhausted, looking for a ounce of energy...

Just the week after semester break, i already submitted 2 assignments and have lots of assignments waiting to be served by bulter (me). I'm really freaked out, just wanna run,wanna escape....but here i stand like a man

every word i hear in the news, in newspaper, Internet...just remind me of assignments

i always knew goals should be hard but achievable but this hurricane of assignments looks unapproachable


this week in the lecture...

the last part of analysis before moving to design; most of the task in this part is somehow related to project manager...

defining system requirement, prioritizing the requirements, evaluating alternatives, creating RFP & reviewing the best alternative & recommendation with the management


choosing the best alternative is based on its feasibility like time, cost, technology, availability of experienced staff, organization's culture

alternatives might be in-house development, buying software package, turnkey system or facilities management.

the project manager also should define Application Deployment Environment, Application Development environment and related tools before moving to design.


if in-house development is not the selected alternative the project manager should create a legal document called Request For Proposal to identify and explain system's processing requirements (functional requirements) as well as technical requirements. and then evaluates the submitted the RFP to choose the one that meets organization's requirement and budget and time for contracting.


Thursday, April 5, 2007

Week 6

In week 5 we studied Traditional Approach to modell "things" & "events"
For Things in the system we use ERD to represent data entities and their relation i.e. what kind of information is needed and structure of the information.

For Event modelling we use many kind of diagrams;
1.CONTEXT DIAGRAM: we use Context Diagram as a abstract model to show the entire system as one process and to outline system boundaries and external entities.
2.DATA FLOW DIAGRAM:we use DFD diagrams to decomposite system into further level for clarification. Using number of DFD decomposition and number of processes in each decomposition level depends on system complexity but as a rule it's recommanded to have 7±2 process in each decomposition level.
N.B. what happens in DFD and within the process have to be described to avoid misunderstanding; we use 3 way to describe the processes: Structured English (psedue code), Decision Table & Decision Trees.
Likewise, we have to clarify our definition for data (entities in ERD), we list all the attributes of each entity with data description elements (their type and maximum values allowed e.g. String, or Boolean ) all these information will be placed in Data Dictionary.
other useful diagrams are; data dependency diagram which is for exploring activities about one single process, Location Diagram which is proccessing locaton of system, Activity Location Marix which describes what processes is performed in which place and Activity-data matrix which shows enetities & their privillages to change data. This can be described by CRUD i.e. Create-Read-Update-Delete.
3.Activity Diagram is another kind of diagram which illustrates the flow of control and procedures in the system. this diagram is also used in OOA as well.

Part 2: OOA Modelling
There are different kind of digrams in this approach but the underlying concept is the same. All the "Things" & "Events'' should be modelled.
We use Class Diagram for modelling "Thins" with concepts like Abstract class, attributes and methods for objects.
just a quick recap; in OOA we have OBJECTS and the main focus is on process rather than data itself. onbjects are main part of system and they are communicating by sending message and responding to messages.
class diagram includes objects that are represented by classes, attributes, behaviour (methods), and using concepts like inheritance and UML notaion for multiplexity.

Events are being modelled in OOA by:
1. USE CASE DIAGRAM: which is almost equivalant for context digram in traditional approach. they are being used to represent Actors i.e. someone or something external to system bundaries or automated system, and system itself which can include one or many use case. Use-case diagram can be seen as equivalant to DFD in diferrent level when they represent subsystems.
Like we described the process of DFD, we have to describe the use-case here. this is achieved by developing USE CASE DETAILED DESCRIPTION which can be develop at three level; brief, intermediate and Fully developed description.
2. ACTIVITY DIAGRAM: as mentioned before this kind of diagram is used in both approaches to represent the procedure and order of use cases.
3. SYSTEM SEQUENCE DIAGRAM (SSD): is used to represent interaction between objects i.e. what is the detaill of message sent to an object and what the object returns in the response messsage.
4. STATE MACHINE DIAGRAM: is another diagram which is helpful for describing business rules